summaryrefslogtreecommitdiffstats
path: root/llvm/lib/CodeGen/DwarfWriter.cpp
diff options
context:
space:
mode:
authorBill Wendling <isanbard@gmail.com>2007-09-18 01:47:22 +0000
committerBill Wendling <isanbard@gmail.com>2007-09-18 01:47:22 +0000
commit067f1d8e95b554cfb0b9ab0035953a2cbac3d82f (patch)
tree96eda66c2846c7d7c4b494948c2718fedb4e794c /llvm/lib/CodeGen/DwarfWriter.cpp
parent0c74e9d161bee4aaae3eb2d5f0217d7aa9ca05c5 (diff)
downloadbcm5719-llvm-067f1d8e95b554cfb0b9ab0035953a2cbac3d82f.tar.gz
bcm5719-llvm-067f1d8e95b554cfb0b9ab0035953a2cbac3d82f.zip
Objective-C was generating EH frame info like this:
"_-[NSString(local) isNullOrNil]".eh = 0 .no_dead_strip "_-[NSString(local) isNullOrNil]".eh The ".eh" should be inside the quotes. llvm-svn: 42074
Diffstat (limited to 'llvm/lib/CodeGen/DwarfWriter.cpp')
-rw-r--r--llvm/lib/CodeGen/DwarfWriter.cpp21
1 files changed, 11 insertions, 10 deletions
diff --git a/llvm/lib/CodeGen/DwarfWriter.cpp b/llvm/lib/CodeGen/DwarfWriter.cpp
index 10f7c991840..121ef1d9e87 100644
--- a/llvm/lib/CodeGen/DwarfWriter.cpp
+++ b/llvm/lib/CodeGen/DwarfWriter.cpp
@@ -2833,13 +2833,13 @@ private:
// Externally visible entry into the functions eh frame info.
if (const char *GlobalDirective = TAI->getGlobalDirective())
- O << GlobalDirective << EHFrameInfo.FnName << ".eh\n";
+ O << GlobalDirective << EHFrameInfo.FnName << "\n";
// If there are no calls then you can't unwind.
if (!EHFrameInfo.hasCalls) {
- O << EHFrameInfo.FnName << ".eh = 0\n";
+ O << EHFrameInfo.FnName << " = 0\n";
} else {
- O << EHFrameInfo.FnName << ".eh:\n";
+ O << EHFrameInfo.FnName << ":\n";
// EH frame header.
EmitDifference("eh_frame_end", EHFrameInfo.Number,
@@ -2887,7 +2887,7 @@ private:
}
if (const char *UsedDirective = TAI->getUsedDirective())
- O << UsedDirective << EHFrameInfo.FnName << ".eh\n\n";
+ O << UsedDirective << EHFrameInfo.FnName << "\n\n";
}
/// EmitExceptionTable - Emit landing pads and actions.
@@ -3321,12 +3321,13 @@ public:
EmitExceptionTable();
// Save EH frame information
- EHFrames.push_back(FunctionEHFrameInfo(getAsm()->CurrentFnName,
- SubprogramCount,
- MMI->getPersonalityIndex(),
- MF->getFrameInfo()->hasCalls(),
- !MMI->getLandingPads().empty(),
- MMI->getFrameMoves()));
+ EHFrames.
+ push_back(FunctionEHFrameInfo(getAsm()->getCurrentFunctionEHName(MF),
+ SubprogramCount,
+ MMI->getPersonalityIndex(),
+ MF->getFrameInfo()->hasCalls(),
+ !MMI->getLandingPads().empty(),
+ MMI->getFrameMoves()));
}
};
OpenPOWER on IntegriCloud