diff options
author | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-03-30 19:42:51 +0000 |
---|---|---|
committer | jsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4> | 2011-03-30 19:42:51 +0000 |
commit | 4e775b8e0dd58553636f606e1482306b72128170 (patch) | |
tree | 8d690cb4ef7d285476b7a0854fa4a67ca23779ba /gcc/opts-common.c | |
parent | f6a02c024f1deb1fbe6f7e000e38f00da09b9732 (diff) | |
download | gcc-4e775b8e0dd58553636f606e1482306b72128170.tar.gz |
* doc/options.texi (NegativeAlias): Document.
(Alias): Mention NegativeAlias.
* opt-functions.awk: Handle NegativeAlias.
* optc-gen.awk: Disallow NegativeAlias with multiple Alias
arguments.
* opts-common.c (decode_cmdline_option): Handle CL_NEGATIVE_ALIAS.
* opts.h (CL_NEGATIVE_ALIAS): Define.
* config/rs6000/rs6000.c (rs6000_parse_yes_no_option): Remove.
(rs6000_handle_option): Don't handle OPT_mvrsave_, OPT_misel_ and
OPT_mspe_.
* config/rs6000/rs6000.opt (mvrsave=, misel=, mspe=): Replace with
Alias entries.
* config/rs6000/t-spe (MULTILIB_OPTIONS, MULTILIB_EXCEPTIONS): Use
mno-spe and mno-isel instead of mspe=no and -misel=no.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@171745 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/opts-common.c')
-rw-r--r-- | gcc/opts-common.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/opts-common.c b/gcc/opts-common.c index 345afe844d2..a88aed032d9 100644 --- a/gcc/opts-common.c +++ b/gcc/opts-common.c @@ -507,6 +507,7 @@ decode_cmdline_option (const char **argv, unsigned int lang_mask, { gcc_assert (option->alias_arg != NULL); gcc_assert (arg == NULL); + gcc_assert (!(option->flags & CL_NEGATIVE_ALIAS)); if (value) arg = option->alias_arg; else @@ -517,9 +518,13 @@ decode_cmdline_option (const char **argv, unsigned int lang_mask, { gcc_assert (value == 1); gcc_assert (arg == NULL); + gcc_assert (!(option->flags & CL_NEGATIVE_ALIAS)); arg = option->alias_arg; } + if (option->flags & CL_NEGATIVE_ALIAS) + value = !value; + opt_index = new_opt_index; option = new_option; |