From be5c7f19540afeab171c2b5a7688727f62307cde Mon Sep 17 00:00:00 2001 From: ebotcazou Date: Fri, 31 Oct 2014 12:32:05 +0000 Subject: [PATCH] * ipa-inline.c (want_inline_small_function_p): Fix typo and formatting. (want_inline_function_to_all_callers_p): Fix formatting and simplify. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@216973 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 7 ++++++- gcc/ipa-inline.c | 53 +++++++++++++++++++++++++++-------------------------- 2 files changed, 33 insertions(+), 27 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f228610..af7e3d4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2014-10-31 Eric Botcazou + + * ipa-inline.c (want_inline_small_function_p): Fix typo and formatting. + (want_inline_function_to_all_callers_p): Fix formatting and simplify. + 2014-10-31 Thomas Preud'homme PR tree-optimization/63259 @@ -19,7 +24,7 @@ * ipa-icf.c (sem_function::~sem_function): Change free to delete to avoid alloc-dealloc mismatch with new, called in ipa_icf::sem_function::init. -2014-10-10 Felix Yang +2014-10-30 Felix Yang * config/xtensa/xtensa.h (TARGET_LOOPS): New Macro. * config/xtensa/xtensa.c: Include dumpfile.h and hw-doloop.h. diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c index d599900..fff386b 100644 --- a/gcc/ipa-inline.c +++ b/gcc/ipa-inline.c @@ -590,19 +590,21 @@ want_inline_small_function_p (struct cgraph_edge *e, bool report) want_inline = false; } /* Do fast and conservative check if the function can be good - inline cnadidate. At themoment we allow inline hints to - promote non-inline function to inline and we increase - MAX_INLINE_INSNS_SINGLE 16fold for inline functions. */ + inline candidate. At the moment we allow inline hints to + promote non-inline functions to inline and we increase + MAX_INLINE_INSNS_SINGLE 16-fold for inline functions. */ else if ((!DECL_DECLARED_INLINE_P (callee->decl) && (!e->count || !e->maybe_hot_p ())) - && inline_summary (callee)->min_size - inline_edge_summary (e)->call_stmt_size + && inline_summary (callee)->min_size + - inline_edge_summary (e)->call_stmt_size > MAX (MAX_INLINE_INSNS_SINGLE, MAX_INLINE_INSNS_AUTO)) { e->inline_failed = CIF_MAX_INLINE_INSNS_AUTO_LIMIT; want_inline = false; } else if ((DECL_DECLARED_INLINE_P (callee->decl) || e->count) - && inline_summary (callee)->min_size - inline_edge_summary (e)->call_stmt_size + && inline_summary (callee)->min_size + - inline_edge_summary (e)->call_stmt_size > 16 * MAX_INLINE_INSNS_SINGLE) { e->inline_failed = (DECL_DECLARED_INLINE_P (callee->decl) @@ -836,27 +838,26 @@ has_caller_p (struct cgraph_node *node, void *data ATTRIBUTE_UNUSED) static bool want_inline_function_to_all_callers_p (struct cgraph_node *node, bool cold) { - struct cgraph_node *function = node->ultimate_alias_target (); - bool has_hot_call = false; - - /* Does it have callers? */ - if (!node->call_for_symbol_thunks_and_aliases (has_caller_p, NULL, true)) - return false; - /* Already inlined? */ - if (function->global.inlined_to) - return false; - if (node->ultimate_alias_target () != node) - return false; - /* Inlining into all callers would increase size? */ - if (estimate_growth (node) > 0) - return false; - /* All inlines must be possible. */ - if (node->call_for_symbol_thunks_and_aliases - (check_callers, &has_hot_call, true)) - return false; - if (!cold && !has_hot_call) - return false; - return true; + bool has_hot_call = false; + + if (node->ultimate_alias_target () != node) + return false; + /* Already inlined? */ + if (node->global.inlined_to) + return false; + /* Does it have callers? */ + if (!node->call_for_symbol_thunks_and_aliases (has_caller_p, NULL, true)) + return false; + /* Inlining into all callers would increase size? */ + if (estimate_growth (node) > 0) + return false; + /* All inlines must be possible. */ + if (node->call_for_symbol_thunks_and_aliases (check_callers, &has_hot_call, + true)) + return false; + if (!cold && !has_hot_call) + return false; + return true; } #define RELATIVE_TIME_BENEFIT_RANGE (INT_MAX / 64) -- 2.7.4