summaryrefslogtreecommitdiff
path: root/gcc/opts.c
diff options
context:
space:
mode:
authorneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-22 20:21:35 +0000
committerneil <neil@138bc75d-0d04-0410-961f-82ee72b054a4>2003-06-22 20:21:35 +0000
commit39470ac3d71a90889a3d4105a1a1ad7dc8380169 (patch)
tree4843b7e9c3d4f090f620260883d5ea7c06a635d5 /gcc/opts.c
parenteae50d4c0ac7af7f87566fe2a97042f301268ad0 (diff)
downloadgcc-39470ac3d71a90889a3d4105a1a1ad7dc8380169.tar.gz
* common.opt: Add -finline-limit.
* opts.c (common_handle_options): Handle it. * opts.sh: Temporary kludge for -finline-limit. * toplev.c (decode_f_option, independent_decode_option): Die. (parse_options_and_default_flags): No independent_decode_option. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@68348 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/opts.c')
-rw-r--r--gcc/opts.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/gcc/opts.c b/gcc/opts.c
index 2ec9de5b6aa..2712346149f 100644
--- a/gcc/opts.c
+++ b/gcc/opts.c
@@ -734,6 +734,21 @@ common_handle_option (size_t scode, const char *arg,
flag_inline_functions = value;
break;
+ case OPT_finline_limit_:
+ case OPT_finline_limit_eq:
+ set_param_value ("max-inline-insns", value);
+ set_param_value ("max-inline-insns-single", value / 2);
+ set_param_value ("max-inline-insns-auto", value / 2);
+ set_param_value ("max-inline-insns-rtl", value);
+ if (value / 4 < MIN_INLINE_INSNS)
+ {
+ if (value / 4 > 10)
+ set_param_value ("min-inline-insns", value / 4);
+ else
+ set_param_value ("min-inline-insns", 10);
+ }
+ break;
+
case OPT_finstrument_functions:
flag_instrument_function_entry_exit = value;
break;