summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2007-02-24 19:02:40 +0000
committerhubicka <hubicka@138bc75d-0d04-0410-961f-82ee72b054a4>2007-02-24 19:02:40 +0000
commit55680befb0b4e26e0214a8ec86f9de3518fc8b29 (patch)
tree9e3a2dbb0ddb5d1afef5ee56704ab6f59da22a45
parentebf8b4f5231942a432253f8c8bedf24e9b119e24 (diff)
downloadppe42-gcc-55680befb0b4e26e0214a8ec86f9de3518fc8b29.tar.gz
ppe42-gcc-55680befb0b4e26e0214a8ec86f9de3518fc8b29.zip
* cgraphunit.c (decide_is_function_needed): Honor
-fkeep-inline-functions. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@122293 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/cgraphunit.c7
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2e57a9bca70..84e83e40844 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2007-02-24 Jan Hubicka <jh@suse.cz>
+
+ * cgraphunit.c (decide_is_function_needed): Honor
+ -fkeep-inline-functions.
+
2007-02-24 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* builtins.c (fold_builtin_modf): New.
diff --git a/gcc/cgraphunit.c b/gcc/cgraphunit.c
index 16c34aecfeb..55b915d3ff4 100644
--- a/gcc/cgraphunit.c
+++ b/gcc/cgraphunit.c
@@ -198,6 +198,13 @@ decide_is_function_needed (struct cgraph_node *node, tree decl)
&& TREE_SYMBOL_REFERENCED (DECL_ASSEMBLER_NAME (decl)))
return true;
+ /* With -fkeep-inline-functions we are keeping all inline functions except
+ for extern inline ones. */
+ if (flag_keep_inline_functions
+ && DECL_DECLARED_INLINE_P (decl)
+ && !DECL_EXTERNAL (decl))
+ return true;
+
/* If we decided it was needed before, but at the time we didn't have
the body of the function available, then it's still needed. We have
to go back and re-check its dependencies now. */
OpenPOWER on IntegriCloud