diff options
author | Richard Henderson <rth@twiddle.net> | 2017-08-03 23:00:02 -0700 |
---|---|---|
committer | Richard Henderson <richard.henderson@linaro.org> | 2017-09-06 07:19:00 -0700 |
commit | bbde936a20ba4101eb7069b9266db09e17e61f3a (patch) | |
tree | 9e343aeda93d9dc74294fc85677f5555774e21f5 /disas/i386.c | |
parent | a17d3be6fb9bc1a0c310826b5ab0c24bb1635d97 (diff) |
disas/i386: Add disassembly of rorx
Signed-off-by: Richard Henderson <rth@twiddle.net>
Diffstat (limited to 'disas/i386.c')
-rw-r--r-- | disas/i386.c | 13 |
1 files changed, 11 insertions, 2 deletions
diff --git a/disas/i386.c b/disas/i386.c index 7eaa378a10..a557e678ec 100644 --- a/disas/i386.c +++ b/disas/i386.c @@ -684,6 +684,7 @@ fetch_data(struct disassemble_info *info, bfd_byte *addr) #define PREGRP106 NULL, { { NULL, USE_PREFIX_USER_TABLE }, { NULL, 106 } } #define PREGRP107 NULL, { { NULL, USE_PREFIX_USER_TABLE }, { NULL, 107 } } #define PREGRP108 NULL, { { NULL, USE_PREFIX_USER_TABLE }, { NULL, 108 } } +#define PREGRP109 NULL, { { NULL, USE_PREFIX_USER_TABLE }, { NULL, 109 } } #define X86_64_0 NULL, { { NULL, X86_64_SPECIAL }, { NULL, 0 } } #define X86_64_1 NULL, { { NULL, X86_64_SPECIAL }, { NULL, 1 } } @@ -1557,7 +1558,7 @@ static const unsigned char threebyte_0x3a_uses_REPNZ_prefix[256] = { /* c0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* cf */ /* d0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* df */ /* e0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* ef */ - /* f0 */ 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* ff */ + /* f0 */ 1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, /* ff */ /* ------------------------------- */ /* 0 1 2 3 4 5 6 7 8 9 a b c d e f */ }; @@ -2817,6 +2818,14 @@ static const struct dis386 prefix_user_table[][4] = { { "(bad)", { XX } }, { "pdep", { Gv, Bv, Ev } }, }, + + /* PREGRP109 */ + { + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { "(bad)", { XX } }, + { "rorx", { Gv, Ev, Ib } }, + }, }; static const struct dis386 x86_64_table[][2] = { @@ -3403,7 +3412,7 @@ static const struct dis386 three_byte_table[][256] = { { "(bad)", { XX } }, { "(bad)", { XX } }, /* f0 */ - { "(bad)", { XX } }, + { PREGRP109 }, { "(bad)", { XX } }, { "(bad)", { XX } }, { "(bad)", { XX } }, |