mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-01-27 14:34:58 +00:00
Fix an iterator invalidation problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@22575 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
8dcd5483bc
commit
1060e09fb2
@ -622,7 +622,9 @@ void LoopStrengthReduce::runOnLoop(Loop *L) {
|
||||
|
||||
BasicBlock::iterator I = L->getHeader()->begin();
|
||||
PHINode *PN;
|
||||
for (; (PN = dyn_cast<PHINode>(I)); ++I) {
|
||||
for (; (PN = dyn_cast<PHINode>(I)); ) {
|
||||
++I; // Preincrement iterator to avoid invalidating it when deleting PN.
|
||||
|
||||
// At this point, we know that we have killed one or more GEP instructions.
|
||||
// It is worth checking to see if the cann indvar is also dead, so that we
|
||||
// can remove it as well. The requirements for the cann indvar to be
|
||||
|
Loading…
x
Reference in New Issue
Block a user