From fee741b00dd092dbff1a027d9c02957e0832eccf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edwin=20T=C3=B6r=C3=B6k?= Date: Sun, 4 May 2008 08:51:25 +0000 Subject: processStore may delete the instruction, avoid using dyn_cast<> on already freed memory. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50618 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Transforms/Scalar/MemCpyOptimizer.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'lib/Transforms/Scalar/MemCpyOptimizer.cpp') diff --git a/lib/Transforms/Scalar/MemCpyOptimizer.cpp b/lib/Transforms/Scalar/MemCpyOptimizer.cpp index d6e5f39..8036bf8 100644 --- a/lib/Transforms/Scalar/MemCpyOptimizer.cpp +++ b/lib/Transforms/Scalar/MemCpyOptimizer.cpp @@ -718,8 +718,7 @@ bool MemCpyOpt::iterateOnFunction(Function &F) { if (StoreInst *SI = dyn_cast(I)) changed_function |= processStore(SI, BI); - - if (MemCpyInst* M = dyn_cast(I)) { + else if (MemCpyInst* M = dyn_cast(I)) { changed_function |= processMemCpy(M); } } -- cgit v1.1