diff options
author | Cui, Lili <lili.cui@intel.com> | 2024-04-02 14:40:18 +0800 |
---|---|---|
committer | Cui, Lili <lili.cui@intel.com> | 2024-04-03 09:50:00 +0800 |
commit | 8963a60d7b7eb59b17e529d0c466427ea620eded (patch) | |
tree | 37a05af2e206fa46c515fa4463f467e3497f07a0 /gas/config | |
parent | a0635511a8a4227af7f88307c24eb77494f69179 (diff) | |
download | binutils-8963a60d7b7eb59b17e529d0c466427ea620eded.zip binutils-8963a60d7b7eb59b17e529d0c466427ea620eded.tar.gz binutils-8963a60d7b7eb59b17e529d0c466427ea620eded.tar.bz2 |
x86/APX: Remove KEYLOCKER and SHA promotions from EVEX MAP4
APX spec removed KEYLOCKER and SHA promotions from EVEX MAP4.
https://www.intel.com/content/www/us/en/developer/articles/technical/advanced-performance-extensions-apx.html
gas/ChangeLog:
* NEWS: Mention that remove KEYLOCKER and SHA promotions from EVEX
* MAP4.
* config/tc-i386.c (process_operands): Removed special handling of
* KEYLOCKER and SHA.
* testsuite/gas/i386/x86-64-apx-egpr-promote-inval.l: Removed KEYLOCKER
* and SHA instructions.
* testsuite/gas/i386/x86-64-apx-egpr-promote-inval.s: Ditto.
* testsuite/gas/i386/x86-64-apx-evex-promoted-bad.d: Ditto.
* testsuite/gas/i386/x86-64-apx-evex-promoted-bad.s: Ditto.
* testsuite/gas/i386/x86-64-apx-evex-promoted-intel.d: Ditto.
* testsuite/gas/i386/x86-64-apx-evex-promoted-wig.d: Ditto.
* testsuite/gas/i386/x86-64-apx-evex-promoted.d: Ditto.
* testsuite/gas/i386/x86-64-apx-evex-promoted.s: Ditto.
opcodes/ChangeLog:
* i386-dis-evex-prefix.h: Removed KEYLOCKER and SHA instructions.
* i386-dis-evex.h: Ditto.
* i386-opc.tbl: Ditto.
* i386-dis.c (print_vector_reg): Removed special handling of KEYLOCKER
* and SHA.
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-i386.c | 7 |
1 files changed, 0 insertions, 7 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c index 7467cef..b022efa 100644 --- a/gas/config/tc-i386.c +++ b/gas/config/tc-i386.c @@ -10015,13 +10015,6 @@ process_operands (void) for (unsigned int j = 0; j < i.operands; j++) if (i.types[j].bitfield.instance != InstanceNone) i.reg_operands--; - else if (i.tm.opcode_space == SPACE_EVEXMAP4 - && i.types[j].bitfield.class == RegSIMD - && (i.op[j].regs->reg_flags & RegVRex) - && !dot_insn ()) - /* Just raise an error, but continue processing. */ - as_bad (_("`%s%s' cannot be used with `%s'"), - register_prefix, i.op[j].regs->reg_name, insn_name (&i.tm)); if (i.tm.opcode_modifier.sse2avx) { |