Don't call PrepareEHLandingPad on non EH pads
[oota-llvm.git] / lib / CodeGen / SelectionDAG / SelectionDAGISel.cpp
index 2a25131dbad0cc236fe7c9346ab99693358d8a59..51e8e1486c8a0693752d40de82f8be4e95e0db71 100644 (file)
@@ -1153,8 +1153,9 @@ void SelectionDAGISel::SelectAllBasicBlocks(const Function &Fn) {
     // Setup an EH landing-pad block.
     FuncInfo->ExceptionPointerVirtReg = 0;
     FuncInfo->ExceptionSelectorVirtReg = 0;
-    if (!PrepareEHLandingPad())
-      continue;
+    if (LLVMBB->isEHPad())
+      if (!PrepareEHLandingPad())
+        continue;
 
     // Before doing SelectionDAG ISel, see if FastISel has been requested.
     if (FastIS) {