[llvm-commits] [llvm-gcc-4.2] r50595 - /llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp

Chris Lattner sabre at nondot.org
Fri May 2 15:08:18 PDT 2008


Author: lattner
Date: Fri May  2 17:08:18 2008
New Revision: 50595

URL: http://llvm.org/viewvc/llvm-project?rev=50595&view=rev
Log:
run simplify libcalls later and at -O1 now that it is a
functionpass.  Testcase here: test/CFrontend/libcalls.c


Modified:
    llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp

Modified: llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp?rev=50595&r1=50594&r2=50595&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-backend.cpp Fri May  2 17:08:18 2008
@@ -350,8 +350,6 @@
       PM->add(createDeadArgEliminationPass());    // Dead argument elimination
     }
     PM->add(createInstructionCombiningPass());    // Clean up after IPCP & DAE
-    // DISABLE PREDSIMPLIFY UNTIL PR967 is fixed.
-    //PM->add(createPredicateSimplifierPass());   // Canonicalize registers
     PM->add(createCFGSimplificationPass());       // Clean up after IPCP & DAE
     if (flag_unit_at_a_time && flag_exceptions)
       PM->add(createPruneEHPass());               // Remove dead EH info
@@ -359,14 +357,13 @@
     if (optimize > 1) {
       if (flag_inline_trees > 1)                  // respect -fno-inline-functions
         PM->add(createFunctionInliningPass());    // Inline small functions
-      if (flag_unit_at_a_time && !lang_hooks.flag_no_builtin())
-        PM->add(createSimplifyLibCallsPass());  // Library Call Optimizations
-
       if (optimize > 2)
         PM->add(createArgumentPromotionPass()); // Scalarize uninlined fn args
     }
     
     PM->add(createTailDuplicationPass());       // Simplify cfg by copying code
+    if (!lang_hooks.flag_no_builtin())
+      PM->add(createSimplifyLibCallsPass());    // Library Call Optimizations
     PM->add(createInstructionCombiningPass());  // Cleanup for scalarrepl.
     PM->add(createJumpThreadingPass());         // Thread jumps.
     PM->add(createCFGSimplificationPass());     // Merge & remove BBs





More information about the llvm-commits mailing list