aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Analysis/AliasSetTracker.cpp
diff options
context:
space:
mode:
authorEli Friedman <eli.friedman@gmail.com>2011-04-09 06:55:46 +0000
committerEli Friedman <eli.friedman@gmail.com>2011-04-09 06:55:46 +0000
commit9055ccdb6b33607e32ac83a8e9289fba44d1989a (patch)
treeb7c3a7aa2c15dd8b5923241c64ed936974417247 /lib/Analysis/AliasSetTracker.cpp
parent83d13a046fc6d94a3a44a023a7ebad6f0cda333b (diff)
downloadexternal_llvm-9055ccdb6b33607e32ac83a8e9289fba44d1989a.zip
external_llvm-9055ccdb6b33607e32ac83a8e9289fba44d1989a.tar.gz
external_llvm-9055ccdb6b33607e32ac83a8e9289fba44d1989a.tar.bz2
PR9604; try to deal with RAUW updates correctly in the AST. I'm not convinced
it's completely safe to cache the AST across LICM runs even with this fix, but this fix can't hurt. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129198 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Analysis/AliasSetTracker.cpp')
-rw-r--r--lib/Analysis/AliasSetTracker.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/lib/Analysis/AliasSetTracker.cpp b/lib/Analysis/AliasSetTracker.cpp
index 3a46976..2ed6949 100644
--- a/lib/Analysis/AliasSetTracker.cpp
+++ b/lib/Analysis/AliasSetTracker.cpp
@@ -602,6 +602,10 @@ void AliasSetTracker::ASTCallbackVH::deleted() {
// this now dangles!
}
+void AliasSetTracker::ASTCallbackVH::allUsesReplacedWith(Value *V) {
+ AST->copyValue(getValPtr(), V);
+}
+
AliasSetTracker::ASTCallbackVH::ASTCallbackVH(Value *V, AliasSetTracker *ast)
: CallbackVH(V), AST(ast) {}