OSDN Git Service

introduce a typedef, no functionality change.
authorChris Lattner <sabre@nondot.org>
Sun, 30 Nov 2008 02:30:50 +0000 (02:30 +0000)
committerChris Lattner <sabre@nondot.org>
Sun, 30 Nov 2008 02:30:50 +0000 (02:30 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60272 91177308-0d34-0410-b5e6-96231b3b80d8

include/llvm/Analysis/MemoryDependenceAnalysis.h
lib/Analysis/MemoryDependenceAnalysis.cpp

index 01a7317..66e2f42 100644 (file)
@@ -127,10 +127,13 @@ namespace llvm {
     typedef DenseMap<Instruction*, DepResultTy> LocalDepMapType;
     LocalDepMapType LocalDeps;
 
+    typedef DenseMap<BasicBlock*, DepResultTy> NonLocalDepInfo;
+    
+    
     // A map from instructions to their non-local dependencies.
     typedef DenseMap<Instruction*,
                      // This is an owning pointer.
-                     DenseMap<BasicBlock*, DepResultTy>*> NonLocalDepMapType;
+                     NonLocalDepInfo*> NonLocalDepMapType;
     NonLocalDepMapType NonLocalDeps;
     
     // A reverse mapping from dependencies to the dependees.  This is
index 01af42c..25e978d 100644 (file)
@@ -227,10 +227,10 @@ getNonLocalDependency(Instruction *QueryInst,
                                                       MemDepResult> > &Result) {
   assert(getDependency(QueryInst).isNonLocal() &&
      "getNonLocalDependency should only be used on insts with non-local deps!");
-  DenseMap<BasicBlock*, DepResultTy>* &CacheP = NonLocalDeps[QueryInst];
-  if (CacheP == 0) CacheP = new DenseMap<BasicBlock*, DepResultTy>();
+  NonLocalDepInfo *&CacheP = NonLocalDeps[QueryInst];
+  if (CacheP == 0) CacheP = new NonLocalDepInfo();
   
-  DenseMap<BasicBlock*, DepResultTy> &Cache = *CacheP;
+  NonLocalDepInfo &Cache = *CacheP;
 
   /// DirtyBlocks - This is the set of blocks that need to be recomputed.  In
   /// the cached case, this can happen due to instructions being deleted etc. In
@@ -243,8 +243,8 @@ getNonLocalDependency(Instruction *QueryInst,
     // determine what is dirty, seeding our initial DirtyBlocks worklist.
     // FIXME: In the "don't need to be updated" case, this is expensive, why not
     // have a per-"cache" flag saying it is undirty?
-    for (DenseMap<BasicBlock*, DepResultTy>::iterator I = Cache.begin(),
-         E = Cache.end(); I != E; ++I)
+    for (NonLocalDepInfo::iterator I = Cache.begin(), E = Cache.end();
+         I != E; ++I)
       if (I->second.getInt() == Dirty)
         DirtyBlocks.push_back(I->first);
     
@@ -303,8 +303,7 @@ getNonLocalDependency(Instruction *QueryInst,
   
   
   // Copy the result into the output set.
-  for (DenseMap<BasicBlock*, DepResultTy>::iterator I = Cache.begin(),
-       E = Cache.end(); I != E; ++I)
+  for (NonLocalDepInfo::iterator I = Cache.begin(), E = Cache.end(); I != E;++I)
     Result.push_back(std::make_pair(I->first, ConvToResult(I->second)));
 }
 
@@ -316,9 +315,9 @@ void MemoryDependenceAnalysis::removeInstruction(Instruction *RemInst) {
   // for any cached queries.
   NonLocalDepMapType::iterator NLDI = NonLocalDeps.find(RemInst);
   if (NLDI != NonLocalDeps.end()) {
-    DenseMap<BasicBlock*, DepResultTy> &BlockMap = *NLDI->second;
-    for (DenseMap<BasicBlock*, DepResultTy>::iterator DI =
-         BlockMap.begin(), DE = BlockMap.end(); DI != DE; ++DI)
+    NonLocalDepInfo &BlockMap = *NLDI->second;
+    for (NonLocalDepInfo::iterator DI = BlockMap.begin(), DE = BlockMap.end();
+         DI != DE; ++DI)
       if (Instruction *Inst = DI->second.getPointer())
         ReverseNonLocalDeps[Inst].erase(RemInst);
     delete &BlockMap;
@@ -389,11 +388,11 @@ void MemoryDependenceAnalysis::removeInstruction(Instruction *RemInst) {
          I != E; ++I) {
       assert(*I != RemInst && "Already removed NonLocalDep info for RemInst");
       
-      DenseMap<BasicBlock*, DepResultTy> &INLD = *NonLocalDeps[*I];
+      NonLocalDepInfo &INLD = *NonLocalDeps[*I];
       assert(&INLD != 0 && "Reverse mapping out of date?");
       
-      for (DenseMap<BasicBlock*, DepResultTy>::iterator
-           DI = INLD.begin(), DE = INLD.end(); DI != DE; ++DI) {
+      for (NonLocalDepInfo::iterator DI = INLD.begin(), DE = INLD.end();
+           DI != DE; ++DI) {
         if (DI->second.getPointer() != RemInst) continue;
         
         // Convert to a dirty entry for the subsequent instruction.
@@ -436,9 +435,9 @@ void MemoryDependenceAnalysis::verifyRemoved(Instruction *D) const {
   for (NonLocalDepMapType::const_iterator I = NonLocalDeps.begin(),
        E = NonLocalDeps.end(); I != E; ++I) {
     assert(I->first != D && "Inst occurs in data structures");
-    DenseMap<BasicBlock*, DepResultTy> &INLD = *I->second;
-    for (DenseMap<BasicBlock*, DepResultTy>::iterator II = INLD.begin(),
-         EE = INLD.end(); II  != EE; ++II)
+    NonLocalDepInfo &INLD = *I->second;
+    for (NonLocalDepInfo::iterator II = INLD.begin(), EE = INLD.end();
+         II  != EE; ++II)
       assert(II->second.getPointer() != D && "Inst occurs in data structures");
   }