aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDuncan Sands <baldrick@free.fr>2008-01-20 16:51:46 +0000
committerDuncan Sands <baldrick@free.fr>2008-01-20 16:51:46 +0000
commite003813e9613f41ff2c6a10cb1d3ae3a5b8eab1f (patch)
tree675141e107ce8e911f331989419352c0f7c6450d
parentea74c7e498274960c2b09b7988b4cfefff43137f (diff)
Make sure the caller doesn't use freed memory.
Fixes PR1935. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46203 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--lib/Transforms/Scalar/CodeGenPrepare.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/lib/Transforms/Scalar/CodeGenPrepare.cpp b/lib/Transforms/Scalar/CodeGenPrepare.cpp
index 8d6c923ab1..5c572a640e 100644
--- a/lib/Transforms/Scalar/CodeGenPrepare.cpp
+++ b/lib/Transforms/Scalar/CodeGenPrepare.cpp
@@ -401,8 +401,10 @@ static bool OptimizeNoopCopyExpression(CastInst *CI, const TargetLowering &TLI){
}
// If we removed all uses, nuke the cast.
- if (CI->use_empty())
+ if (CI->use_empty()) {
CI->eraseFromParent();
+ MadeChange = true;
+ }
return MadeChange;
}