After talking with Bill, it seems like the LandingPad handling here is likely
to be wrong (or at least somewhat suspect). Leave a FIXME for Bill.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@137694 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Transforms/Utils/SimplifyCFG.cpp b/lib/Transforms/Utils/SimplifyCFG.cpp
index 2d60c35..9f2c311 100644
--- a/lib/Transforms/Utils/SimplifyCFG.cpp
+++ b/lib/Transforms/Utils/SimplifyCFG.cpp
@@ -2266,10 +2266,7 @@
!isa<LandingPadInst>(BBI)) {
break;
}
- // Note that deleting LandingPad's here is in fact okay, although it
- // involves a bit of subtle reasoning. If this inst is a LandingPad,
- // all the predecessors of this block will be the unwind edges of Invokes,
- // and we can therefore guarantee this block will be erased.
+ // FIXME: Handling of LandingPadInst (landingpad) is suspicious.
}
// Delete this instruction (any uses are guaranteed to be dead)