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

Define behaviour of GOT generating TLS relocations with addends. #296

Open
smithp35 opened this issue Nov 6, 2024 · 0 comments
Open

Define behaviour of GOT generating TLS relocations with addends. #296

smithp35 opened this issue Nov 6, 2024 · 0 comments

Comments

@smithp35
Copy link
Contributor

smithp35 commented Nov 6, 2024

Issue #217 which was fixed by #272 accounted for the case where the ABI was out of sync with both GNU ld and LLD with respect to GOT generating relocations with addends.

#272 didn't account for TLS relocations which can also generate GOT entries for S + A although lld and GNU ld will only support the case where A == 0.

Document this in the ABI.

It will also be helpful to document the relaxation that both GNU ld and LLD do for non-premptible symbol definitions. In this case a GOT generating relocation for S produces a dynamic relocation to the null-symbol (ELF symbol index 0) + A where A is the offset of S from the start of the TLS block.

Will post a PR shortly, hopefully tomorrow.

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

No branches or pull requests

1 participant