aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-inline.c
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2010-07-08 18:46:49 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2010-07-08 16:46:49 +0000
commit09411461d2e1d7dfcc3aed713bddc68e34ba223d (patch)
treebc5d1a43aa025755bcaa3455dd75d5fff8fd479a /gcc/ipa-inline.c
parent72109b25534c8471768fa2765bebe7c62420e059 (diff)
downloadgcc-09411461d2e1d7dfcc3aed713bddc68e34ba223d.zip
gcc-09411461d2e1d7dfcc3aed713bddc68e34ba223d.tar.gz
gcc-09411461d2e1d7dfcc3aed713bddc68e34ba223d.tar.bz2
cgraph.c (cgraph_will_be_removed_from_program_if_no_direct_calls): New function.
* cgraph.c (cgraph_will_be_removed_from_program_if_no_direct_calls): New function. * cgraph.h (cgraph_will_be_removed_from_program_if_no_direct_calls): Declare. * ipa-cp.c (ipcp_estimate_growth): Use it. * ipa-inline.c (cgraph_estimate_growth, cgraph_decide_inlining): Likewise. From-SVN: r161966
Diffstat (limited to 'gcc/ipa-inline.c')
-rw-r--r--gcc/ipa-inline.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index 201e04a..e65c696 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -389,7 +389,7 @@ cgraph_estimate_growth (struct cgraph_node *node)
we decide to not inline for different reasons, but it is not big deal
as in that case we will keep the body around, but we will also avoid
some inlining. */
- if (cgraph_only_called_directly_p (node)
+ if (cgraph_will_be_removed_from_program_if_no_direct_calls (node)
&& !DECL_EXTERNAL (node->decl) && !self_recursive)
growth -= node->global.size;
@@ -1496,14 +1496,13 @@ cgraph_decide_inlining (void)
if (node->callers
&& !node->callers->next_caller
- && cgraph_only_called_directly_p (node)
+ && cgraph_will_be_removed_from_program_if_no_direct_calls (node)
&& node->local.inlinable
&& node->callers->inline_failed
&& node->callers->caller != node
&& node->callers->caller->global.inlined_to != node
&& !node->callers->call_stmt_cannot_inline_p
- && !DECL_EXTERNAL (node->decl)
- && !DECL_COMDAT (node->decl))
+ && !DECL_EXTERNAL (node->decl))
{
cgraph_inline_failed_t reason;
old_size = overall_size;