[llvm] r263975 - [SLP] Remove unnecessary member variables by using container APIs.

Chad Rosier via llvm-commits llvm-commits at lists.llvm.org
Mon Mar 21 12:47:45 PDT 2016


Author: mcrosier
Date: Mon Mar 21 14:47:44 2016
New Revision: 263975

URL: http://llvm.org/viewvc/llvm-project?rev=263975&view=rev
Log:
[SLP] Remove unnecessary member variables by using container APIs.

This changes the debug output, but still retains its usefulness.
Differential Revision: http://reviews.llvm.org/D18324

Modified:
    llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp

Modified: llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp?rev=263975&r1=263974&r2=263975&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp (original)
+++ llvm/trunk/lib/Transforms/Vectorize/SLPVectorizer.cpp Mon Mar 21 14:47:44 2016
@@ -3439,8 +3439,9 @@ struct SLPVectorizer : public FunctionPa
       collectSeedInstructions(BB);
 
       // Vectorize trees that end at stores.
-      if (NumStores > 0) {
-        DEBUG(dbgs() << "SLP: Found " << NumStores << " stores.\n");
+      if (!Stores.empty()) {
+        DEBUG(dbgs() << "SLP: Found stores for " << Stores.size()
+                     << " underlying objects.\n");
         Changed |= vectorizeStoreChains(R);
       }
 
@@ -3450,8 +3451,9 @@ struct SLPVectorizer : public FunctionPa
       // Vectorize the index computations of getelementptr instructions. This
       // is primarily intended to catch gather-like idioms ending at
       // non-consecutive loads.
-      if (NumGEPs > 0) {
-        DEBUG(dbgs() << "SLP: Found " << NumGEPs << " GEPs.\n");
+      if (!GEPs.empty()) {
+        DEBUG(dbgs() << "SLP: Found GEPs for " << GEPs.size()
+                     << " underlying objects.\n");
         Changed |= vectorizeGEPIndices(BB, R);
       }
     }
@@ -3527,12 +3529,6 @@ private:
   /// The getelementptr instructions in a basic block organized by base pointer.
   WeakVHListMap GEPs;
 
-  /// The number of store instructions in a basic block.
-  unsigned NumStores;
-
-  /// The number of getelementptr instructions in a basic block.
-  unsigned NumGEPs;
-
   unsigned MaxVecRegSize; // This is set by TTI or overridden by cl::opt.
   unsigned MinVecRegSize; // Set by cl::opt (default: 128).
 };
@@ -3670,7 +3666,6 @@ void SLPVectorizer::collectSeedInstructi
   // Initialize the collections. We will make a single pass over the block.
   Stores.clear();
   GEPs.clear();
-  NumStores = NumGEPs = 0;
 
   // Visit the store and getelementptr instructions in BB and organize them in
   // Stores and GEPs according to the underlying objects of their pointer
@@ -3685,7 +3680,6 @@ void SLPVectorizer::collectSeedInstructi
       if (!isValidElementType(SI->getValueOperand()->getType()))
         continue;
       Stores[GetUnderlyingObject(SI->getPointerOperand(), *DL)].push_back(SI);
-      ++NumStores;
     }
 
     // Ignore getelementptr instructions that have more than one index, a
@@ -3698,7 +3692,6 @@ void SLPVectorizer::collectSeedInstructi
       if (!isValidElementType(Idx->getType()))
         continue;
       GEPs[GetUnderlyingObject(GEP->getPointerOperand(), *DL)].push_back(GEP);
-      ++NumGEPs;
     }
   }
 }




More information about the llvm-commits mailing list