From 6df22cf64c935c7a467759048858bb7e8ef70235 Mon Sep 17 00:00:00 2001 From: Jan Beulich Date: Mon, 6 Jul 2020 13:40:13 +0200 Subject: x86: drop EVEX table entries that can be served by VEX ones The duplication is not only space inefficient, but also risks entries going out of sync (some of which that I became aware of while doing this work will get addressed subsequently). Right here note that for VGF2P8MULB this also addresses the prior lack of EVEX.W decoding (i.e. a first example of out of sync entries). This introduces EXxEVexR to some VEX templates, on the basis that this operand is benign there and only relevant when EVEX encoding ends up reaching these entries. --- opcodes/i386-dis-evex-w.h | 34 ---------------------------------- 1 file changed, 34 deletions(-) (limited to 'opcodes/i386-dis-evex-w.h') diff --git a/opcodes/i386-dis-evex-w.h b/opcodes/i386-dis-evex-w.h index 45ecb87ab44..dd3caad33c0 100644 --- a/opcodes/i386-dis-evex-w.h +++ b/opcodes/i386-dis-evex-w.h @@ -342,10 +342,6 @@ { { "vpaddd", { XM, Vex, EXx }, 0 }, }, - /* EVEX_W_0F380C_P_2 */ - { - { "vpermilps", { XM, Vex, EXx }, 0 }, - }, /* EVEX_W_0F380D_P_2 */ { { Bad_Opcode }, @@ -394,10 +390,6 @@ { { "vpmovusqd", { EXxmmq, XM }, 0 }, }, - /* EVEX_W_0F3818_P_2 */ - { - { "vbroadcastss", { XM, EXxmm_md }, 0 }, - }, /* EVEX_W_0F3819_P_2 */ { { EVEX_LEN_TABLE (EVEX_LEN_0F3819_P_2_W_0) }, @@ -560,10 +552,6 @@ { "vpopcntd", { XM, EXx }, 0 }, { "vpopcntq", { XM, EXx }, 0 }, }, - /* EVEX_W_0F3858_P_2 */ - { - { "vpbroadcastd", { XM, EXxmm_md }, 0 }, - }, /* EVEX_W_0F3859_P_2 */ { { "vbroadcasti32x2", { XM, EXxmm_mq }, 0 }, @@ -634,14 +622,6 @@ { "vpermi2b", { XM, Vex, EXx }, 0 }, { "vpermi2w", { XM, Vex, EXx }, 0 }, }, - /* EVEX_W_0F3878_P_2 */ - { - { "vpbroadcastb", { XM, EXxmm_mb }, 0 }, - }, - /* EVEX_W_0F3879_P_2 */ - { - { "vpbroadcastw", { XM, EXxmm_mw }, 0 }, - }, /* EVEX_W_0F387A_P_2 */ { { "vpbroadcastb", { XM, Rd }, 0 }, @@ -715,10 +695,6 @@ { Bad_Opcode }, { "vpermpd", { XM, EXx, Ib }, 0 }, }, - /* EVEX_W_0F3A04_P_2 */ - { - { "vpermilps", { XM, EXx, Ib }, 0 }, - }, /* EVEX_W_0F3A05_P_2 */ { { Bad_Opcode }, @@ -864,13 +840,3 @@ { "vpshrdd", { XM, Vex, EXx, Ib }, 0 }, { "vpshrdq", { XM, Vex, EXx, Ib }, 0 }, }, - /* EVEX_W_0F3ACE_P_2 */ - { - { Bad_Opcode }, - { "vgf2p8affineqb", { XM, Vex, EXx, Ib }, 0 }, - }, - /* EVEX_W_0F3ACF_P_2 */ - { - { Bad_Opcode }, - { "vgf2p8affineinvqb", { XM, Vex, EXx, Ib }, 0 }, - }, -- cgit v1.2.1