[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