Revert "SCEV: Use I = vector<>.erase(I) to iterate and delete at the same time"

as committed in r208282. The original commit was incorrect.

llvm-svn: 208286
This commit is contained in:
Tobias Grosser 2014-05-08 07:55:34 +00:00
parent f7405c129e
commit 3080cf16a5
1 changed files with 6 additions and 3 deletions

View File

@ -7223,9 +7223,12 @@ static void findArrayDimensionsRec(ScalarEvolution &SE,
Terms[I] = Q;
}
for (auto I = Terms.begin(), E = Terms.end(); I != E; I++)
if (isa<SCEVConstant>(*I))
I = Terms.erase(I);
// Remove all SCEVConstants.
for (unsigned I = 0; I < Terms.size();)
if (isa<SCEVConstant>(Terms[I]))
Terms.erase(Terms.begin() + I);
else
++I;
if (Terms.size() > 0)
findArrayDimensionsRec(SE, Terms, Sizes, Zero, One);