[llvm-commits] [llvm] r50618 -	/llvm/trunk/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    Torok Edwin 
    edwintorok at gmail.com
       
    Sun May  4 01:51:25 PDT 2008
    
    
  
Author: edwin
Date: Sun May  4 03:51:25 2008
New Revision: 50618
URL: http://llvm.org/viewvc/llvm-project?rev=50618&view=rev
Log:
processStore may delete the instruction, avoid
using dyn_cast<> on already freed memory.
Modified:
    llvm/trunk/lib/Transforms/Scalar/MemCpyOptimizer.cpp
Modified: llvm/trunk/lib/Transforms/Scalar/MemCpyOptimizer.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/Scalar/MemCpyOptimizer.cpp?rev=50618&r1=50617&r2=50618&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/Scalar/MemCpyOptimizer.cpp (original)
+++ llvm/trunk/lib/Transforms/Scalar/MemCpyOptimizer.cpp Sun May  4 03:51:25 2008
@@ -718,8 +718,7 @@
       
       if (StoreInst *SI = dyn_cast<StoreInst>(I))
         changed_function |= processStore(SI, BI);
-
-      if (MemCpyInst* M = dyn_cast<MemCpyInst>(I)) {
+      else if (MemCpyInst* M = dyn_cast<MemCpyInst>(I)) {
         changed_function |= processMemCpy(M);
       }
     }
    
    
More information about the llvm-commits
mailing list