x86: Support Intel AVX512 BF16
[deliverable/binutils-gdb.git] / opcodes / i386-dis-evex.h
index dec7fc4420b504b8ff75da4d94f37e87771c5b7c..9fea25defc85d5b3e09e770d91f409e32fbace4f 100644 (file)
@@ -2020,7 +2020,7 @@ static const struct dis386 evex_table[][256] = {
   /* PREFIX_EVEX_0F3852 */
   {
     { Bad_Opcode },
-    { Bad_Opcode },
+    { VEX_W_TABLE (EVEX_W_0F3852_P_1) },
     { "vpdpwssd",      { XM, Vex, EXx }, 0 },
     { "vp4dpwssd",     { XM, Vex, EXxmm }, 0 },
   },
@@ -2112,8 +2112,9 @@ static const struct dis386 evex_table[][256] = {
   /* PREFIX_EVEX_0F3872 */
   {
     { Bad_Opcode },
-    { Bad_Opcode },
+    { VEX_W_TABLE (EVEX_W_0F3872_P_1) },
     { VEX_W_TABLE (EVEX_W_0F3872_P_2) },
+    { VEX_W_TABLE (EVEX_W_0F3872_P_3) },
   },
   /* PREFIX_EVEX_0F3873 */
   {
@@ -3705,6 +3706,11 @@ static const struct dis386 evex_table[][256] = {
     { "vpmulld",       { XM, Vex, EXx }, 0 },
     { "vpmullq",       { XM, Vex, EXx }, 0 },
   },
+  /* EVEX_W_0F3852_P_1 */
+  {
+    { "vdpbf16ps",     { XM, Vex, EXx }, 0 },
+    { Bad_Opcode },
+  },
   /* EVEX_W_0F3854_P_2 */
   {
     { "vpopcntb",      { XM, EXx }, 0 },
@@ -3759,11 +3765,21 @@ static const struct dis386 evex_table[][256] = {
     { "vpshldvd",  { XM, Vex, EXx }, 0 },
     { "vpshldvq",  { XM, Vex, EXx }, 0 },
   },
+  /* EVEX_W_0F3872_P_1 */
+  {
+    { "vcvtneps2bf16%XY", { XMxmmq, EXx }, 0 },
+    { Bad_Opcode },
+  },
   /* EVEX_W_0F3872_P_2 */
   {
     { Bad_Opcode },
     { "vpshrdvw",  { XM, Vex, EXx }, 0 },
   },
+  /* EVEX_W_0F3872_P_3 */
+  {
+    { "vcvtne2ps2bf16", { XM, Vex, EXx}, 0 },
+    { Bad_Opcode },
+  },
   /* EVEX_W_0F3873_P_2 */
   {
     { "vpshrdvd",  { XM, Vex, EXx }, 0 },
This page took 0.02413 seconds and 4 git commands to generate.