mirror of
https://github.com/RPCSX/llvm.git
synced 2025-03-06 11:59:54 +00:00
revert my patch, duncan points out what is wrong with my logic. Add
a comment so that I don't change this in the future :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@80760 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
b8bcbd61a8
commit
d3bd0821b0
@ -177,12 +177,16 @@ void CGPassManager::RefreshCallGraph(std::vector<CallGraphNode*> &CurSCC,
|
||||
assert(!CheckingMode &&
|
||||
"CallGraphSCCPass did not update the CallGraph correctly!");
|
||||
|
||||
// Just remove the edge from the set of callees.
|
||||
// Just remove the edge from the set of callees, keep track of whether
|
||||
// I points to the last element of the vector.
|
||||
bool WasLast = I + 1 == E;
|
||||
CGN->removeCallEdge(I);
|
||||
|
||||
// If we removed the last edge, get out of the loop.
|
||||
if (CGN->empty()) break;
|
||||
|
||||
// If I pointed to the last element of the vector, we have to bail out:
|
||||
// iterator checking rejects comparisons of the resultant pointer with
|
||||
// end.
|
||||
if (WasLast)
|
||||
break;
|
||||
E = CGN->end();
|
||||
continue;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user