OSDN Git Service

convert a couple other places that use pred_iterator to use the caching
authorChris Lattner <sabre@nondot.org>
Tue, 9 Dec 2008 06:44:17 +0000 (06:44 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 9 Dec 2008 06:44:17 +0000 (06:44 +0000)
pred iterator.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@60745 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/MemoryDependenceAnalysis.cpp

index 9439502..e75f887 100644 (file)
@@ -352,7 +352,8 @@ MemoryDependenceAnalysis::getNonLocalDependency(Instruction *QueryInst) {
   } else {
     // Seed DirtyBlocks with each of the preds of QueryInst's block.
     BasicBlock *QueryBB = QueryInst->getParent();
-    DirtyBlocks.append(pred_begin(QueryBB), pred_end(QueryBB));
+    for (BasicBlock **PI = PredCache->GetPreds(QueryBB); *PI; ++PI)
+      DirtyBlocks.push_back(*PI);
     NumUncacheNonLocal++;
   }
   
@@ -460,7 +461,8 @@ MemoryDependenceAnalysis::getNonLocalDependency(Instruction *QueryInst) {
     
       // If the block *is* completely transparent to the load, we need to check
       // the predecessors of this block.  Add them to our worklist.
-      DirtyBlocks.append(pred_begin(DirtyBB), pred_end(DirtyBB));
+      for (BasicBlock **PI = PredCache->GetPreds(DirtyBB); *PI; ++PI)
+        DirtyBlocks.push_back(*PI);
     }
   }