revise debug output to avoid dangling pointer
authorMichael Liao <michael.liao@intel.com>
Tue, 21 Aug 2012 05:55:22 +0000 (05:55 +0000)
committerMichael Liao <michael.liao@intel.com>
Tue, 21 Aug 2012 05:55:22 +0000 (05:55 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@162256 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Transforms/Scalar/CodeGenPrepare.cpp

index a3c426a714e0b09abb8de808b0f61e931d083710..a8deda8b7469c298ee4510aa09d86bd40ac91ade 100644 (file)
@@ -220,6 +220,7 @@ bool CodeGenPrepare::EliminateFallThrough(Function &F) {
     BranchInst *Term = dyn_cast<BranchInst>(SinglePred->getTerminator());
     if (Term && !Term->isConditional()) {
       Changed = true;
+      DEBUG(dbgs() << "To merge:\n"<< *SinglePred << "\n\n\n");
       // Remember if SinglePred was the entry block of the function.
       // If so, we will need to move BB back to the entry position.
       bool isEntry = SinglePred == &SinglePred->getParent()->getEntryBlock();
@@ -230,7 +231,6 @@ bool CodeGenPrepare::EliminateFallThrough(Function &F) {
 
       // We have erased a block. Update the iterator.
       I = BB;
-      DEBUG(dbgs() << "Merged:\n"<< *SinglePred << "\n\n\n");
     }
   }
   return Changed;