[SCEVExpander] Use llvm data structures; NFC
authorSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 9 Dec 2016 14:42:11 +0000 (14:42 +0000)
committerSanjoy Das <sanjoy@playingwithpointers.com>
Fri, 9 Dec 2016 14:42:11 +0000 (14:42 +0000)
llvm-svn: 289215

llvm/include/llvm/Analysis/ScalarEvolutionExpander.h

index 337a11b..19c1177 100644 (file)
 #ifndef LLVM_ANALYSIS_SCALAREVOLUTIONEXPANDER_H
 #define LLVM_ANALYSIS_SCALAREVOLUTIONEXPANDER_H
 
+#include "llvm/ADT/DenseMap.h"
+#include "llvm/ADT/DenseSet.h"
 #include "llvm/ADT/Optional.h"
 #include "llvm/Analysis/ScalarEvolutionExpressions.h"
 #include "llvm/Analysis/ScalarEvolutionNormalization.h"
 #include "llvm/Analysis/TargetFolder.h"
 #include "llvm/IR/IRBuilder.h"
 #include "llvm/IR/ValueHandle.h"
-#include <set>
 
 namespace llvm {
   class TargetTransformInfo;
@@ -43,11 +44,12 @@ namespace llvm {
     const char* IVName;
 
     // InsertedExpressions caches Values for reuse, so must track RAUW.
-    std::map<std::pair<const SCEV *, Instruction *>, TrackingVH<Value> >
-      InsertedExpressions;
+    DenseMap<std::pair<const SCEV *, Instruction *>, TrackingVH<Value>>
+        InsertedExpressions;
+
     // InsertedValues only flags inserted instructions so needs no RAUW.
-    std::set<AssertingVH<Value> > InsertedValues;
-    std::set<AssertingVH<Value> > InsertedPostIncValues;
+    DenseSet<AssertingVH<Value>> InsertedValues;
+    DenseSet<AssertingVH<Value>> InsertedPostIncValues;
 
     /// A memoization of the "relevant" loop for a given SCEV.
     DenseMap<const SCEV *, const Loop *> RelevantLoops;
@@ -68,7 +70,7 @@ namespace llvm {
     Instruction *IVIncInsertPos;
 
     /// \brief Phis that complete an IV chain. Reuse
-    std::set<AssertingVH<PHINode> > ChainedPhis;
+    DenseSet<AssertingVH<PHINode>> ChainedPhis;
 
     /// \brief When true, expressions are expanded in "canonical" form. In
     /// particular, addrecs are expanded as arithmetic based on a canonical