aboutsummaryrefslogtreecommitdiff
path: root/gcc/opts.c
diff options
context:
space:
mode:
authorJan Hubicka <hubicka@gcc.gnu.org>2019-10-02 16:01:47 +0000
committerJan Hubicka <hubicka@gcc.gnu.org>2019-10-02 16:01:47 +0000
commit562d1e9556777988ae46c5d1357af2636bc272ea (patch)
treeb07b5dedff4846b2076284b72777f8790ef92e0a /gcc/opts.c
parent352d2690f1eb7268cc21de643759e2f666119e9f (diff)
downloadgcc-562d1e9556777988ae46c5d1357af2636bc272ea.zip
gcc-562d1e9556777988ae46c5d1357af2636bc272ea.tar.gz
gcc-562d1e9556777988ae46c5d1357af2636bc272ea.tar.bz2
cif-code.def (MAX_INLINE_INSNS_SINGLE_O2_LIMIT, [...]): New.
* cif-code.def (MAX_INLINE_INSNS_SINGLE_O2_LIMIT, MAX_INLINE_INSNS_AUTO_O2_LIMIT): New. * ipa-inline.c (inline_insns_single, inline_insns_auto): New functions. (can_inline_edge_by_limits_p): Use it. (big_speedup_p): Use PARAM_INLINE_MIN_SPEEDUP_O2. (want_inline_small_function_p): Use O2 bounds. (edge_badness): LIkewise. * opts.c (default_options): Add OPT_finline_functions. * params.def (PARAM_INLINE_MIN_SPEEDUP_O2, PARAM_MAX_INLINE_INSNS_SINGLE_O2, PARAM_MAX_INLINE_INSNS_AUTO_O2): New parameters. * g++.dg/tree-ssa/pr53844.C: Add -fno-inline-functions --param max-inline-insns-single-O2=200. * gcc.c-torture/execute/builtins/builtins.exp: Add -fno-inline-functions to additional_flags. * gcc.dg/ipa/inline-7.c: Add -fno-inline-functions. * gcc.dg/optimize-bswapsi-5.c: Add -fno-inline-functions. * gcc.dg/tree-ssa/ssa-thread-12.c: Add --param early-inlining-insns-O2=14 -fno-inline-functions; revert previous change. * gcc.dg/winline-3.c: Use --param max-inline-insns-single-O2=1 --param inline-min-speedup-O2=100 instead of --param max-inline-insns-single=1 --param inline-min-speedup=100 * invoke.texi (-finline-functions): Update documentation. (max-inline-insns-single-O2, max-inline-insns-auto-O2, inline-min-speedup-O2): Document. (early-inlining-insns-O2): Simplify docs. From-SVN: r276469
Diffstat (limited to 'gcc/opts.c')
-rw-r--r--gcc/opts.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/gcc/opts.c b/gcc/opts.c
index efd75aa..2df0351 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -527,6 +527,7 @@ static const struct default_options default_options_table[] =
{ OPT_LEVELS_2_PLUS, OPT_ftree_tail_merge, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_ftree_vrp, NULL, 1 },
{ OPT_LEVELS_2_PLUS, OPT_fvect_cost_model_, NULL, VECT_COST_MODEL_CHEAP },
+ { OPT_LEVELS_2_PLUS, OPT_finline_functions, NULL, 1 },
/* -O2 and -Os optimizations. */
{ OPT_LEVELS_2_PLUS_SPEED_ONLY, OPT_falign_functions, NULL, 1 },
@@ -542,9 +543,6 @@ static const struct default_options default_options_table[] =
#endif
/* -O3 and -Os optimizations. */
- /* Inlining of functions reducing size is a good idea with -Os
- regardless of them being declared inline. */
- { OPT_LEVELS_3_PLUS_AND_SIZE, OPT_finline_functions, NULL, 1 },
/* -O3 optimizations. */
{ OPT_LEVELS_3_PLUS, OPT_fgcse_after_reload, NULL, 1 },