diff options
author | Jim Grosbach <grosbach@apple.com> | 2009-08-11 00:09:57 +0000 |
---|---|---|
committer | Jim Grosbach <grosbach@apple.com> | 2009-08-11 00:09:57 +0000 |
commit | 693e36a3e8f86a2095806744ad5f8963fbf74271 (patch) | |
tree | 2851cec780f8c855e1ac99f24184e2e0e6973fe7 /llvm/lib/ExecutionEngine/JIT | |
parent | 48989905248ba66591b07e87cb260bca42e424f5 (diff) | |
download | bcm5719-llvm-693e36a3e8f86a2095806744ad5f8963fbf74271.tar.gz bcm5719-llvm-693e36a3e8f86a2095806744ad5f8963fbf74271.zip |
SjLj based exception handling unwinding support. This patch is nasty, brutish
and short. Well, it's kinda short. Definitely nasty and brutish.
The front-end generates the register/unregister calls into the SjLj runtime,
call-site indices and landing pad dispatch. The back end fills in the LSDA
with the call-site information provided by the front end. Catch blocks are
not yet implemented.
Built on Darwin and verified no llvm-core "make check" regressions.
llvm-svn: 78625
Diffstat (limited to 'llvm/lib/ExecutionEngine/JIT')
-rw-r--r-- | llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp b/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp index af69ddffd28..c3e16510b46 100644 --- a/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp +++ b/llvm/lib/ExecutionEngine/JIT/JITEmitter.cpp @@ -511,11 +511,11 @@ namespace { DOUT << "JIT is managing a GOT\n"; } - if (ExceptionHandling) DE = new JITDwarfEmitter(jit); + if (DwarfExceptionHandling) DE = new JITDwarfEmitter(jit); } ~JITEmitter() { delete MemMgr; - if (ExceptionHandling) delete DE; + if (DwarfExceptionHandling) delete DE; } /// classof - Methods for support type inquiry through isa, cast, and @@ -603,7 +603,7 @@ namespace { virtual void setModuleInfo(MachineModuleInfo* Info) { MMI = Info; - if (ExceptionHandling) DE->setModuleInfo(Info); + if (DwarfExceptionHandling) DE->setModuleInfo(Info); } void setMemoryExecutable(void) { @@ -1125,7 +1125,7 @@ bool JITEmitter::finishFunction(MachineFunction &F) { } } #endif - if (ExceptionHandling) { + if (DwarfExceptionHandling) { uintptr_t ActualSize = 0; SavedBufferBegin = BufferBegin; SavedBufferEnd = BufferEnd; |