From: Tim Northover Date: Wed, 3 Jun 2015 18:26:52 +0000 (+0000) Subject: RuntimeDyld: override EH frame registration with trivial version. X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=6da0e02282f558ee8ff63f2d6872f2aaab839018;p=oota-llvm.git RuntimeDyld: override EH frame registration with trivial version. llvm-rtdyld was relying on the default memory manager's EH frame registration, which is host-dependent rather than target-dependent. As a result, big-endian ELF Mips EH frames were being registered on OS X (and elsewhere). This is a really bad idea. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238951 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/tools/llvm-rtdyld/llvm-rtdyld.cpp b/tools/llvm-rtdyld/llvm-rtdyld.cpp index bef6a1a044e..f857b2ef973 100644 --- a/tools/llvm-rtdyld/llvm-rtdyld.cpp +++ b/tools/llvm-rtdyld/llvm-rtdyld.cpp @@ -139,6 +139,11 @@ public: // explicit cache flush, otherwise JIT code manipulations (like resolved // relocations) will get to the data cache but not to the instruction cache. virtual void invalidateInstructionCache(); + + void registerEHFrames(uint8_t *Addr, uint64_t LoadAddr, + size_t Size) override {} + void deregisterEHFrames(uint8_t *Addr, uint64_t LoadAddr, + size_t Size) override {} }; uint8_t *TrivialMemoryManager::allocateCodeSection(uintptr_t Size,