Remember to update the reverse non-local cache when cleaning up dirty entries. This...
authorOwen Anderson <resistor@mac.com>
Sun, 1 Jun 2008 21:03:52 +0000 (21:03 +0000)
committerOwen Anderson <resistor@mac.com>
Sun, 1 Jun 2008 21:03:52 +0000 (21:03 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51846 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Analysis/MemoryDependenceAnalysis.cpp

index 6489892df17ee254447a474c327ea87005494086..2012ab473c98a697650a37a94129bc67a0c1f347 100644 (file)
@@ -282,6 +282,11 @@ void MemoryDependenceAnalysis::getNonLocalDependency(Instruction* query,
     
     resp = cached;
     
+    // Update the reverse non-local dependency cache
+    for (DenseMap<BasicBlock*, Value*>::iterator I = resp.begin(), E = resp.end();
+         I != E; ++I)
+      reverseDepNonLocal[I->second].insert(query);
+    
     return;
   } else
     NumUncacheNonlocal++;