Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

aotcompile: remove most offset code #52865

Merged
merged 1 commit into from
Jan 20, 2024
Merged

aotcompile: remove most offset code #52865

merged 1 commit into from
Jan 20, 2024

Conversation

vtjnash
Copy link
Sponsor Member

@vtjnash vtjnash commented Jan 12, 2024

Use absolute addresses for fvars, to avoid needing some of the copies and complexity around them, and the buggy-ness of LLVM linker features with doing this.

@vchuravy this may replace JuliaLang/llvm-project@a5ccdfb

@vtjnash vtjnash requested a review from vchuravy January 12, 2024 00:38
@vtjnash
Copy link
Sponsor Member Author

vtjnash commented Jan 12, 2024

The old code was trying to approximate the normal relocations for this (e.g. the @__ImageBase = external dso_local constant i8 symbol at https://github.com/JuliaLang/llvm-project/blob/85122d41d6783e828412f9a1d0f7c771e2a38acc/clang/lib/CodeGen/MicrosoftCXXABI.cpp#L579-L594) but had somewhat bit-rotted in design, and wasn't really saving anything over doing the simple thing and keeping them as pointers

Use absolute addresses for fvars, to avoid needing some of the copies
and complexity around them, and the buggy-ness of LLVM linker features
with doing this.
@vtjnash vtjnash merged commit 1f111e1 into master Jan 20, 2024
7 checks passed
@vtjnash vtjnash deleted the jn/absolute-addresses branch January 20, 2024 19:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant