[llvm-commits] CVS: llvm/tools/gccld/GenerateCode.cpp

Chris Lattner sabre at nondot.org
Sat Feb 3 15:06:19 PST 2007



Changes in directory llvm/tools/gccld:

GenerateCode.cpp updated: 1.68 -> 1.69
---
Log message:

add an instcombine pass to clean up after heavy-lifting IP passes


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

 GenerateCode.cpp |    6 ++++++
 1 files changed, 6 insertions(+)


Index: llvm/tools/gccld/GenerateCode.cpp
diff -u llvm/tools/gccld/GenerateCode.cpp:1.68 llvm/tools/gccld/GenerateCode.cpp:1.69
--- llvm/tools/gccld/GenerateCode.cpp:1.68	Sun Jan 21 00:29:39 2007
+++ llvm/tools/gccld/GenerateCode.cpp	Sat Feb  3 17:06:03 2007
@@ -239,6 +239,12 @@
     // Remove unused arguments from functions...
     addPass(Passes, createDeadArgEliminationPass());
 
+    // Reduce the code after globalopt and ipsccp.  Both can open up significant
+    // simplification opportunities, and both can propagate functions through
+    // function pointers.  When this happens, we often have to resolve varargs
+    // calls, etc, so let instcombine do this.
+    addPass(Passes, createInstructionCombiningPass());
+    
     if (!DisableInline)
       addPass(Passes, createFunctionInliningPass()); // Inline small functions
 






More information about the llvm-commits mailing list