OSDN Git Service

third time is the charm.
authorChris Lattner <sabre@nondot.org>
Wed, 3 Dec 2008 07:45:15 +0000 (07:45 +0000)
committerChris Lattner <sabre@nondot.org>
Wed, 3 Dec 2008 07:45:15 +0000 (07:45 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60469 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Utils/BasicBlockUtils.cpp

index 1a255a4..45cfe8f 100644 (file)
@@ -27,7 +27,9 @@ using namespace llvm;
 /// DeleteDeadBlock - Delete the specified block, which must have no
 /// predecessors.
 void llvm::DeleteDeadBlock(BasicBlock *BB) {
-  assert(pred_begin(BB) == pred_end(BB) && "Block is not dead!");
+  assert((pred_begin(BB) == pred_end(BB) ||
+         // Can delete self loop.
+         BB->getSinglePredecessor() == BB) && "Block is not dead!");
   TerminatorInst *BBTerm = BB->getTerminator();
   
   // Loop through all of our successors and make sure they know that one