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

Misha Brukman brukman at cs.uiuc.edu
Mon Mar 1 20:56:32 PST 2004


Changes in directory llvm/tools/gccas:

gccas.cpp updated: 1.91 -> 1.91.2.1

---
Log message:

Merge from trunk

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

Index: llvm/tools/gccas/gccas.cpp
diff -u llvm/tools/gccas/gccas.cpp:1.91 llvm/tools/gccas/gccas.cpp:1.91.2.1
--- llvm/tools/gccas/gccas.cpp:1.91	Tue Jan 13 21:39:42 2004
+++ llvm/tools/gccas/gccas.cpp	Mon Mar  1 17:59:18 2004
@@ -65,18 +65,21 @@
 
   if (DisableOptimizations) return;
 
-  addPass(PM, createCFGSimplificationPass());    // Clean up disgusting code
   addPass(PM, createRaiseAllocationsPass());     // call %malloc -> malloc inst
+  addPass(PM, createCFGSimplificationPass());    // Clean up disgusting code
+  addPass(PM, createPromoteMemoryToRegister());  // Kill useless allocas
+  addPass(PM, createGlobalConstifierPass());     // Mark read-only globals const
   addPass(PM, createGlobalDCEPass());            // Remove unused globals
   addPass(PM, createIPConstantPropagationPass());// IP Constant Propagation
   addPass(PM, createDeadArgEliminationPass());   // Dead argument elimination
+  addPass(PM, createInstructionCombiningPass()); // Clean up after IPCP & DAE
+  addPass(PM, createCFGSimplificationPass());    // Clean up after IPCP & DAE
 
   addPass(PM, createPruneEHPass());              // Remove dead EH info
 
   if (!DisableInline)
     addPass(PM, createFunctionInliningPass());   // Inline small functions
 
-  addPass(PM, createInstructionCombiningPass()); // Cleanup code for raise
   addPass(PM, createRaisePointerReferencesPass());// Recover type information
   addPass(PM, createTailDuplicationPass());      // Simplify cfg by copying code
   addPass(PM, createCFGSimplificationPass());    // Merge & remove BBs
@@ -105,6 +108,7 @@
 
 int main(int argc, char **argv) {
   cl::ParseCommandLineOptions(argc, argv, " llvm .s -> .o assembler for GCC\n");
+  PrintStackTraceOnErrorSignal();
 
   std::auto_ptr<Module> M;
   try {





More information about the llvm-commits mailing list