aboutsummaryrefslogtreecommitdiff
path: root/gcc/ipa-inline.c
diff options
context:
space:
mode:
authorMartin Liska <mliska@suse.cz>2019-11-14 13:08:57 +0100
committerMartin Liska <marxin@gcc.gnu.org>2019-11-14 12:08:57 +0000
commit78a502caec5371cf5d107c3a6cf944bac0aaeb7c (patch)
tree7f84b73d1a7e066bac0f6790400d858ad8b34f20 /gcc/ipa-inline.c
parent4c4503bf8c538bdbd8db8940aae3d7000885776e (diff)
downloadgcc-78a502caec5371cf5d107c3a6cf944bac0aaeb7c.zip
gcc-78a502caec5371cf5d107c3a6cf944bac0aaeb7c.tar.gz
gcc-78a502caec5371cf5d107c3a6cf944bac0aaeb7c.tar.bz2
Add Optimization keyword for param_max_inline_insns_auto param.
2019-11-14 Martin Liska <mliska@suse.cz> * ipa-cp.c (devirtualization_time_bonus): Use opt_for_fn of a callee to get value of the param. * ipa-inline.c (inline_insns_auto): Use proper opt_for_fn. * opts.c (maybe_default_option): Do not overwrite param value if optimization level does not match. Note that params usually have default value set via Init() keyword. * params.opt: Remove -param=max-inline-insns-auto-O2. * cif-code.def (MAX_INLINE_INSNS_AUTO_O2_LIMIT): Remove. * doc/invoke.texi: Remove documentation of max-inline-insns-auto-O2. 2019-11-14 Martin Liska <mliska@suse.cz> * c-c++-common/asan/memcmp-1.c: Update expected backtrace. From-SVN: r278218
Diffstat (limited to 'gcc/ipa-inline.c')
-rw-r--r--gcc/ipa-inline.c18
1 files changed, 4 insertions, 14 deletions
diff --git a/gcc/ipa-inline.c b/gcc/ipa-inline.c
index 78ec0ec..effb597 100644
--- a/gcc/ipa-inline.c
+++ b/gcc/ipa-inline.c
@@ -417,20 +417,10 @@ inline_insns_single (cgraph_node *n, bool hint)
static int
inline_insns_auto (cgraph_node *n, bool hint)
{
- if (opt_for_fn (n->decl, optimize) >= 3)
- {
- if (hint)
- return param_max_inline_insns_auto
- * param_inline_heuristics_hint_percent / 100;
- return param_max_inline_insns_auto;
- }
- else
- {
- if (hint)
- return param_max_inline_insns_auto_o2
- * param_inline_heuristics_hint_percent_o2 / 100;
- return param_max_inline_insns_auto_o2;
- }
+ int max_inline_insns_auto = opt_for_fn (n->decl, param_max_inline_insns_auto);
+ if (hint)
+ return max_inline_insns_auto * param_inline_heuristics_hint_percent / 100;
+ return max_inline_insns_auto;
}
/* Decide if we can inline the edge and possibly update