[llvm] [BOLT][AArch64] Fix relocation type for `LDRSW` (PR #221939)

via llvm-commits llvm-commits at lists.llvm.org
Tue Sep 8 02:38:07 PDT 2026


llvmorg-github-actions[bot] wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-bolt

Author: Shanzhi Chen (chenshanzhi)

<details>
<summary>Changes</summary>

Fix the incorrect relocation type for `LDRSW`. It should be `ELF::R_AARCH64_LDST32_ABS_LO12_NC`, but it was mistakenly set to `ELF::R_AARCH64_LDST64_ABS_LO12_NC` in PR #<!-- -->196051.

---
Full diff: https://github.com/llvm/llvm-project/pull/221939.diff


1 Files Affected:

- (modified) bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp (+1-1) 


``````````diff
diff --git a/bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp b/bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
index 8d7fee733b9c3..b6e14835e1b22 100644
--- a/bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
+++ b/bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
@@ -766,7 +766,7 @@ class AArch64MCPlusBuilder : public MCPlusBuilder {
     case AArch64::LDRSWl:
       AddrReg = DataReg;
       OpCode = AArch64::LDRSWui;
-      RelType = ELF::R_AARCH64_LDST64_ABS_LO12_NC;
+      RelType = ELF::R_AARCH64_LDST32_ABS_LO12_NC;
       break;
     default:
       llvm_unreachable("LDR (literal) or LDRSW (literal) expected");

``````````

</details>


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


More information about the llvm-commits mailing list