[llvm-commits] CVS: llvm/tools/gccas/gccas.cpp

Chris Lattner lattner at cs.uiuc.edu
Fri Nov 21 15:45:02 PST 2003


Changes in directory llvm/tools/gccas:

gccas.cpp updated: 1.85 -> 1.86

---
Log message:

Reorder passes a bit.  In particular, it makes sense to run globaldce IMMEDIATELY after funcresolve.  Also, run the mem2reg pass _early_ so that IPCP and DAE actually do stuff.
Run instcombine and simplify cfg after this to cleanup the intraprocedural messes we create.


---
Diffs of the changes:  (+4 -2)

Index: llvm/tools/gccas/gccas.cpp
diff -u llvm/tools/gccas/gccas.cpp:1.85 llvm/tools/gccas/gccas.cpp:1.86
--- llvm/tools/gccas/gccas.cpp:1.85	Thu Nov 13 13:26:54 2003
+++ llvm/tools/gccas/gccas.cpp	Fri Nov 21 15:44:35 2003
@@ -58,11 +58,13 @@
   PM.add(createVerifierPass());                  // Verify that input is correct
   addPass(PM, createLowerSetJmpPass());          // Lower llvm.setjmp/.longjmp
   addPass(PM, createFunctionResolvingPass());    // Resolve (...) functions
-  addPass(PM, createCFGSimplificationPass());    // Clean up disgusting code
-  addPass(PM, createRaiseAllocationsPass());     // call %malloc -> malloc inst
   addPass(PM, createGlobalDCEPass());            // Remove unused globals
+  addPass(PM, createRaiseAllocationsPass());     // call %malloc -> malloc inst
+  addPass(PM, createPromoteMemoryToRegister());  // "Construct SSA form"
   addPass(PM, createIPConstantPropagationPass());// IP Constant Propagation
   addPass(PM, createDeadArgEliminationPass());   // Dead argument elimination
+  addPass(PM, createInstructionCombiningPass()); // Cleanup after IPCP & DAE
+  addPass(PM, createCFGSimplificationPass());    // Clean up disgusting code
 
   addPass(PM, createPruneEHPass());              // Remove dead EH info
 





More information about the llvm-commits mailing list