mirror of
https://sourceware.org/git/binutils-gdb.git
synced 2024-12-27 04:52:05 +08:00
f7cfcddd16
When no AVX512-specific functionality is in use, the disassembly of AVX512VL insns is indistinguishable from their AVX counterparts (if such exist). Emit the {evex} pseudo-prefix in such cases. Where applicable drop stray uses of PREFIX_OPCODE from table entries.
52 lines
1.5 KiB
C
52 lines
1.5 KiB
C
/* REG_EVEX_0F71 */
|
|
{
|
|
{ Bad_Opcode },
|
|
{ Bad_Opcode },
|
|
{ "%XEvpsrlw", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
{ Bad_Opcode },
|
|
{ "%XEvpsraw", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
{ Bad_Opcode },
|
|
{ "%XEvpsllw", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
},
|
|
/* REG_EVEX_0F72 */
|
|
{
|
|
{ "vpror%DQ", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
{ "vprol%DQ", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
{ VEX_W_TABLE (EVEX_W_0F72_R_2) },
|
|
{ Bad_Opcode },
|
|
{ "%XEvpsra%DQ", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
{ Bad_Opcode },
|
|
{ VEX_W_TABLE (EVEX_W_0F72_R_6) },
|
|
},
|
|
/* REG_EVEX_0F73 */
|
|
{
|
|
{ Bad_Opcode },
|
|
{ Bad_Opcode },
|
|
{ VEX_W_TABLE (EVEX_W_0F73_R_2) },
|
|
{ "%XEvpsrldq", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
{ Bad_Opcode },
|
|
{ Bad_Opcode },
|
|
{ VEX_W_TABLE (EVEX_W_0F73_R_6) },
|
|
{ "%XEvpslldq", { Vex, EXx, Ib }, PREFIX_DATA },
|
|
},
|
|
/* REG_EVEX_0F38C6_M_0_L_2 */
|
|
{
|
|
{ Bad_Opcode },
|
|
{ "vgatherpf0dp%XW", { MVexVSIBDWpX }, PREFIX_DATA },
|
|
{ "vgatherpf1dp%XW", { MVexVSIBDWpX }, PREFIX_DATA },
|
|
{ Bad_Opcode },
|
|
{ Bad_Opcode },
|
|
{ "vscatterpf0dp%XW", { MVexVSIBDWpX }, PREFIX_DATA },
|
|
{ "vscatterpf1dp%XW", { MVexVSIBDWpX }, PREFIX_DATA },
|
|
},
|
|
/* REG_EVEX_0F38C7_M_0_L_2_W_0 */
|
|
{
|
|
{ Bad_Opcode },
|
|
{ "vgatherpf0qp%XW", { MVexVSIBQWpX }, PREFIX_DATA },
|
|
{ "vgatherpf1qp%XW", { MVexVSIBQWpX }, PREFIX_DATA },
|
|
{ Bad_Opcode },
|
|
{ Bad_Opcode },
|
|
{ "vscatterpf0qp%XW", { MVexVSIBQWpX }, PREFIX_DATA },
|
|
{ "vscatterpf1qp%XW", { MVexVSIBQWpX }, PREFIX_DATA },
|
|
},
|