[llvm-branch-commits] [ELF][AArch64][PAC][MTE] Handle Memtag globals for R_AARCH64_AUTH_ABS64 (PR #173291)

Jessica Clarke via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Dec 22 10:15:46 PST 2025


https://github.com/jrtc27 created https://github.com/llvm/llvm-project/pull/173291

Currently, R_AARCH64_AUTH_ABS64 against a tagged global just ignores the
tagging and so, if out of the symbol's bounds, does not write the
negated original addend for the loader to determine which granule's tag
to use for it. Handle the composition of the two.

Note that R_AARCH64_AUTH_ABS64/RELATIVE encode the signing schema in the
upper 32 bits of the value at the relocation target, and so only the
lower 32 bits are available for use as an addend, including for Memtag's
disambiguation, and so if a wildly out-of-bounds PAuth relocation
against a tagged global is used we have no choice but to error out with
the current ABI.





More information about the llvm-branch-commits mailing list