diff options
author | Martin Liska <mliska@suse.cz> | 2017-06-28 14:45:59 +0200 |
---|---|---|
committer | Martin Liska <marxin@gcc.gnu.org> | 2017-06-28 12:45:59 +0000 |
commit | 6301008994fa6370261a8c190e4cdf0a27021e63 (patch) | |
tree | 95e68b86727f13f74cf2fc3286161cf1780cce3f /gcc/opt-functions.awk | |
parent | b1cac008e2629fc225a6ed6a6e748e6caec4dc26 (diff) | |
download | gcc-6301008994fa6370261a8c190e4cdf0a27021e63.zip gcc-6301008994fa6370261a8c190e4cdf0a27021e63.tar.gz gcc-6301008994fa6370261a8c190e4cdf0a27021e63.tar.bz2 |
Introduce IntegerRange for options (PR driver/79659).
2017-06-28 Martin Liska <mliska@suse.cz>
PR driver/79659
* common.opt: Add IntegerRange to various options.
* opt-functions.awk (integer_range_info): New function.
* optc-gen.awk: Add integer_range_info to cl_options struct.
* opts-common.c (decode_cmdline_option): Handle
CL_ERR_INT_RANGE_ARG.
(cmdline_handle_error): Likewise.
* opts.c (print_filtered_help): Show valid interval in
when --help is provided.
* opts.h (struct cl_option): Add range_min and range_max fields.
* config/i386/i386.opt: Add IntegerRange for -mbranch-cost.
2017-06-28 Martin Liska <mliska@suse.cz>
PR driver/79659
* c.opt: Add IntegerRange to various options.
2017-06-28 Martin Liska <mliska@suse.cz>
PR driver/79659
* g++.dg/opt/pr79659.C: New test.
From-SVN: r249734
Diffstat (limited to 'gcc/opt-functions.awk')
-rw-r--r-- | gcc/opt-functions.awk | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/opt-functions.awk b/gcc/opt-functions.awk index b367d3a..ad0b52c 100644 --- a/gcc/opt-functions.awk +++ b/gcc/opt-functions.awk @@ -314,6 +314,17 @@ function search_var_name(name, opt_numbers, opts, flags, n_opts) return "" } +function integer_range_info(range_option) +{ + if (range_option != "") { + start = nth_arg(0, range_option); + end = nth_arg(1, range_option); + return start ", " end + } + else + return "-1, -1" +} + # Handle LangEnabledBy(ENABLED_BY_LANGS, ENABLEDBY_NAME, ENABLEDBY_POSARG, # ENABLEDBY_NEGARG). This function does not return anything. function lang_enabled_by(enabledby_langs, enabledby_name, enabledby_posarg, enabledby_negarg) |