diff --git a/llvm/lib/Transforms/Scalar/GVNSink.cpp b/llvm/lib/Transforms/Scalar/GVNSink.cpp --- a/llvm/lib/Transforms/Scalar/GVNSink.cpp +++ b/llvm/lib/Transforms/Scalar/GVNSink.cpp @@ -779,11 +779,11 @@ unsigned NumOrigPreds = Preds.size(); // We can only sink instructions through unconditional branches. - for (auto I = Preds.begin(); I != Preds.end();) { - if ((*I)->getTerminator()->getNumSuccessors() != 1) - I = Preds.erase(I); + for (auto BB = Preds.begin(); BB != Preds.end();) { + if ((*BB)->getTerminator()->getNumSuccessors() != 1) + BB = Preds.erase(BB); else - ++I; + ++BB; } LockstepReverseIterator LRI(Preds);