summaryrefslogtreecommitdiffstats
path: root/llvm/lib
diff options
context:
space:
mode:
authorDaniel Jasper <djasper@google.com>2015-03-06 10:39:14 +0000
committerDaniel Jasper <djasper@google.com>2015-03-06 10:39:14 +0000
commit6adbd7aecf5182ee5d7b50a3547c89de1483b7e3 (patch)
treea22607ed759e1ed219952219d1ab34b3e2a35894 /llvm/lib
parent88db86dd295a17eb51831b6d9b0d6af5098170a7 (diff)
downloadbcm5719-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.cpp6
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();
OpenPOWER on IntegriCloud