summaryrefslogtreecommitdiff
path: root/gcc/opts-common.c
diff options
context:
space:
mode:
authorjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-30 19:42:51 +0000
committerjsm28 <jsm28@138bc75d-0d04-0410-961f-82ee72b054a4>2011-03-30 19:42:51 +0000
commit4e775b8e0dd58553636f606e1482306b72128170 (patch)
tree8d690cb4ef7d285476b7a0854fa4a67ca23779ba /gcc/opts-common.c
parentf6a02c024f1deb1fbe6f7e000e38f00da09b9732 (diff)
downloadgcc-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.c5
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;