[llvm-commits] [llvm-gcc-4.2] r71985 - /llvm-gcc-4.2/trunk/gcc/tree-inline.c

Duncan Sands baldrick at free.fr
Sun May 17 12:35:51 PDT 2009


Author: baldrick
Date: Sun May 17 14:35:50 2009
New Revision: 71985

URL: http://llvm.org/viewvc/llvm-project?rev=71985&view=rev
Log:
When not compiling in unit-at-a-time mode (for example when compiling at
-O0), the gcc inliner is still being run.  Make sure it doesn't do anything
by marking all functions uninlineable.  The inlining is being ordered by
cgraph_finalize_function, in this part:
  if (!flag_unit_at_a_time)
    {
      cgraph_analyze_function (node);
      cgraph_decide_inlining_incrementally (node, false);
    }
Since the cgraph logic is a twisty maze of passages, I didn't dare turn this
off, and instead chose the wimpy way out.

Modified:
    llvm-gcc-4.2/trunk/gcc/tree-inline.c

Modified: llvm-gcc-4.2/trunk/gcc/tree-inline.c
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/tree-inline.c?rev=71985&r1=71984&r2=71985&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/tree-inline.c (original)
+++ llvm-gcc-4.2/trunk/gcc/tree-inline.c Sun May 17 14:35:50 2009
@@ -1525,6 +1525,11 @@
 {
   bool inlinable = true;
 
+/* LLVM LOCAL begin turn off gcc inliner */
+#ifdef ENABLE_LLVM
+  DECL_UNINLINABLE (fn) = 1;
+#endif
+/* LLVM LOCAL end turn off gcc inliner */
   /* If we've already decided this function shouldn't be inlined,
      there's no need to check again.  */
   if (DECL_UNINLINABLE (fn))





More information about the llvm-commits mailing list