summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Stellard <tstellar@redhat.com>2023-03-14 16:51:21 -0700
committerTobias Hieta <tobias@hieta.se>2023-03-23 15:34:28 +0100
commitc5b23ab2a31abad97e59cd1da5dc59ca37912a82 (patch)
treea43420a99c89dbbecea4d2aa13184bc1759c627d
parent2352a1b1e9171470724a136ec80ac7ed62adf8f0 (diff)
downloadllvm-c5b23ab2a31abad97e59cd1da5dc59ca37912a82.tar.gz
JITLink: Add missing EHFrame NULL terminator on aarch64/ELF
This fixes test failures on AArch64 with libgcc-13: Clang :: Interpreter/global-dtor.cpp Clang-Unit :: Interpreter/./ClangReplInterpreterTests/2/4 Reviewed By: lhames, v.g.vassilev Differential Revision: https://reviews.llvm.org/D146067 (cherry picked from commit 68c14f582ce64ae6bd79e78b609fa3469af0ed83)
-rw-r--r--llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp b/llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
index 567d5a4dd47a..0ad3b7235e87 100644
--- a/llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
+++ b/llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
@@ -552,6 +552,7 @@ void link_ELF_aarch64(std::unique_ptr<LinkGraph> G,
Config.PrePrunePasses.push_back(EHFrameEdgeFixer(
".eh_frame", 8, aarch64::Pointer32, aarch64::Pointer64,
aarch64::Delta32, aarch64::Delta64, aarch64::NegDelta32));
+ Config.PrePrunePasses.push_back(EHFrameNullTerminator(".eh_frame"));
// Add a mark-live pass.
if (auto MarkLive = Ctx->getMarkLivePass(TT))