Fix disasm of vmovsd/vmovss with different length values.
[deliverable/binutils-gdb.git] / opcodes / i386-dis-evex.h
index 1a897762e0b1930dc9508e2198d19d628b25631c..524e7c5c364bd470419b1e29f20786d90a40018f 100644 (file)
@@ -655,8 +655,8 @@ static const struct dis386 evex_table[][256] = {
     { PREFIX_TABLE (PREFIX_EVEX_0F3A3B) },
     { Bad_Opcode },
     { Bad_Opcode },
-    { PREFIX_TABLE (PREFIX_EVEX_0F3A3E) },
-    { PREFIX_TABLE (PREFIX_EVEX_0F3A3F) },
+    { Bad_Opcode },
+    { Bad_Opcode },
     /* 40 */
     { Bad_Opcode },
     { Bad_Opcode },
@@ -2182,18 +2182,6 @@ static const struct dis386 evex_table[][256] = {
     { Bad_Opcode },
     { VEX_W_TABLE (EVEX_W_0F3A3B_P_2) },
   },
-  /* PREFIX_EVEX_0F3A3E */
-  {
-    { Bad_Opcode },
-    { Bad_Opcode },
-    { "vpcmpuW",       { XMask, Vex, EXx, Ib } },
-  },
-  /* PREFIX_EVEX_0F3A3F */
-  {
-    { Bad_Opcode },
-    { Bad_Opcode },
-    { "vpcmpW",        { XMask, Vex, EXx, Ib } },
-  },
   /* PREFIX_EVEX_0F3A43 */
   {
     { Bad_Opcode },
@@ -2225,7 +2213,7 @@ static const struct dis386 evex_table[][256] = {
   },
   /* EVEX_W_0F10_P_1_M_1 */
   {
-    { "vmovss",        { XMScalar, VexScalar, EXx } },
+    { "vmovss",        { XMScalar, VexScalar, EXxmm_md } },
   },
   /* EVEX_W_0F10_P_2 */
   {
@@ -2240,7 +2228,7 @@ static const struct dis386 evex_table[][256] = {
   /* EVEX_W_0F10_P_3_M_1 */
   {
     { Bad_Opcode },
-    { "vmovsd",        { XMScalar, VexScalar, EXx } },
+    { "vmovsd",        { XMScalar, VexScalar, EXxmm_mq } },
   },
   /* EVEX_W_0F11_P_0 */
   {
@@ -2918,42 +2906,42 @@ static const struct dis386 evex_table[][256] = {
   },
   /* EVEX_W_0F3891_P_2 */
   {
-    { "vpgatherqd",    { XMxmmq, MVexVSIBQWpX } },
+    { "vpgatherqd",    { XMxmmq, MVexVSIBQDWpX } },
     { "vpgatherqq",    { XM, MVexVSIBQWpX } },
   },
   /* EVEX_W_0F3893_P_2 */
   {
-    { "vgatherqps",    { XMxmmq, MVexVSIBQWpX } },
+    { "vgatherqps",    { XMxmmq, MVexVSIBQDWpX } },
     { "vgatherqpd",    { XM, MVexVSIBQWpX } },
   },
   /* EVEX_W_0F38A1_P_2 */
   {
-    { "vpscatterqd",   { MVexVSIBQWpX, XMxmmq } },
+    { "vpscatterqd",   { MVexVSIBQDWpX, XMxmmq } },
     { "vpscatterqq",   { MVexVSIBQWpX, XM } },
   },
   /* EVEX_W_0F38A3_P_2 */
   {
-    { "vscatterqps",   { MVexVSIBQWpX, XMxmmq } },
+    { "vscatterqps",   { MVexVSIBQDWpX, XMxmmq } },
     { "vscatterqpd",   { MVexVSIBQWpX, XM } },
   },
   /* EVEX_W_0F38C7_R_1_P_2 */
   {
-    { "vgatherpf0qps",  { MVexVSIBDWpX } },
+    { "vgatherpf0qps",  { MVexVSIBDQWpX } },
     { "vgatherpf0qpd",  { MVexVSIBQWpX } },
   },
   /* EVEX_W_0F38C7_R_2_P_2 */
   {
-    { "vgatherpf1qps",  { MVexVSIBDWpX } },
+    { "vgatherpf1qps",  { MVexVSIBDQWpX } },
     { "vgatherpf1qpd",  { MVexVSIBQWpX } },
   },
   /* EVEX_W_0F38C7_R_5_P_2 */
   {
-    { "vscatterpf0qps",  { MVexVSIBDWpX } },
+    { "vscatterpf0qps",  { MVexVSIBDQWpX } },
     { "vscatterpf0qpd",  { MVexVSIBQWpX } },
   },
   /* EVEX_W_0F38C7_R_6_P_2 */
   {
-    { "vscatterpf1qps",  { MVexVSIBDWpX } },
+    { "vscatterpf1qps",  { MVexVSIBDQWpX } },
     { "vscatterpf1qpd",  { MVexVSIBQWpX } },
   },
 
This page took 0.025544 seconds and 4 git commands to generate.