diff options
author | Duncan Sands <baldrick@free.fr> | 2008-05-08 12:33:11 +0000 |
---|---|---|
committer | Duncan Sands <baldrick@free.fr> | 2008-05-08 12:33:11 +0000 |
commit | 43b30a828792214612836686c51b96178a48f306 (patch) | |
tree | 1956a4333e325211b7a24ea9d8e58182254b71ed /lib/CodeGen/DwarfWriter.cpp | |
parent | 8c073c04bc598cf6cb55620ce83f7afbdf0e7920 (diff) |
Get exception handling working again on 64 bit
Darwin. This is a hack of course, but it does
at least look at the right thing: gotpcrel means
that this is already an offset, so an explicit
offset is not needed (and wrong). I think this
is good enough for the moment: Anton is working
on something better.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50850 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/DwarfWriter.cpp')
-rw-r--r-- | lib/CodeGen/DwarfWriter.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/CodeGen/DwarfWriter.cpp b/lib/CodeGen/DwarfWriter.cpp index 5063d63f06..fc7ba6db04 100644 --- a/lib/CodeGen/DwarfWriter.cpp +++ b/lib/CodeGen/DwarfWriter.cpp @@ -2856,7 +2856,8 @@ private: O << TAI->getPersonalityPrefix(); Asm->EmitExternalGlobal((const GlobalVariable *)(Personality)); O << TAI->getPersonalitySuffix(); - O << "-" << TAI->getPCSymbol(); + if (strcmp(TAI->getPersonalitySuffix(), "+4@GOTPCREL")) + O << "-" << TAI->getPCSymbol(); Asm->EOL("Personality"); Asm->EmitInt8(DW_EH_PE_pcrel | DW_EH_PE_sdata4); |