[llvm] 68c14f5 - JITLink: Add missing EHFrame NULL terminator on aarch64/ELF

Tom Stellard via llvm-commits llvm-commits at lists.llvm.org
Tue Mar 14 16:51:54 PDT 2023


Author: Tom Stellard
Date: 2023-03-14T16:51:22-07:00
New Revision: 68c14f582ce64ae6bd79e78b609fa3469af0ed83

URL: https://github.com/llvm/llvm-project/commit/68c14f582ce64ae6bd79e78b609fa3469af0ed83
DIFF: https://github.com/llvm/llvm-project/commit/68c14f582ce64ae6bd79e78b609fa3469af0ed83.diff

LOG: 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

Added: 
    

Modified: 
    llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp

Removed: 
    


################################################################################
diff  --git a/llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp b/llvm/lib/ExecutionEngine/JITLink/ELF_aarch64.cpp
index 5b9553ec8b116..3eb7e1bccde7e 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))


        


More information about the llvm-commits mailing list