Switch LoopIdiom pass to directly require target transform information.
authorChandler Carruth <chandlerc@gmail.com>
Mon, 7 Jan 2013 09:17:41 +0000 (09:17 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Mon, 7 Jan 2013 09:17:41 +0000 (09:17 +0000)
I'm sorry for duplicating bad style here, but I wanted to keep
consistency. I've pinged the code review thread where this style was
reviewed and changes were requested.

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

lib/Transforms/Scalar/LoopIdiomRecognize.cpp

index 59109a786564ba825947db5d27fcbdaf2e4df7b1..c4f90125ac5a05e1d4f7cda2d05d511c05615ccd 100644 (file)
@@ -177,6 +177,7 @@ namespace {
       AU.addPreserved<DominatorTree>();
       AU.addRequired<DominatorTree>();
       AU.addRequired<TargetLibraryInfo>();
       AU.addPreserved<DominatorTree>();
       AU.addRequired<DominatorTree>();
       AU.addRequired<TargetLibraryInfo>();
+      AU.addRequired<TargetTransformInfo>();
     }
 
     const DataLayout *getDataLayout() {
     }
 
     const DataLayout *getDataLayout() {
@@ -196,9 +197,7 @@ namespace {
     }
 
     const TargetTransformInfo *getTargetTransformInfo() {
     }
 
     const TargetTransformInfo *getTargetTransformInfo() {
-      if (!TTI)
-        TTI = getAnalysisIfAvailable<TargetTransformInfo>();
-      return TTI;
+      return TTI ? TTI : (TTI = &getAnalysis<TargetTransformInfo>());
     }
 
     Loop *getLoop() const { return CurLoop; }
     }
 
     Loop *getLoop() const { return CurLoop; }
@@ -219,6 +218,7 @@ INITIALIZE_PASS_DEPENDENCY(LCSSA)
 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
 INITIALIZE_PASS_DEPENDENCY(TargetLibraryInfo)
 INITIALIZE_AG_DEPENDENCY(AliasAnalysis)
 INITIALIZE_PASS_DEPENDENCY(ScalarEvolution)
 INITIALIZE_PASS_DEPENDENCY(TargetLibraryInfo)
 INITIALIZE_AG_DEPENDENCY(AliasAnalysis)
+INITIALIZE_AG_DEPENDENCY(TargetTransformInfo)
 INITIALIZE_PASS_END(LoopIdiomRecognize, "loop-idiom", "Recognize loop idioms",
                     false, false)
 
 INITIALIZE_PASS_END(LoopIdiomRecognize, "loop-idiom", "Recognize loop idioms",
                     false, false)