[lld] [lld][AArch64][ELF][PAC] Support AUTH relocations and AUTH ELF marking (PR #72714)

Fangrui Song via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 18 00:59:01 PDT 2024


================
@@ -398,6 +400,24 @@ void AArch64::relocate(uint8_t *loc, const Relocation &rel,
   case R_AARCH64_PREL64:
     write64(loc, val);
     break;
+  case R_AARCH64_AUTH_ABS64:
+    // - If val is wider than 32 bits, we must have converted the auth relr
----------------
MaskRay wrote:

Avoid inventing mixing terms "auth relr", ".relr.auth.relr" everywhere. Just stick with the section name  .relr.auth.dyn , which helps code search.

If val is wider than 32bits, the relocation must have been moved from .relr.auth.dyn to .rela.dyn, and the addend write is not needed.

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


More information about the llvm-commits mailing list