diff options
author | Martin Liska <mliska@suse.cz> | 2020-01-09 12:29:23 +0100 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2020-01-09 11:29:23 +0000 |
commit | fdfd7f53ba8f363c31a1cbb5310f92ecfc52cbfe (patch) | |
tree | 93fae6aadf99180ec22f987d23046a1809c59d0e /gcc/ipa-inline.c | |
parent | 00294b189cf3285b17b4ca4135341e2614783553 (diff) | |
download | gcc-fdfd7f53ba8f363c31a1cbb5310f92ecfc52cbfe.zip gcc-fdfd7f53ba8f363c31a1cbb5310f92ecfc52cbfe.tar.gz gcc-fdfd7f53ba8f363c31a1cbb5310f92ecfc52cbfe.tar.bz2 |
Add Optimization for various IPA parameters.
2020-01-09 Martin Liska <mliska@suse.cz>
* auto-profile.c (auto_profile): Use opt_for_fn
for a parameter.
* ipa-cp.c (ipcp_lattice::add_value): Likewise.
(propagate_vals_across_arith_jfunc): Likewise.
(hint_time_bonus): Likewise.
(incorporate_penalties): Likewise.
(good_cloning_opportunity_p): Likewise.
(perform_estimation_of_a_value): Likewise.
(estimate_local_effects): Likewise.
(ipcp_propagate_stage): Likewise.
* ipa-fnsummary.c (decompose_param_expr): Likewise.
(set_switch_stmt_execution_predicate): Likewise.
(analyze_function_body): Likewise.
* ipa-inline-analysis.c (offline_size): Likewise.
* ipa-inline.c (early_inliner): Likewise.
* ipa-prop.c (ipa_analyze_node): Likewise.
(ipcp_transform_function): Likewise.
* ipa-sra.c (process_scan_results): Likewise.
(ipa_sra_summarize_function): Likewise.
* params.opt: Rename ipcp-unit-growth to
ipa-cp-unit-growth. Add Optimization for various
IPA-related parameters.
From-SVN: r280040
Diffstat (limited to 'gcc/ipa-inline.c')
-rw-r--r-- | gcc/ipa-inline.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c index 2a3f31e..4228e17 100644 --- a/gcc/ipa-inline.c +++ b/gcc/ipa-inline.c @@ -2966,7 +2966,8 @@ early_inliner (function *fun) } /* We iterate incremental inlining to get trivial cases of indirect inlining. */ - while (iterations < param_early_inliner_max_iterations + while (iterations < opt_for_fn (node->decl, + param_early_inliner_max_iterations) && early_inline_small_functions (node)) { timevar_push (TV_INTEGRATION); @@ -2985,7 +2986,8 @@ early_inliner (function *fun) es->call_stmt_time = estimate_num_insns (edge->call_stmt, &eni_time_weights); } - if (iterations < param_early_inliner_max_iterations - 1) + if (iterations < opt_for_fn (node->decl, + param_early_inliner_max_iterations) - 1) ipa_update_overall_fn_summary (node); timevar_pop (TV_INTEGRATION); iterations++; |