[llvm-branch-commits] [lld] [PAC][lld] Do not emit AUTH relocs against undef weak non-preemptible symbols (PR #194636)

Daniil Kovalev via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Mon Sep 21 02:28:03 PDT 2026


================
@@ -653,11 +672,22 @@ void AArch64::relocate(uint8_t *loc, const Relocation &rel,
     write64(ctx, loc, val);
     break;
   case R_AARCH64_AUTH_ABS64:
-    // This is used for the addend of a .relr.auth.dyn entry,
-    // which is a 32-bit value; the upper 32 bits are used to
-    // encode the schema.
-    checkInt(ctx, loc, val, 32, rel);
-    write32(ctx, loc, val);
+    if (rel.sym->isUndefined() && !rel.sym->isPreemptible) {
+      // Undefined weak non-preemptible symbols are statically resolved to the
----------------
kovdan01 wrote:

Addressed in b76c913f7c814278c0b7e65a97e7b04cc3559ff7

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


More information about the llvm-branch-commits mailing list