| 1 | /* REG_EVEX_0F71 */ |
| 2 | { |
| 3 | { Bad_Opcode }, |
| 4 | { Bad_Opcode }, |
| 5 | { "%MEvpsrlw" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 6 | { Bad_Opcode }, |
| 7 | { "%MEvpsraw" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 8 | { Bad_Opcode }, |
| 9 | { "%MEvpsllw" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 10 | }, |
| 11 | /* REG_EVEX_0F72 */ |
| 12 | { |
| 13 | { "vpror%DQ" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 14 | { "vprol%DQ" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 15 | { VEX_W_TABLE (EVEX_W_0F72_R_2) }, |
| 16 | { Bad_Opcode }, |
| 17 | { VEX_W_TABLE (EVEX_W_0F72_R_4) }, |
| 18 | { Bad_Opcode }, |
| 19 | { VEX_W_TABLE (EVEX_W_0F72_R_6) }, |
| 20 | }, |
| 21 | /* REG_EVEX_0F73 */ |
| 22 | { |
| 23 | { Bad_Opcode }, |
| 24 | { Bad_Opcode }, |
| 25 | { VEX_W_TABLE (EVEX_W_0F73_R_2) }, |
| 26 | { "%MEvpsrldqY" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 27 | { Bad_Opcode }, |
| 28 | { Bad_Opcode }, |
| 29 | { VEX_W_TABLE (EVEX_W_0F73_R_6) }, |
| 30 | { "%MEvpslldqY" , { Vex, EXx, Ib }, PREFIX_DATA }, |
| 31 | }, |
| 32 | /* REG_EVEX_0F38C6_L_2 */ |
| 33 | { |
| 34 | { Bad_Opcode }, |
| 35 | { "vgatherpf0dp%XW" , { MVexVSIBDWpX }, PREFIX_DATA }, |
| 36 | { "vgatherpf1dp%XW" , { MVexVSIBDWpX }, PREFIX_DATA }, |
| 37 | { Bad_Opcode }, |
| 38 | { Bad_Opcode }, |
| 39 | { "vscatterpf0dp%XW" , { MVexVSIBDWpX }, PREFIX_DATA }, |
| 40 | { "vscatterpf1dp%XW" , { MVexVSIBDWpX }, PREFIX_DATA }, |
| 41 | }, |
| 42 | /* REG_EVEX_0F38C7_L_2 */ |
| 43 | { |
| 44 | { Bad_Opcode }, |
| 45 | { "vgatherpf0qp%XW" , { MVexVSIBQWpX }, PREFIX_DATA }, |
| 46 | { "vgatherpf1qp%XW" , { MVexVSIBQWpX }, PREFIX_DATA }, |
| 47 | { Bad_Opcode }, |
| 48 | { Bad_Opcode }, |
| 49 | { "vscatterpf0qp%XW" , { MVexVSIBQWpX }, PREFIX_DATA }, |
| 50 | { "vscatterpf1qp%XW" , { MVexVSIBQWpX }, PREFIX_DATA }, |
| 51 | }, |
| 52 | /* REG_EVEX_MAP4_80 */ |
| 53 | { |
| 54 | { "%NFaddA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 55 | { "%NForA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 56 | { "adcA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 57 | { "sbbA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 58 | { "%NFandA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 59 | { "%NFsubA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 60 | { "%NFxorA" , { VexGb, Eb, Ib }, NO_PREFIX }, |
| 61 | { "%NEccmp%SCA%DF" , { Eb, Ib }, NO_PREFIX }, |
| 62 | }, |
| 63 | /* REG_EVEX_MAP4_81 */ |
| 64 | { |
| 65 | { "%NFaddQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 66 | { "%NForQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 67 | { "adcQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 68 | { "sbbQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 69 | { "%NFandQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 70 | { "%NFsubQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 71 | { "%NFxorQ" , { VexGv, Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 72 | { "%NEccmp%SCQ%DF" , { Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 73 | }, |
| 74 | /* REG_EVEX_MAP4_83 */ |
| 75 | { |
| 76 | { "%NFaddQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 77 | { "%NForQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 78 | { "adcQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 79 | { "sbbQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 80 | { "%NFandQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 81 | { "%NFsubQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 82 | { "%NFxorQ" , { VexGv, Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 83 | { "%NEccmp%SCQ%DF" , { Ev, sIb }, PREFIX_NP_OR_DATA }, |
| 84 | }, |
| 85 | /* REG_EVEX_MAP4_8F */ |
| 86 | { |
| 87 | { VEX_W_TABLE (EVEX_W_MAP4_8F_R_0) }, |
| 88 | }, |
| 89 | /* REG_EVEX_MAP4_F6 */ |
| 90 | { |
| 91 | { "%NEctest%SCA%DF" , { Eb, Ib }, NO_PREFIX }, |
| 92 | { "%NEctest%SCA%DF" , { Eb, Ib }, NO_PREFIX }, |
| 93 | { "notA" , { VexGb, Eb }, NO_PREFIX }, |
| 94 | { "%NFnegA" , { VexGb, Eb }, NO_PREFIX }, |
| 95 | { "%NFmulA" , { Eb }, NO_PREFIX }, |
| 96 | { "%NFimulA" , { Eb }, NO_PREFIX }, |
| 97 | { "%NFdivA" , { Eb }, NO_PREFIX }, |
| 98 | { "%NFidivA" , { Eb }, NO_PREFIX }, |
| 99 | }, |
| 100 | /* REG_EVEX_MAP4_F7 */ |
| 101 | { |
| 102 | { "%NEctest%SCQ%DF" , { Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 103 | { "%NEctest%SCQ%DF" , { Ev, Iv }, PREFIX_NP_OR_DATA }, |
| 104 | { "notQ" , { VexGv, Ev }, PREFIX_NP_OR_DATA }, |
| 105 | { "%NFnegQ" , { VexGv, Ev }, PREFIX_NP_OR_DATA }, |
| 106 | { "%NFmulQ" , { Ev }, PREFIX_NP_OR_DATA }, |
| 107 | { "%NFimulQ" , { Ev }, PREFIX_NP_OR_DATA }, |
| 108 | { "%NFdivQ" , { Ev }, PREFIX_NP_OR_DATA }, |
| 109 | { "%NFidivQ" , { Ev }, PREFIX_NP_OR_DATA }, |
| 110 | }, |
| 111 | /* REG_EVEX_MAP4_FE */ |
| 112 | { |
| 113 | { "%NFincA" , { VexGb, Eb }, NO_PREFIX }, |
| 114 | { "%NFdecA" , { VexGb, Eb }, NO_PREFIX }, |
| 115 | }, |
| 116 | /* REG_EVEX_MAP4_FF */ |
| 117 | { |
| 118 | { "%NFincQ" , { VexGv, Ev }, PREFIX_NP_OR_DATA }, |
| 119 | { "%NFdecQ" , { VexGv, Ev }, PREFIX_NP_OR_DATA }, |
| 120 | { Bad_Opcode }, |
| 121 | { Bad_Opcode }, |
| 122 | { Bad_Opcode }, |
| 123 | { Bad_Opcode }, |
| 124 | { VEX_W_TABLE (EVEX_W_MAP4_FF_R_6) }, |
| 125 | }, |
| 126 | |