[llvm-commits] [llvm] r154249 - in /llvm/trunk: include/llvm/Transforms/Vectorize.h lib/Transforms/Vectorize/BBVectorize.cpp

Hongbin Zheng etherzhhb at gmail.com
Fri Apr 6 20:56:24 PDT 2012


Author: ether
Date: Fri Apr  6 22:56:23 2012
New Revision: 154249

URL: http://llvm.org/viewvc/llvm-project?rev=154249&view=rev
Log:
Refactor: Use positive field names in VectorizeConfig.

Modified:
    llvm/trunk/include/llvm/Transforms/Vectorize.h
    llvm/trunk/lib/Transforms/Vectorize/BBVectorize.cpp

Modified: llvm/trunk/include/llvm/Transforms/Vectorize.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/Transforms/Vectorize.h?rev=154249&r1=154248&r2=154249&view=diff
==============================================================================
--- llvm/trunk/include/llvm/Transforms/Vectorize.h (original)
+++ llvm/trunk/include/llvm/Transforms/Vectorize.h Fri Apr  6 22:56:23 2012
@@ -28,23 +28,23 @@
   /// @brief The size of the native vector registers.
   unsigned VectorBits;
 
-  /// @brief Don't try to vectorize integer values.
-  bool NoInts;
+  /// @brief Vectorize integer values.
+  bool VectorizeInts;
 
-  /// @brief Don't try to vectorize floating-point values.
-  bool NoFloats;
+  /// @brief Vectorize floating-point values.
+  bool VectorizeFloats;
 
-  /// @brief Don't try to vectorize casting (conversion) operations.
-  bool NoCasts;
+  /// @brief Vectorize casting (conversion) operations.
+  bool VectorizeCasts;
 
-  /// @brief Don't try to vectorize floating-point math intrinsics.
-  bool NoMath;
+  /// @brief Vectorize floating-point math intrinsics.
+  bool VectorizeMath;
 
-  /// @brief Don't try to vectorize the fused-multiply-add intrinsic.
-  bool NoFMA;
+  /// @brief Vectorize the fused-multiply-add intrinsic.
+  bool VectorizeFMA;
 
-  /// @brief Don't try to vectorize loads and stores.
-  bool NoMemOps;
+  /// @brief Vectorize loads and stores.
+  bool VectorizeMemOps;
 
   /// @brief Only generate aligned loads and stores.
   bool AlignedOnly;

Modified: llvm/trunk/lib/Transforms/Vectorize/BBVectorize.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/BBVectorize.cpp?rev=154249&r1=154248&r2=154249&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/BBVectorize.cpp (original)
+++ llvm/trunk/lib/Transforms/Vectorize/BBVectorize.cpp Fri Apr  6 22:56:23 2012
@@ -437,9 +437,9 @@
       case Intrinsic::exp:
       case Intrinsic::exp2:
       case Intrinsic::pow:
-        return !Config.NoMath;
+        return Config.VectorizeMath;
       case Intrinsic::fma:
-        return !Config.NoFMA;
+        return Config.VectorizeFMA;
       }
     }
 
@@ -533,16 +533,16 @@
     } else if (LoadInst *L = dyn_cast<LoadInst>(I)) {
       // Vectorize simple loads if possbile:
       IsSimpleLoadStore = L->isSimple();
-      if (!IsSimpleLoadStore || Config.NoMemOps)
+      if (!IsSimpleLoadStore || !Config.VectorizeMemOps)
         return false;
     } else if (StoreInst *S = dyn_cast<StoreInst>(I)) {
       // Vectorize simple stores if possbile:
       IsSimpleLoadStore = S->isSimple();
-      if (!IsSimpleLoadStore || Config.NoMemOps)
+      if (!IsSimpleLoadStore || !Config.VectorizeMemOps)
         return false;
     } else if (CastInst *C = dyn_cast<CastInst>(I)) {
       // We can vectorize casts, but not casts of pointer types, etc.
-      if (Config.NoCasts)
+      if (!Config.VectorizeCasts)
         return false;
 
       Type *SrcTy = C->getSrcTy();
@@ -582,10 +582,12 @@
         !(VectorType::isValidElementType(T2) || T2->isVectorTy()))
       return false;
 
-    if (Config.NoInts && (T1->isIntOrIntVectorTy() || T2->isIntOrIntVectorTy()))
+    if (!Config.VectorizeInts
+        && (T1->isIntOrIntVectorTy() || T2->isIntOrIntVectorTy()))
       return false;
 
-    if (Config.NoFloats && (T1->isFPOrFPVectorTy() || T2->isFPOrFPVectorTy()))
+    if (!Config.VectorizeFloats
+        && (T1->isFPOrFPVectorTy() || T2->isFPOrFPVectorTy()))
       return false;
 
     if (T1->getPrimitiveSizeInBits() > Config.VectorBits/2 ||
@@ -1887,12 +1889,12 @@
 //===----------------------------------------------------------------------===//
 VectorizeConfig::VectorizeConfig() {
   VectorBits = ::VectorBits;
-  NoInts = ::NoInts;
-  NoFloats = ::NoFloats;
-  NoCasts = ::NoCasts;
-  NoMath = ::NoMath;
-  NoFMA = ::NoFMA;
-  NoMemOps = ::NoMemOps;
+  VectorizeInts = !::NoInts;
+  VectorizeFloats = !::NoFloats;
+  VectorizeCasts = !::NoCasts;
+  VectorizeMath = !::NoMath;
+  VectorizeFMA = !::NoFMA;
+  VectorizeMemOps = !::NoMemOps;
   AlignedOnly = ::AlignedOnly;
   ReqChainDepth= ::ReqChainDepth;
   SearchLimit = ::SearchLimit;





More information about the llvm-commits mailing list