aboutsummaryrefslogtreecommitdiff
path: root/opcodes/i386-dis-evex-mod.h
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2020-07-14 10:42:33 +0200
committerJan Beulich <jbeulich@suse.com>2020-07-14 10:42:33 +0200
commit464d2b65680352965d877d9f4ac5430bd05934df (patch)
tree2ed65cc603a84764dc815f9a4a221c8eea1f2b25 /opcodes/i386-dis-evex-mod.h
parent035e7389dd36526df823b28e7f9fb1dea16cae2e (diff)
downloadfsf-binutils-gdb-464d2b65680352965d877d9f4ac5430bd05934df.zip
fsf-binutils-gdb-464d2b65680352965d877d9f4ac5430bd05934df.tar.gz
fsf-binutils-gdb-464d2b65680352965d877d9f4ac5430bd05934df.tar.bz2
x86: drop Rdq, Rd, and MaskR
Rdq, Rd, and MaskR can be replaced by Edq, Ed / Rm, and MaskE respectively, as OP_R() doesn't enforce ModRM.mod == 3, and hence where MOD matters but hasn't been decoded yet it needs to be anyway. (The case of converting to Rm is temporary until a subsequent change.)
Diffstat (limited to 'opcodes/i386-dis-evex-mod.h')
-rw-r--r--opcodes/i386-dis-evex-mod.h35
1 files changed, 35 insertions, 0 deletions
diff --git a/opcodes/i386-dis-evex-mod.h b/opcodes/i386-dis-evex-mod.h
index acb497d..4259368 100644
--- a/opcodes/i386-dis-evex-mod.h
+++ b/opcodes/i386-dis-evex-mod.h
@@ -44,6 +44,26 @@
{
{ EVEX_LEN_TABLE (EVEX_LEN_0F381B_W_1_M_0) },
},
+ /* MOD_EVEX_0F3828_P_1 */
+ {
+ { Bad_Opcode },
+ { "vpmovm2%BW", { XM, MaskE }, 0 },
+ },
+ /* MOD_EVEX_0F382A_P_1_W_1 */
+ {
+ { Bad_Opcode },
+ { "vpbroadcastmb2q", { XM, MaskE }, 0 },
+ },
+ /* MOD_EVEX_0F3838_P_1 */
+ {
+ { Bad_Opcode },
+ { "vpmovm2%DQ", { XM, MaskE }, 0 },
+ },
+ /* MOD_EVEX_0F383A_P_1_W_0 */
+ {
+ { Bad_Opcode },
+ { "vpbroadcastmw2d", { XM, MaskE }, 0 },
+ },
/* MOD_EVEX_0F385A_W_0 */
{
{ EVEX_LEN_TABLE (EVEX_LEN_0F385A_W_0_M_0) },
@@ -60,6 +80,21 @@
{
{ EVEX_LEN_TABLE (EVEX_LEN_0F385B_W_1_M_0) },
},
+ /* MOD_EVEX_0F387A_W_0 */
+ {
+ { Bad_Opcode },
+ { "vpbroadcastb", { XM, Ed }, PREFIX_DATA },
+ },
+ /* MOD_EVEX_0F387B_W_0 */
+ {
+ { Bad_Opcode },
+ { "vpbroadcastw", { XM, Ed }, PREFIX_DATA },
+ },
+ /* MOD_EVEX_0F387C */
+ {
+ { Bad_Opcode },
+ { "vpbroadcastK", { XM, Edq }, PREFIX_DATA },
+ },
{
/* MOD_EVEX_0F38C6_REG_1 */
{ EVEX_LEN_TABLE (EVEX_LEN_0F38C6_R_1_M_0) },