[llvm] [BOLT] Fix EH data encoding checks in relocateEHFrameSection (PR #195691)
YongKang Zhu via llvm-commits
llvm-commits at lists.llvm.org
Mon May 4 10:17:23 PDT 2026
https://github.com/yozhu created https://github.com/llvm/llvm-project/pull/195691
None
>From d711971fb6650f71402748332e86ed70bb7b80ce Mon Sep 17 00:00:00 2001
From: YongKang Zhu <yongzhu at fb.com>
Date: Fri, 1 May 2026 18:04:20 -0700
Subject: [PATCH] [BOLT] Fix EH data encoding checks in relocateEHFrameSection
---
bolt/lib/Rewrite/RewriteInstance.cpp | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
diff --git a/bolt/lib/Rewrite/RewriteInstance.cpp b/bolt/lib/Rewrite/RewriteInstance.cpp
index 43d4421e06928..9f6eebf7f7834 100644
--- a/bolt/lib/Rewrite/RewriteInstance.cpp
+++ b/bolt/lib/Rewrite/RewriteInstance.cpp
@@ -2162,13 +2162,10 @@ void RewriteInstance::relocateEHFrameSection() {
return;
// Only fix references that are relative to other locations.
- if (!(DwarfType & dwarf::DW_EH_PE_pcrel) &&
- !(DwarfType & dwarf::DW_EH_PE_textrel) &&
- !(DwarfType & dwarf::DW_EH_PE_funcrel) &&
- !(DwarfType & dwarf::DW_EH_PE_datarel))
- return;
-
- if (!(DwarfType & dwarf::DW_EH_PE_sdata4))
+ if ((DwarfType & 0xf0) != dwarf::DW_EH_PE_pcrel &&
+ (DwarfType & 0xf0) != dwarf::DW_EH_PE_textrel &&
+ (DwarfType & 0xf0) != dwarf::DW_EH_PE_funcrel &&
+ (DwarfType & 0xf0) != dwarf::DW_EH_PE_datarel)
return;
uint32_t RelType;
More information about the llvm-commits
mailing list