[llvm] [Object][x86-64] Add support for `R_X86_64_GLOB_DAT` relocations. (PR #103029)

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 14 09:31:24 PDT 2024


MaskRay wrote:

> As for whether we should support `GLOB_DAT` for other architectures, sure, that probably makes sense, wherever this gets fixed. Other architectures appear to use `S + A` rather than just `S` for `GLOB_DAT`, but again `RelocationResolver` has all the information it needs to compute that.

This is complex. musl and newer glibc x86 uses `S`  while many glibc ports use `S+A`.

>From the static linker perspective, A should always be 0. https://github.com/ARM-software/abi-aa/issues/217 is related.

> OK, I think, talking to other folks, that we're probably going to go down the fix-it-in-Swift route instead of this, so we can probably merge the revert PR (https://github.com/llvm/llvm-project/pull/103497).

Thanks!

https://github.com/llvm/llvm-project/pull/103029


More information about the llvm-commits mailing list