aboutsummaryrefslogtreecommitdiff
path: root/opcodes/i386-dis-evex.h
diff options
context:
space:
mode:
Diffstat (limited to 'opcodes/i386-dis-evex.h')
-rw-r--r--opcodes/i386-dis-evex.h19
1 files changed, 15 insertions, 4 deletions
diff --git a/opcodes/i386-dis-evex.h b/opcodes/i386-dis-evex.h
index 1f88987..383c213 100644
--- a/opcodes/i386-dis-evex.h
+++ b/opcodes/i386-dis-evex.h
@@ -442,7 +442,7 @@ static const struct dis386 evex_table[][256] = {
{ Bad_Opcode },
{ Bad_Opcode },
{ Bad_Opcode },
- { Bad_Opcode },
+ { PREFIX_TABLE (PREFIX_EVEX_0F3883) },
{ Bad_Opcode },
{ Bad_Opcode },
{ Bad_Opcode },
@@ -2113,6 +2113,12 @@ static const struct dis386 evex_table[][256] = {
{ Bad_Opcode },
{ "vpermt2p%XW", { XM, Vex, EXx } },
},
+ /* PREFIX_EVEX_0F3883 */
+ {
+ { Bad_Opcode },
+ { Bad_Opcode },
+ { VEX_W_TABLE (EVEX_W_0F3883_P_2) },
+ },
/* PREFIX_EVEX_0F3888 */
{
{ Bad_Opcode },
@@ -3579,7 +3585,7 @@ static const struct dis386 evex_table[][256] = {
},
/* EVEX_W_0F3875_P_2 */
{
- { Bad_Opcode },
+ { "vpermi2b", { XM, Vex, EXx } },
{ "vpermi2w", { XM, Vex, EXx } },
},
/* EVEX_W_0F3878_P_2 */
@@ -3600,12 +3606,17 @@ static const struct dis386 evex_table[][256] = {
},
/* EVEX_W_0F387D_P_2 */
{
- { Bad_Opcode },
+ { "vpermt2b", { XM, Vex, EXx } },
{ "vpermt2w", { XM, Vex, EXx } },
},
- /* EVEX_W_0F388D_P_2 */
+ /* EVEX_W_0F3883_P_2 */
{
{ Bad_Opcode },
+ { "vpmultishiftqb", { XM, Vex, EXx } },
+ },
+ /* EVEX_W_0F388D_P_2 */
+ {
+ { "vpermb", { XM, Vex, EXx } },
{ "vpermw", { XM, Vex, EXx } },
},
/* EVEX_W_0F3891_P_2 */