aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNicolas Geoffray <nicolas.geoffray@lip6.fr>2008-08-18 14:53:56 +0000
committerNicolas Geoffray <nicolas.geoffray@lip6.fr>2008-08-18 14:53:56 +0000
commita7ec87cd0793c463d792323087b2fb3a4871efe0 (patch)
tree7ef24378146b8ad0e2ba0e95dcb2c774eb6a5bbf
parent6aa38987302a5c272900607b201aa95a0e1eafd3 (diff)
Register the frame register function when allocating the JIT,
so that lli works out of the box with -enable-eh. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54920 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/ExecutionEngine/JIT/JIT.cpp10
1 files changed, 5 insertions, 5 deletions
diff --git a/lib/ExecutionEngine/JIT/JIT.cpp b/lib/ExecutionEngine/JIT/JIT.cpp
index af8fd8fb7c..9a3bd3bda1 100644
--- a/lib/ExecutionEngine/JIT/JIT.cpp
+++ b/lib/ExecutionEngine/JIT/JIT.cpp
@@ -78,11 +78,6 @@ ExecutionEngine *ExecutionEngine::createJIT(ModuleProvider *MP,
ExecutionEngine *EE = JIT::createJIT(MP, ErrorStr, JMM, Fast);
if (!EE) return 0;
- // Register routine for informing unwinding runtime about new EH frames
-#if defined(__GNUC__)
- EE->InstallExceptionTableRegister(__register_frame);
-#endif
-
// Make sure we can resolve symbols in the program as well. The zero arg
// to the function tells DynamicLibrary to load the program, not a library.
sys::DynamicLibrary::LoadLibraryPermanently(0, ErrorStr);
@@ -111,6 +106,11 @@ JIT::JIT(ModuleProvider *MP, TargetMachine &tm, TargetJITInfo &tji,
abort();
}
+ // Register routine for informing unwinding runtime about new EH frames
+#if defined(__GNUC__)
+ InstallExceptionTableRegister(__register_frame);
+#endif
+
// Initialize passes.
PM.doInitialization();
}