LoopPass: Remove redoLoop, it isn't used. NFC
authorJustin Bogner <mail@justinbogner.com>
Thu, 22 Oct 2015 21:31:34 +0000 (21:31 +0000)
committerJustin Bogner <mail@justinbogner.com>
Thu, 22 Oct 2015 21:31:34 +0000 (21:31 +0000)
In r251064 I removed a logically unreachable call to `redoLoop`, and
now there aren't any callers of this API at all. Remove the needless
complexity.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@251067 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/LoopPass.h
lib/Analysis/LoopPass.cpp

index e57bcc292c3ad865f805a07a0dc741561627f8b9..f2ead0963588e5aaddd7969dd864fe9ebcc699b6 100644 (file)
@@ -134,11 +134,6 @@ public:
   // the top level if \c ParentLoop is null.
   Loop &addLoop(Loop *ParentLoop);
 
-  // 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);
-
   //===--------------------------------------------------------------------===//
   /// SimpleAnalysis - Provides simple interface to update analysis info
   /// maintained by various passes. Note, if required this interface can
@@ -161,7 +156,6 @@ public:
 private:
   std::deque<Loop *> LQ;
   bool skipThisLoop;
-  bool redoThisLoop;
   LoopInfo *LI;
   Loop *CurrentLoop;
 };
index d4c301cce1b0d0cb1951cccc659fb16909c034e6..d42425d753eab8a93db046e0f123ec55b7e2570e 100644 (file)
@@ -67,7 +67,6 @@ char LPPassManager::ID = 0;
 LPPassManager::LPPassManager()
   : FunctionPass(ID), PMDataManager() {
   skipThisLoop = false;
-  redoThisLoop = false;
   LI = nullptr;
   CurrentLoop = nullptr;
 }
@@ -126,14 +125,6 @@ Loop &LPPassManager::addLoop(Loop *ParentLoop) {
   return *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 LPPassManager::redoLoop(Loop *L) {
-  assert (CurrentLoop == L && "Can redo only CurrentLoop");
-  redoThisLoop = true;
-}
-
 /// cloneBasicBlockSimpleAnalysis - Invoke cloneBasicBlockAnalysis hook for
 /// all loop passes.
 void LPPassManager::cloneBasicBlockSimpleAnalysis(BasicBlock *From,
@@ -223,7 +214,6 @@ bool LPPassManager::runOnFunction(Function &F) {
 
     CurrentLoop  = LQ.back();
     skipThisLoop = false;
-    redoThisLoop = false;
 
     // Run all passes on the current Loop.
     for (unsigned Index = 0; Index < getNumContainedPasses(); ++Index) {
@@ -288,9 +278,6 @@ bool LPPassManager::runOnFunction(Function &F) {
 
     // Pop the loop from queue after running all passes.
     LQ.pop_back();
-
-    if (redoThisLoop)
-      LQ.push_back(CurrentLoop);
   }
 
   // Finalization