diff options
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Transforms/Scalar/LoopInterchange.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopInterchange.cpp b/llvm/lib/Transforms/Scalar/LoopInterchange.cpp index 75596786072..f584018299d 100644 --- a/llvm/lib/Transforms/Scalar/LoopInterchange.cpp +++ b/llvm/lib/Transforms/Scalar/LoopInterchange.cpp @@ -1012,8 +1012,8 @@ void LoopInterchangeTransform::restructureLoops(Loop *InnerLoop, LI->changeTopLevelLoop(OuterLoop, InnerLoop); } - for (Loop::iterator I = InnerLoop->begin(), E = InnerLoop->end(); I != E; ++I) - OuterLoop->addChildLoop(InnerLoop->removeChildLoop(I)); + while (!InnerLoop->empty()) + OuterLoop->addChildLoop(InnerLoop->removeChildLoop(InnerLoop->begin())); InnerLoop->addChildLoop(OuterLoop); } |