[llvm] r231459 - Change the way in which error case is being handled.
Daniel Jasper
djasper at google.com
Fri Mar 6 02:39:14 PST 2015
Author: djasper
Date: Fri Mar 6 04:39:14 2015
New Revision: 231459
URL: http://llvm.org/viewvc/llvm-project?rev=231459&view=rev
Log:
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.
Modified:
llvm/trunk/lib/Transforms/Scalar/LoopInterchange.cpp
Modified: llvm/trunk/lib/Transforms/Scalar/LoopInterchange.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/LoopInterchange.cpp?rev=231459&r1=231458&r2=231459&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/LoopInterchange.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/LoopInterchange.cpp Fri Mar 6 04:39:14 2015
@@ -901,14 +901,16 @@ bool LoopInterchangeProfitability::isPro
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();
More information about the llvm-commits
mailing list