diff options
author | Daniel Jasper <djasper@google.com> | 2015-03-06 10:39:14 +0000 |
---|---|---|
committer | Daniel Jasper <djasper@google.com> | 2015-03-06 10:39:14 +0000 |
commit | 6adbd7aecf5182ee5d7b50a3547c89de1483b7e3 (patch) | |
tree | a22607ed759e1ed219952219d1ab34b3e2a35894 /llvm/lib | |
parent | 88db86dd295a17eb51831b6d9b0d6af5098170a7 (diff) | |
download | bcm5719-llvm-6adbd7aecf5182ee5d7b50a3547c89de1483b7e3.tar.gz bcm5719-llvm-6adbd7aecf5182ee5d7b50a3547c89de1483b7e3.zip |
Change the way in which error case is being handled.
Specifically this:
* Prevents an "unused" warning in non-assert builds.
* In that error case return with out removing a child loop instead of
looping forever.
llvm-svn: 231459
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Transforms/Scalar/LoopInterchange.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/llvm/lib/Transforms/Scalar/LoopInterchange.cpp b/llvm/lib/Transforms/Scalar/LoopInterchange.cpp index 6ded56e4eb9..f8c865b9c18 100644 --- a/llvm/lib/Transforms/Scalar/LoopInterchange.cpp +++ b/llvm/lib/Transforms/Scalar/LoopInterchange.cpp @@ -901,14 +901,16 @@ bool LoopInterchangeProfitability::isProfitable(unsigned InnerLoopId, void LoopInterchangeTransform::removeChildLoop(Loop *OuterLoop, Loop *InnerLoop) { - for (Loop::iterator I = OuterLoop->begin(), E = OuterLoop->end();; ++I) { - assert(I != E && "Couldn't find loop"); + for (Loop::iterator I = OuterLoop->begin(), E = OuterLoop->end(); I != E; + ++I) { if (*I == InnerLoop) { OuterLoop->removeChildLoop(I); return; } } + assert(false && "Couldn't find loop"); } + void LoopInterchangeTransform::restructureLoops(Loop *InnerLoop, Loop *OuterLoop) { Loop *OuterLoopParent = OuterLoop->getParentLoop(); |