aboutsummaryrefslogtreecommitdiff
path: root/opcodes/i386-dis-evex.h
diff options
context:
space:
mode:
authorIgor Tsimbalist <igor.v.tsimbalist@intel.com>2016-11-02 12:31:25 -0700
committerH.J. Lu <hjl.tools@gmail.com>2016-11-02 12:31:25 -0700
commit47acf0bd9faef8634d242e19ec3b7f784d10ba76 (patch)
treed189fb03e209c2e35158d7bdc483f2fdfb67f239 /opcodes/i386-dis-evex.h
parent920d2ddccb72a366140ed28283165b274f7a9045 (diff)
downloadgdb-47acf0bd9faef8634d242e19ec3b7f784d10ba76.zip
gdb-47acf0bd9faef8634d242e19ec3b7f784d10ba76.tar.gz
gdb-47acf0bd9faef8634d242e19ec3b7f784d10ba76.tar.bz2
Enable Intel AVX512_4VNNIW instructions
gas/ * config/tc-i386.c: (cpu_arch) Add .avx512_4vnniw. (cpu_noarch): Add noavx512_4vnniw. * doc/c-i386.texi: Document avx512_4vnniw, noavx512_4vnniw. * testsuite/gas/i386/i386.exp: Run AVX512_4VNNIW tests. * testsuite/gas/i386/avx512_4vnniwd_vl-intel.d: New test. * testsuite/gas/i386/avx512_4vnniwd_vl.d: Ditto. * testsuite/gas/i386/avx512_4vnniwd_vl.s: Ditto. * testsuite/gas/i386/avx512_4vnniwd-intel.d: Ditto. * testsuite/gas/i386/avx512_4vnniwd.d: Ditto. * testsuite/gas/i386/avx512_4vnniwd.s: Ditto. * testsuite/gas/i386/x86-64-avx512_4vnniwd_vl-intel.d: Ditto. * testsuite/gas/i386/x86-64-avx512_4vnniwd_vl.d: Ditto. * testsuite/gas/i386/x86-64-avx512_4vnniwd_vl.s: Ditto. * testsuite/gas/i386/x86-64-avx512_4vnniwd-intel.d: Ditto. * testsuite/gas/i386/x86-64-avx512_4vnniwd.d: Ditto. * testsuite/gas/i386/x86-64-avx512_4vnniwd.s: Ditto. opcodes/ * i386-dis.c (enum): Add PREFIX_EVEX_0F3852, PREFIX_EVEX_0F3853. * i386-dis-evex.h (evex_table): Updated. * i386-gen.c (cpu_flag_init): Add CPU_AVX512_4VNNIW_FLAGS, CPU_ANY_AVX512_4VNNIW_FLAGS. Update CPU_ANY_AVX512F_FLAGS. (cpu_flags): Add CpuAVX512_4VNNIW. * i386-opc.h (enum): (AVX512_4VNNIW): New. (i386_cpu_flags): Add cpuavx512_4vnniw. * i386-opc.tbl: Add Intel AVX512_4VNNIW instructions. * i386-init.h: Regenerate. * i386-tbl.h: Ditto.
Diffstat (limited to 'opcodes/i386-dis-evex.h')
-rw-r--r--opcodes/i386-dis-evex.h18
1 files changed, 16 insertions, 2 deletions
diff --git a/opcodes/i386-dis-evex.h b/opcodes/i386-dis-evex.h
index bc304c8..0f8327b 100644
--- a/opcodes/i386-dis-evex.h
+++ b/opcodes/i386-dis-evex.h
@@ -387,8 +387,8 @@ static const struct dis386 evex_table[][256] = {
/* 50 */
{ Bad_Opcode },
{ Bad_Opcode },
- { Bad_Opcode },
- { Bad_Opcode },
+ { PREFIX_TABLE (PREFIX_EVEX_0F3852) },
+ { PREFIX_TABLE (PREFIX_EVEX_0F3853) },
{ Bad_Opcode },
{ Bad_Opcode },
{ Bad_Opcode },
@@ -2005,6 +2005,20 @@ static const struct dis386 evex_table[][256] = {
{ Bad_Opcode },
{ "vrsqrt14s%XW", { XMScalar, VexScalar, EXxmm_mdq }, 0 },
},
+ /* PREFIX_EVEX_0F3852 */
+ {
+ { Bad_Opcode },
+ { Bad_Opcode },
+ { Bad_Opcode },
+ { "vp4dpwssd", { XM, Vex, EXxmm }, 0 },
+ },
+ /* PREFIX_EVEX_0F3853 */
+ {
+ { Bad_Opcode },
+ { Bad_Opcode },
+ { Bad_Opcode },
+ { "vp4dpwssds", { XM, Vex, EXxmm }, 0 },
+ },
/* PREFIX_EVEX_0F3858 */
{
{ Bad_Opcode },