Insert loop into LQ before visiting children.
authorDevang Patel <dpatel@apple.com>
Tue, 6 Mar 2007 19:50:49 +0000 (19:50 +0000)
committerDevang Patel <dpatel@apple.com>
Tue, 6 Mar 2007 19:50:49 +0000 (19:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34982 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/LoopPass.cpp

index b6b862eca158c2d2858ddf5eca9d9be6a8835d5d..d44e41a63713b524241b8645c5bb747acf4c1ba1 100644 (file)
@@ -138,9 +138,9 @@ void LPPassManager::redoLoop(Loop *L) {
 
 // Recurse through all subloops and all loops  into LQ.
 static void addLoopIntoQueue(Loop *L, std::deque<Loop *> &LQ) {
+  LQ.push_back(L);
   for (Loop::iterator I = L->begin(), E = L->end(); I != E; ++I)
     addLoopIntoQueue(*I, LQ);
-  LQ.push_back(L);
 }
 
 /// Pass Manager itself does not invalidate any analysis info.