Do not generate special entries in the dwarf eh
authorDuncan Sands <baldrick@free.fr>
Fri, 14 Mar 2008 21:36:24 +0000 (21:36 +0000)
committerDuncan Sands <baldrick@free.fr>
Fri, 14 Mar 2008 21:36:24 +0000 (21:36 +0000)
table for nounwind calls.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48373 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp

index c3ae2a915d7026434e3781598403a17c5714deef..1e249d0386f09fc04e5b4387a63f19ac456d2ffa 100644 (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();