summaryrefslogtreecommitdiffstats
path: root/llvm/lib/ExecutionEngine
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2010-02-16 00:58:02 +0000
committerBill Wendling <isanbard@gmail.com>2010-02-16 00:58:02 +0000
commit1776295bf1c85584dde57b6c5bdc34c6ea6dc820 (patch)
tree9751df2fa9703b733190eafd0758a24e3f69a85f /llvm/lib/ExecutionEngine
parentae87fc43a7ddba71475c5b13722004e19d2c46c0 (diff)
downloadbcm5719-llvm-1776295bf1c85584dde57b6c5bdc34c6ea6dc820.tar.gz
bcm5719-llvm-1776295bf1c85584dde57b6c5bdc34c6ea6dc820.zip
Apply patch from http://llvm.org/bugs/attachment.cgi?id=4136 now that PR5004 is
finished. llvm-svn: 96304
Diffstat (limited to 'llvm/lib/ExecutionEngine')
-rw-r--r--llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp b/llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp
index c1051a9a810..946351bde0a 100644
--- a/llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp
+++ b/llvm/lib/ExecutionEngine/JIT/JITDwarfEmitter.cpp
@@ -522,7 +522,11 @@ JITDwarfEmitter::EmitCommonEHFrame(const Function* Personality) const {
JCE->emitInt64(((intptr_t)Jit.getPointerToGlobal(Personality)));
}
- JCE->emitULEB128Bytes(dwarf::DW_EH_PE_pcrel | dwarf::DW_EH_PE_sdata4);
+ // LSDA encoding: This must match the encoding used in EmitEHFrame ()
+ if (PointerSize == 4)
+ JCE->emitULEB128Bytes(dwarf::DW_EH_PE_pcrel | dwarf::DW_EH_PE_sdata4);
+ else
+ JCE->emitULEB128Bytes(dwarf::DW_EH_PE_pcrel | dwarf::DW_EH_PE_sdata8);
JCE->emitULEB128Bytes(dwarf::DW_EH_PE_pcrel | dwarf::DW_EH_PE_sdata4);
} else {
JCE->emitULEB128Bytes(1);
OpenPOWER on IntegriCloud