You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
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.
The text was updated successfully, but these errors were encountered:
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 whereA
== 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
whereA
is the offset ofS
from the start of the TLS block.Will post a PR shortly, hopefully tomorrow.
The text was updated successfully, but these errors were encountered: