[multiversion] Remove the function parameter from the unrolling
authorChandler Carruth <chandlerc@gmail.com>
Sun, 1 Feb 2015 14:31:23 +0000 (14:31 +0000)
committerChandler Carruth <chandlerc@gmail.com>
Sun, 1 Feb 2015 14:31:23 +0000 (14:31 +0000)
preferences interface on TTI now that all of TTI is per-function.

llvm-svn: 227741

llvm/include/llvm/Analysis/FunctionTargetTransformInfo.h
llvm/include/llvm/Analysis/TargetTransformInfo.h
llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
llvm/include/llvm/CodeGen/BasicTTIImpl.h
llvm/lib/Analysis/TargetTransformInfo.cpp
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
llvm/lib/Target/PowerPC/PPCTargetTransformInfo.cpp
llvm/lib/Target/PowerPC/PPCTargetTransformInfo.h
llvm/lib/Target/R600/AMDGPUTargetTransformInfo.cpp
llvm/lib/Target/R600/AMDGPUTargetTransformInfo.h

index fce5a1a..a321729 100644 (file)
@@ -42,7 +42,7 @@ public:
   void
   getUnrollingPreferences(Loop *L,
                           TargetTransformInfo::UnrollingPreferences &UP) const {
-    TTI->getUnrollingPreferences(Fn, L, UP);
+    TTI->getUnrollingPreferences(L, UP);
   }
 };
 }
index 1d3db7b..53da460 100644 (file)
@@ -249,8 +249,7 @@ public:
   /// \brief Get target-customized preferences for the generic loop unrolling
   /// transformation. The caller will initialize UP with the current
   /// target-independent defaults.
-  void getUnrollingPreferences(const Function *F, Loop *L,
-                               UnrollingPreferences &UP) const;
+  void getUnrollingPreferences(Loop *L, UnrollingPreferences &UP) const;
 
   /// @}
 
@@ -499,8 +498,7 @@ public:
   virtual unsigned getUserCost(const User *U) = 0;
   virtual bool hasBranchDivergence() = 0;
   virtual bool isLoweredToCall(const Function *F) = 0;
-  virtual void getUnrollingPreferences(const Function *F, Loop *L,
-                                       UnrollingPreferences &UP) = 0;
+  virtual void getUnrollingPreferences(Loop *L, UnrollingPreferences &UP) = 0;
   virtual bool isLegalAddImmediate(int64_t Imm) = 0;
   virtual bool isLegalICmpImmediate(int64_t Imm) = 0;
   virtual bool isLegalAddressingMode(Type *Ty, GlobalValue *BaseGV,
@@ -596,9 +594,8 @@ public:
   bool isLoweredToCall(const Function *F) override {
     return Impl.isLoweredToCall(F);
   }
-  void getUnrollingPreferences(const Function *F, Loop *L,
-                               UnrollingPreferences &UP) override {
-    return Impl.getUnrollingPreferences(F, L, UP);
+  void getUnrollingPreferences(Loop *L, UnrollingPreferences &UP) override {
+    return Impl.getUnrollingPreferences(L, UP);
   }
   bool isLegalAddImmediate(int64_t Imm) override {
     return Impl.isLegalAddImmediate(Imm);
index 01fb8b6..488f96e 100644 (file)
@@ -198,8 +198,7 @@ public:
     return true;
   }
 
-  void getUnrollingPreferences(const Function *, Loop *,
-                               TTI::UnrollingPreferences &) {}
+  void getUnrollingPreferences(Loop *, TTI::UnrollingPreferences &) {}
 
   bool isLegalAddImmediate(int64_t Imm) { return false; }
 
index d712957..6166432 100644 (file)
@@ -167,8 +167,7 @@ public:
            TLI->isOperationLegalOrCustom(ISD::FSQRT, VT);
   }
 
-  void getUnrollingPreferences(const Function *F, Loop *L,
-                               TTI::UnrollingPreferences &UP) {
+  void getUnrollingPreferences(Loop *L, TTI::UnrollingPreferences &UP) {
     // This unrolling functionality is target independent, but to provide some
     // motivation for its intended use, for x86:
 
index d51cfb3..5a50d36 100644 (file)
@@ -81,8 +81,8 @@ bool TargetTransformInfo::isLoweredToCall(const Function *F) const {
 }
 
 void TargetTransformInfo::getUnrollingPreferences(
-    const Function *F, Loop *L, UnrollingPreferences &UP) const {
-  return TTIImpl->getUnrollingPreferences(F, L, UP);
+    Loop *L, UnrollingPreferences &UP) const {
+  return TTIImpl->getUnrollingPreferences(L, UP);
 }
 
 bool TargetTransformInfo::isLegalAddImmediate(int64_t Imm) const {
index eab080b..0646d85 100644 (file)
@@ -424,7 +424,7 @@ unsigned AArch64TTIImpl::getMaxInterleaveFactor() {
   return 2;
 }
 
-void AArch64TTIImpl::getUnrollingPreferences(const Function *F, Loop *L,
+void AArch64TTIImpl::getUnrollingPreferences(Loop *L,
                                              TTI::UnrollingPreferences &UP) {
   // Disable partial & runtime unrolling on -Os.
   UP.PartialOptSizeThreshold = 0;
index fffeb98..dd3fd1f 100644 (file)
@@ -132,8 +132,7 @@ public:
 
   unsigned getCostOfKeepingLiveOverCall(ArrayRef<Type *> Tys);
 
-  void getUnrollingPreferences(const Function *F, Loop *L,
-                               TTI::UnrollingPreferences &UP);
+  void getUnrollingPreferences(Loop *L, TTI::UnrollingPreferences &UP);
 
   Value *getOrCreateResultFromMemIntrinsic(IntrinsicInst *Inst,
                                            Type *ExpectedType);
index 98fe5cd..4003b1b 100644 (file)
@@ -181,7 +181,7 @@ unsigned PPCTTIImpl::getIntImmCost(unsigned Opcode, unsigned Idx,
   return PPCTTIImpl::getIntImmCost(Imm, Ty);
 }
 
-void PPCTTIImpl::getUnrollingPreferences(const Function *F, Loop *L,
+void PPCTTIImpl::getUnrollingPreferences(Loop *L,
                                          TTI::UnrollingPreferences &UP) {
   if (ST->getDarwinDirective() == PPC::DIR_A2) {
     // The A2 is in-order with a deep pipeline, and concatenation unrolling
@@ -189,7 +189,7 @@ void PPCTTIImpl::getUnrollingPreferences(const Function *F, Loop *L,
     UP.Partial = UP.Runtime = true;
   }
 
-  BaseT::getUnrollingPreferences(F, L, UP);
+  BaseT::getUnrollingPreferences(L, UP);
 }
 
 unsigned PPCTTIImpl::getNumberOfRegisters(bool Vector) {
index 0429a26..cef7079 100644 (file)
@@ -71,8 +71,7 @@ public:
                          Type *Ty);
 
   TTI::PopcntSupportKind getPopcntSupport(unsigned TyWidth);
-  void getUnrollingPreferences(const Function *F, Loop *L,
-                               TTI::UnrollingPreferences &UP);
+  void getUnrollingPreferences(Loop *L, TTI::UnrollingPreferences &UP);
 
   /// @}
 
index be7b2f4..4647ddf 100644 (file)
@@ -27,7 +27,7 @@ using namespace llvm;
 
 #define DEBUG_TYPE "AMDGPUtti"
 
-void AMDGPUTTIImpl::getUnrollingPreferences(const Function *, Loop *L,
+void AMDGPUTTIImpl::getUnrollingPreferences(Loop *L,
                                             TTI::UnrollingPreferences &UP) {
   UP.Threshold = 300; // Twice the default.
   UP.Count = UINT_MAX;
index 4c41033..4abbdf2 100644 (file)
@@ -61,8 +61,7 @@ public:
 
   bool hasBranchDivergence() { return true; }
 
-  void getUnrollingPreferences(const Function *F, Loop *L,
-                               TTI::UnrollingPreferences &UP);
+  void getUnrollingPreferences(Loop *L, TTI::UnrollingPreferences &UP);
 
   TTI::PopcntSupportKind getPopcntSupport(unsigned TyWidth) {
     assert(isPowerOf2_32(TyWidth) && "Ty width must be power of 2");