Blob Blame History Raw
*** ../binutils-2.22.52.0.1.orig/opcodes/i386-dis.c	2012-09-04 16:54:43.507485429 +0100
--- opcodes/i386-dis.c	2012-09-04 16:56:32.917480577 +0100
*************** enum
*** 1318,1323 ****
--- 1318,1331 ----
    VEX_LEN_0F3A7F_P_2,
    VEX_LEN_0F3ADF_P_2,
    VEX_LEN_0F3AF0_P_3,
+   VEX_LEN_0FXOP_08_CC,
+   VEX_LEN_0FXOP_08_CD,
+   VEX_LEN_0FXOP_08_CE,
+   VEX_LEN_0FXOP_08_CF,
+   VEX_LEN_0FXOP_08_EC,
+   VEX_LEN_0FXOP_08_ED,
+   VEX_LEN_0FXOP_08_EE,
+   VEX_LEN_0FXOP_08_EF,
    VEX_LEN_0FXOP_09_80,
    VEX_LEN_0FXOP_09_81
  };
*************** static const struct dis386 xop_table[][2
*** 6885,6894 ****
      { Bad_Opcode },
      { Bad_Opcode },
      { Bad_Opcode },
!     { "vpcomb", 	{ XM, Vex128, EXx, Ib } },
!     { "vpcomw", 	{ XM, Vex128, EXx, Ib } },
!     { "vpcomd", 	{ XM, Vex128, EXx, Ib } },
!     { "vpcomq", 	{ XM, Vex128, EXx, Ib } },
      /* d0 */
      { Bad_Opcode },
      { Bad_Opcode },
--- 6893,6902 ----
      { Bad_Opcode },
      { Bad_Opcode },
      { Bad_Opcode },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_CC) },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_CD) },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_CE) },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_CF) },
      /* d0 */
      { Bad_Opcode },
      { Bad_Opcode },
*************** static const struct dis386 xop_table[][2
*** 6921,6930 ****
      { Bad_Opcode },
      { Bad_Opcode },
      { Bad_Opcode },
!     { "vpcomub",	{ XM, Vex128, EXx, Ib } },
!     { "vpcomuw",	{ XM, Vex128, EXx, Ib } },
!     { "vpcomud",	{ XM, Vex128, EXx, Ib } },
!     { "vpcomuq",	{ XM, Vex128, EXx, Ib } },
      /* f0 */
      { Bad_Opcode },
      { Bad_Opcode },
--- 6929,6938 ----
      { Bad_Opcode },
      { Bad_Opcode },
      { Bad_Opcode },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_EC) },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_ED) },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_EE) },
!     { VEX_LEN_TABLE (VEX_LEN_0FXOP_08_EF) },
      /* f0 */
      { Bad_Opcode },
      { Bad_Opcode },
*************** static const struct dis386 vex_len_table
*** 8993,8998 ****
--- 9001,9046 ----
      { "rorxS",		{ Gdq, Edq, Ib } },
    },
  
+   /* VEX_LEN_0FXOP_08_CC */
+   {
+      { "vpcomb",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_CD */
+   {
+      { "vpcomw",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_CE */
+   {
+      { "vpcomd",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_CF */
+   {
+      { "vpcomq",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_EC */
+   {
+      { "vpcomub",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_ED */
+   {
+      { "vpcomuw",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_EE */
+   {
+      { "vpcomud",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
+   /* VEX_LEN_0FXOP_08_EF */
+   {
+      { "vpcomuq",	{ XM, Vex128, EXx, Ib } },
+   },
+ 
    /* VEX_LEN_0FXOP_09_80 */
    {
      { "vfrczps",	{ XM, EXxmm } },