aboutsummaryrefslogtreecommitdiff
path: root/lib/Analysis/AliasSetTracker.cpp
diff options
context:
space:
mode:
authorDevang Patel <dpatel@apple.com>2009-03-30 18:34:47 +0000
committerDevang Patel <dpatel@apple.com>2009-03-30 18:34:47 +0000
commit6d9a2df4ecd7977588ac5e5ad080e22cce2f1c23 (patch)
treeab0f8789ecb30eaf767430496ae51a596ef3959c /lib/Analysis/AliasSetTracker.cpp
parent854b9d76232308795c2473172060e3eb8b470170 (diff)
getEntryFor() may invalidate DenseMap iterator.
Walking an invalidated iterator is not a good idea. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@68047 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/AliasSetTracker.cpp')
-rw-r--r--lib/Analysis/AliasSetTracker.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/lib/Analysis/AliasSetTracker.cpp b/lib/Analysis/AliasSetTracker.cpp
index a386a494fc..18c2b66505 100644
--- a/lib/Analysis/AliasSetTracker.cpp
+++ b/lib/Analysis/AliasSetTracker.cpp
@@ -520,6 +520,7 @@ void AliasSetTracker::copyValue(Value *From, Value *To) {
if (Entry.hasAliasSet()) return; // Already in the tracker!
// Add it to the alias set it aliases...
+ I = PointerMap.find(From);
AliasSet *AS = I->second->getAliasSet(*this);
AS->addPointer(*this, Entry, I->second->getSize(), true);
}