Add MemCpyOpt to LTO.
authorOwen Anderson <resistor@mac.com>
Tue, 22 Apr 2008 03:57:36 +0000 (03:57 +0000)
committerOwen Anderson <resistor@mac.com>
Tue, 22 Apr 2008 03:57:36 +0000 (03:57 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50081 91177308-0d34-0410-b5e6-96231b3b80d8

tools/lto/lto.cpp
tools/lto2/LTOCodeGenerator.cpp

index 7e0823edf1bd6a9cec3ff51fdf11a0c4241a636f..b7bd992c31ce53b77183b035b9eda1e49ad5cc38 100644 (file)
@@ -330,6 +330,7 @@ LTO::optimize(Module *M, std::ostream &Out,
   Passes.add(createGlobalsModRefPass());      // IP alias analysis
   
   Passes.add(createLICMPass());               // Hoist loop invariants
+  Passed.add(createMemCpyOptPass());  // Remove dead memcpy's
   Passes.add(createGVNPass());               // Remove common subexprs
   Passes.add(createDeadStoreEliminationPass()); // Nuke dead stores
 
index db27145bbf9e3b0549e06579e0fbc16cf97dc381..0c86613ae92ff8b5d5d46cbc05ac96e7248111cb 100644 (file)
@@ -377,6 +377,7 @@ bool LTOCodeGenerator::generateAssemblyCode(std::ostream& out, std::string& errM
     passes.add(createGlobalsModRefPass());      // IP alias analysis
 
     passes.add(createLICMPass());               // Hoist loop invariants
+    passes.add(createMemCpyOptPass());  // Remove dead memcpy's
     passes.add(createGVNPass());               // Remove common subexprs
     passes.add(createDeadStoreEliminationPass()); // Nuke dead stores