Fix a use of an invalid iterator when -debug-pass=Details is used.
llvm-svn: 58816
diff --git a/llvm/lib/VMCore/PassManager.cpp b/llvm/lib/VMCore/PassManager.cpp
index 6f559c4..690c485 100644
--- a/llvm/lib/VMCore/PassManager.cpp
+++ b/llvm/lib/VMCore/PassManager.cpp
@@ -727,12 +727,12 @@
&& std::find(PreservedSet.begin(), PreservedSet.end(), Info->first) ==
PreservedSet.end()) {
// Remove this analysis
- AvailableAnalysis.erase(Info);
if (PassDebugging >= Details) {
Pass *S = Info->second;
cerr << " -- '" << P->getPassName() << "' is not preserving '";
cerr << S->getPassName() << "'\n";
}
+ AvailableAnalysis.erase(Info);
}
}