From c2ae7934c809d739f7677f4422755c58e4ab8ea3 Mon Sep 17 00:00:00 2001 From: Kai Nacke Date: Thu, 2 Jul 2020 15:15:14 +0200 Subject: [PATCH] [SystemZ/ZOS]__(de)register_frame are not available on z/OS. The functions `__register_frame`/`__deregister_frame` are not available on z/OS, so add a guard to not use them. Reviewed By: lhames, abhina.sreeskantharajan Differential Revision: https://reviews.llvm.org/D84787 --- llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp | 4 ++-- llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp b/llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp index f1114e9..54ba9ac 100644 --- a/llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp +++ b/llvm/lib/ExecutionEngine/JITLink/EHFrameSupport.cpp @@ -631,8 +631,8 @@ Expected EHFrameEdgeFixer::getOrCreateSymbol(ParseContext &PC, // Determine whether we can register EH tables. #if (defined(__GNUC__) && !defined(__ARM_EABI__) && !defined(__ia64__) && \ - !(defined(_AIX) && defined(__ibmxl__)) && !defined(__SEH__) && \ - !defined(__USING_SJLJ_EXCEPTIONS__)) + !(defined(_AIX) && defined(__ibmxl__)) && !defined(__MVS__) && \ + !defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)) #define HAVE_EHTABLE_SUPPORT 1 #else #define HAVE_EHTABLE_SUPPORT 0 diff --git a/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp b/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp index 46604ff..6aa8f1c 100644 --- a/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp +++ b/llvm/lib/ExecutionEngine/RuntimeDyld/RTDyldMemoryManager.cpp @@ -33,8 +33,8 @@ RTDyldMemoryManager::~RTDyldMemoryManager() {} // Determine whether we can register EH tables. #if (defined(__GNUC__) && !defined(__ARM_EABI__) && !defined(__ia64__) && \ - !(defined(_AIX) && defined(__ibmxl__)) && !defined(__SEH__) && \ - !defined(__USING_SJLJ_EXCEPTIONS__)) + !(defined(_AIX) && defined(__ibmxl__)) && !defined(__MVS__) && \ + !defined(__SEH__) && !defined(__USING_SJLJ_EXCEPTIONS__)) #define HAVE_EHTABLE_SUPPORT 1 #else #define HAVE_EHTABLE_SUPPORT 0 -- 2.7.4