[llvm-commits] CVS: llvm/include/llvm/Analysis/LoopPass.h

Devang Patel dpatel at apple.com
Thu Feb 22 16:17:03 PST 2007



Changes in directory llvm/include/llvm/Analysis:

LoopPass.h updated: 1.3 -> 1.4
---
Log message:

Add facility that allows LoopPass to re-insert a loop into 
Loop Pass Manager's queue.


---
Diffs of the changes:  (+6 -1)

 LoopPass.h |    7 ++++++-
 1 files changed, 6 insertions(+), 1 deletion(-)


Index: llvm/include/llvm/Analysis/LoopPass.h
diff -u llvm/include/llvm/Analysis/LoopPass.h:1.3 llvm/include/llvm/Analysis/LoopPass.h:1.4
--- llvm/include/llvm/Analysis/LoopPass.h:1.3	Thu Feb 22 18:10:16 2007
+++ llvm/include/llvm/Analysis/LoopPass.h	Thu Feb 22 18:16:44 2007
@@ -85,10 +85,15 @@
   // Delete loop from the loop queue. This is used by Loop pass to inform
   // Loop Pass Manager that it should skip rest of the passes for this loop.
   void deleteLoopFromQueue(Loop *L);
+
+  // Reoptimize this loop. LPPassManager will re-insert this loop into the
+  // queue. This allows LoopPass to change loop nest for the loop. This
+  // utility may send LPPassManager into infinite loops so use caution.
+  void redoLoop(Loop *L);
 private:
   LoopQueue *LQ;
   bool skipThisLoop;
-
+  bool redoThisLoop;
 };
 
 } // End llvm namespace






More information about the llvm-commits mailing list