OSDN Git Service

* cgraphunit.c (decide_is_function_needed): Don't force always_inline
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 11 May 2006 16:11:37 +0000 (16:11 +0000)
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 11 May 2006 16:11:37 +0000 (16:11 +0000)
to be output at -O0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@113704 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/cgraphunit.c

index 1ab7732..fff2191 100644 (file)
@@ -1,3 +1,8 @@
+2006-05-11  Jan Hubicka  <jh@suse.cz>
+
+       * cgraphunit.c (decide_is_function_needed): Don't force always_inline
+       to be output at -O0.
+
 2006-05-11  Volker Reichelt  <reichelt@igpm.rwth-aachen.de>
 
        PR middle-end/27384
index 351f5f0..bfa7bff 100644 (file)
@@ -219,9 +219,11 @@ decide_is_function_needed (struct cgraph_node *node, tree decl)
      COMDAT functions that must be output only when they are needed. 
 
      When not optimizing, also output the static functions. (see
-     PR25962)
+     PR25962), but don't do so for always_inline functions.
      */
-  if (((TREE_PUBLIC (decl) || !optimize) && !flag_whole_program)
+  if (((TREE_PUBLIC (decl)
+       || (!optimize && !node->local.disregard_inline_limits))
+      && !flag_whole_program)
       && !DECL_COMDAT (decl) && !DECL_EXTERNAL (decl))
     return true;