*** ../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 } },