[llvm] r314740 - [PassManager] Retire cl::opt that have been set for a while. NFCI.

Davide Italiano via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 2 16:39:20 PDT 2017


Author: davide
Date: Mon Oct  2 16:39:20 2017
New Revision: 314740

URL: http://llvm.org/viewvc/llvm-project?rev=314740&view=rev
Log:
[PassManager] Retire cl::opt that have been set for a while. NFCI.

Modified:
    llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
    llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll
    llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll
    llvm/trunk/test/Analysis/GlobalsModRef/weak-interposition.ll

Modified: llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp?rev=314740&r1=314739&r2=314740&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp (original)
+++ llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp Mon Oct  2 16:39:20 2017
@@ -94,15 +94,6 @@ static cl::opt<bool> EnableLoopInterchan
     "enable-loopinterchange", cl::init(false), cl::Hidden,
     cl::desc("Enable the new, experimental LoopInterchange Pass"));
 
-static cl::opt<bool> EnableNonLTOGlobalsModRef(
-    "enable-non-lto-gmr", cl::init(true), cl::Hidden,
-    cl::desc(
-        "Enable the GlobalsModRef AliasAnalysis outside of the LTO pipeline."));
-
-static cl::opt<bool> EnableLoopLoadElim(
-    "enable-loop-load-elim", cl::init(true), cl::Hidden,
-    cl::desc("Enable the LoopLoadElimination Pass"));
-
 static cl::opt<bool>
     EnablePrepareForThinLTO("prepare-for-thinlto", cl::init(false), cl::Hidden,
                             cl::desc("Enable preparation for ThinLTO."));
@@ -490,11 +481,10 @@ void PassManagerBuilder::populateModuleP
   if (!PerformThinLTO && !PrepareForThinLTOUsingPGOSampleProfile)
     addPGOInstrPasses(MPM);
 
-  if (EnableNonLTOGlobalsModRef)
-    // We add a module alias analysis pass here. In part due to bugs in the
-    // analysis infrastructure this "works" in that the analysis stays alive
-    // for the entire SCC pass run below.
-    MPM.add(createGlobalsAAWrapperPass());
+  // We add a module alias analysis pass here. In part due to bugs in the
+  // analysis infrastructure this "works" in that the analysis stays alive
+  // for the entire SCC pass run below.
+  MPM.add(createGlobalsAAWrapperPass());
 
   // Start of CallGraph SCC passes.
   if (!DisableUnitAtATime)
@@ -560,23 +550,22 @@ void PassManagerBuilder::populateModuleP
     MPM.add(createLICMPass());                  // Hoist loop invariants
   }
 
-  if (EnableNonLTOGlobalsModRef)
-    // We add a fresh GlobalsModRef run at this point. This is particularly
-    // useful as the above will have inlined, DCE'ed, and function-attr
-    // propagated everything. We should at this point have a reasonably minimal
-    // and richly annotated call graph. By computing aliasing and mod/ref
-    // information for all local globals here, the late loop passes and notably
-    // the vectorizer will be able to use them to help recognize vectorizable
-    // memory operations.
-    //
-    // Note that this relies on a bug in the pass manager which preserves
-    // a module analysis into a function pass pipeline (and throughout it) so
-    // long as the first function pass doesn't invalidate the module analysis.
-    // Thus both Float2Int and LoopRotate have to preserve AliasAnalysis for
-    // this to work. Fortunately, it is trivial to preserve AliasAnalysis
-    // (doing nothing preserves it as it is required to be conservatively
-    // correct in the face of IR changes).
-    MPM.add(createGlobalsAAWrapperPass());
+  // We add a fresh GlobalsModRef run at this point. This is particularly
+  // useful as the above will have inlined, DCE'ed, and function-attr
+  // propagated everything. We should at this point have a reasonably minimal
+  // and richly annotated call graph. By computing aliasing and mod/ref
+  // information for all local globals here, the late loop passes and notably
+  // the vectorizer will be able to use them to help recognize vectorizable
+  // memory operations.
+  //
+  // Note that this relies on a bug in the pass manager which preserves
+  // a module analysis into a function pass pipeline (and throughout it) so
+  // long as the first function pass doesn't invalidate the module analysis.
+  // Thus both Float2Int and LoopRotate have to preserve AliasAnalysis for
+  // this to work. Fortunately, it is trivial to preserve AliasAnalysis
+  // (doing nothing preserves it as it is required to be conservatively
+  // correct in the face of IR changes).
+  MPM.add(createGlobalsAAWrapperPass());
 
   MPM.add(createFloat2IntPass());
 
@@ -597,8 +586,7 @@ void PassManagerBuilder::populateModuleP
 
   // Eliminate loads by forwarding stores from the previous iteration to loads
   // of the current iteration.
-  if (EnableLoopLoadElim)
-    MPM.add(createLoopLoadEliminationPass());
+  MPM.add(createLoopLoadEliminationPass());
 
   // FIXME: Because of #pragma vectorize enable, the passes below are always
   // inserted in the pipeline, even when the vectorizer doesn't run (ex. when

Modified: llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll?rev=314740&r1=314739&r2=314740&view=diff
==============================================================================
--- llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll (original)
+++ llvm/trunk/test/Analysis/GlobalsModRef/memset-escape.ll Mon Oct  2 16:39:20 2017
@@ -1,4 +1,4 @@
-; RUN: opt < %s -O1 -S -enable-non-lto-gmr=true | FileCheck %s
+; RUN: opt < %s -O1 -S | FileCheck %s
 
 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-apple-macosx10.10.0"

Modified: llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll?rev=314740&r1=314739&r2=314740&view=diff
==============================================================================
--- llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll (original)
+++ llvm/trunk/test/Analysis/GlobalsModRef/no-escape.ll Mon Oct  2 16:39:20 2017
@@ -1,4 +1,4 @@
-; RUN: opt < %s -basicaa -globals-aa -S -enable-non-lto-gmr=true -licm | FileCheck %s
+; RUN: opt < %s -basicaa -globals-aa -S -licm | FileCheck %s
 
 target datalayout = "e-m:o-i64:64-f80:128-n8:16:32:64-S128"
 target triple = "x86_64-apple-macosx10.10.0"

Modified: llvm/trunk/test/Analysis/GlobalsModRef/weak-interposition.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/test/Analysis/GlobalsModRef/weak-interposition.ll?rev=314740&r1=314739&r2=314740&view=diff
==============================================================================
--- llvm/trunk/test/Analysis/GlobalsModRef/weak-interposition.ll (original)
+++ llvm/trunk/test/Analysis/GlobalsModRef/weak-interposition.ll Mon Oct  2 16:39:20 2017
@@ -1,4 +1,4 @@
-; RUN: opt -S -O1 -enable-non-lto-gmr=true < %s | FileCheck %s
+; RUN: opt -S -O1 < %s | FileCheck %s
 
 @a = common global i32 0, align 4
 




More information about the llvm-commits mailing list