2007-08-22 Richard Guenther <rguenther@suse.de>
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Aug 2007 08:10:42 +0000 (08:10 +0000)
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 22 Aug 2007 08:10:42 +0000 (08:10 +0000)
* tree-inline.c (inlinable_function_p): Restore disregarding
inline limits for GNU extern inline functions.

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

gcc/ChangeLog
gcc/tree-inline.c

index 234bc45..fd50152 100644 (file)
@@ -1,5 +1,10 @@
 2007-08-22  Richard Guenther  <rguenther@suse.de>
 
+       * tree-inline.c (inlinable_function_p): Restore disregarding
+       inline limits for GNU extern inline functions.
+
+2007-08-22  Richard Guenther  <rguenther@suse.de>
+
        PR middle-end/32563
        * tree.c (host_integerp): Treat sizetype as signed as it is
        sign-extended.
index 1619838..a24f70d 100644 (file)
@@ -1920,6 +1920,11 @@ inlinable_function_p (tree fn)
 bool
 disregard_inline_limits_p (tree fn)
 {
+  /* GNU extern inline functions are supposed to be cheap.  */
+  if (DECL_DECLARED_INLINE_P (fn)
+      && DECL_EXTERNAL (fn))
+    return true;
+
   return lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) != NULL_TREE;
 }