aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-inline.c
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2020-01-09 12:29:23 +0100
committerMartin Liska <marxin@gcc.gnu.org>2020-01-09 11:29:23 +0000
commitfdfd7f53ba8f363c31a1cbb5310f92ecfc52cbfe (patch)
tree93fae6aadf99180ec22f987d23046a1809c59d0e /gcc/ipa-inline.c
parent00294b189cf3285b17b4ca4135341e2614783553 (diff)
downloadgcc-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.c6
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++;