[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