Commit 425726d9 authored by Chris Lattner's avatar Chris Lattner
Browse files

Fix an iterator invalidation problem in a "buggy" pass

llvm-svn: 12468
parent 28202356
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -44,7 +44,7 @@ namespace {

namespace {
  /// DeleteCalls - This pass is used to test bugpoint.  It intentionally
  /// deletes all call instructions, "misoptimizing" the program.
  /// deletes some call instructions, "misoptimizing" the program.
  class DeleteCalls : public BasicBlockPass {
    bool runOnBasicBlock(BasicBlock &BB) {
      for (BasicBlock::iterator I = BB.begin(), E = BB.end(); I != E; ++I)
@@ -52,6 +52,7 @@ namespace {
          if (!CI->use_empty())
            CI->replaceAllUsesWith(Constant::getNullValue(CI->getType()));
          CI->getParent()->getInstList().erase(CI);
          break;
        }
      return false;
    }