Do not generate special entries in the dwarf eh

table for nounwind calls.

llvm-svn: 48373
This commit is contained in:
Duncan Sands 2008-03-14 21:36:24 +00:00
parent 2daab52500
commit 858e6385f7
1 changed files with 2 additions and 6 deletions

View File

@ -3134,11 +3134,7 @@ void SelectionDAGLowering::LowerCallTo(CallSite CS, SDOperand Callee,
Args.push_back(Entry);
}
bool MarkTryRange = LandingPad ||
// C++ requires special handling of 'nounwind' calls.
(CS.doesNotThrow());
if (MarkTryRange && ExceptionHandling && MMI) {
if (LandingPad && ExceptionHandling && MMI) {
// Insert a label before the invoke call to mark the try range. This can be
// used to detect deletion of the invoke via the MachineModuleInfo.
BeginLabel = MMI->NextLabelID();
@ -3157,7 +3153,7 @@ void SelectionDAGLowering::LowerCallTo(CallSite CS, SDOperand Callee,
setValue(CS.getInstruction(), Result.first);
DAG.setRoot(Result.second);
if (MarkTryRange && ExceptionHandling && MMI) {
if (LandingPad && ExceptionHandling && MMI) {
// Insert a label at the end of the invoke call to mark the try range. This
// can be used to detect deletion of the invoke via the MachineModuleInfo.
EndLabel = MMI->NextLabelID();