Hi. Option mdirect-move should be Deprecated, that means option value is ignored and user can't influence rs6000_isa_flags.
Patch can bootstrap on ppc64le-redhat-linux (gcc110 and gcc112) and survives regression tests. Ready to be installed? Martin gcc/ChangeLog: 2018-08-31 Martin Liska <mli...@suse.cz> PR target/87164 * config/rs6000/rs6000.opt: Mark the option as Deprecated. * optc-gen.awk: Allow 'Var' for Deprecated options in order to generate a MASK value. --- gcc/config/rs6000/rs6000.opt | 3 +-- gcc/optc-gen.awk | 2 -- 2 files changed, 1 insertion(+), 4 deletions(-)
diff --git a/gcc/config/rs6000/rs6000.opt b/gcc/config/rs6000/rs6000.opt index 0abeeafc646..138ce26d03f 100644 --- a/gcc/config/rs6000/rs6000.opt +++ b/gcc/config/rs6000/rs6000.opt @@ -483,9 +483,8 @@ mcrypto Target Report Mask(CRYPTO) Var(rs6000_isa_flags) Use ISA 2.07 Category:Vector.AES and Category:Vector.SHA2 instructions. -; We can't use Ignore flag because DIRECT_MOVE mask is still used. mdirect-move -Target Undocumented Mask(DIRECT_MOVE) Var(rs6000_isa_flags) Warn(%qs is deprecated) +Target Undocumented Mask(DIRECT_MOVE) Var(rs6000_isa_flags) Deprecated mhtm Target Report Mask(HTM) Var(rs6000_isa_flags) diff --git a/gcc/optc-gen.awk b/gcc/optc-gen.awk index 9a79bb86243..3668b3ef0e4 100644 --- a/gcc/optc-gen.awk +++ b/gcc/optc-gen.awk @@ -336,8 +336,6 @@ for (i = 0; i < n_opts; i++) { alias_data = "NULL, NULL, OPT_SPECIAL_deprecated" if (warn_message != "NULL") print "#error Deprecated option with Warn" - if (var_name(flags[i]) != "") - print "#error Deprecated option with Var" if (flag_set_p("Report", flags[i])) print "#error Deprecated option with Report" }