summaryrefslogtreecommitdiff
path: root/opcodes/i386-dis.c
diff options
context:
space:
mode:
authorIgor Tsimbalist <igor.v.tsimbalist@intel.com>2018-04-27 14:34:13 +0200
committerIgor Tsimbalist <igor.v.tsimbalist@intel.com>2018-04-27 14:34:13 +0200
commitaa178437393fd97f706c3f8bdf60ab2cc53a8cb4 (patch)
treec17b80644ef479bfda7abbc8c808df8dfcc8748a /opcodes/i386-dis.c
parentffa389a39655f4b35d583783e49fa5b31c288e8f (diff)
downloadbinutils-gdb-aa178437393fd97f706c3f8bdf60ab2cc53a8cb4.tar.gz
Revert "Enable Intel MOVDIRI, MOVDIR64B instructions."
This reverts commit a914a7c95895161c99533d5919b8504b37ea54a0.
Diffstat (limited to 'opcodes/i386-dis.c')
-rw-r--r--opcodes/i386-dis.c54
1 files changed, 4 insertions, 50 deletions
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index f2ad0fad0f8..98950e20f07 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -281,7 +281,6 @@ fetch_data (struct disassemble_info *info, bfd_byte *addr)
#define Gd { OP_G, d_mode }
#define Gdq { OP_G, dq_mode }
#define Gm { OP_G, m_mode }
-#define Gva { OP_G, va_mode }
#define Gw { OP_G, w_mode }
#define Rd { OP_R, d_mode }
#define Rdq { OP_R, dq_mode }
@@ -836,8 +835,6 @@ enum
MOD_0F382A_PREFIX_2,
MOD_0F38F5_PREFIX_2,
MOD_0F38F6_PREFIX_0,
- MOD_0F38F8_PREFIX_2,
- MOD_0F38F9_PREFIX_0,
MOD_62_32BIT,
MOD_C4_32BIT,
MOD_C5_32BIT,
@@ -1084,8 +1081,6 @@ enum
PREFIX_0F38F1,
PREFIX_0F38F5,
PREFIX_0F38F6,
- PREFIX_0F38F8,
- PREFIX_0F38F9,
PREFIX_0F3A08,
PREFIX_0F3A09,
PREFIX_0F3A0A,
@@ -4685,18 +4680,6 @@ static const struct dis386 prefix_table[][4] = {
{ Bad_Opcode },
},
- /* PREFIX_0F38F8 */
- {
- { Bad_Opcode },
- { Bad_Opcode },
- { MOD_TABLE (MOD_0F38F8_PREFIX_2) },
- },
-
- /* PREFIX_0F38F9 */
- {
- { MOD_TABLE (MOD_0F38F9_PREFIX_0) },
- },
-
/* PREFIX_0F3A08 */
{
{ Bad_Opcode },
@@ -7461,8 +7444,8 @@ static const struct dis386 three_byte_table[][256] = {
{ PREFIX_TABLE (PREFIX_0F38F6) },
{ Bad_Opcode },
/* f8 */
- { PREFIX_TABLE (PREFIX_0F38F8) },
- { PREFIX_TABLE (PREFIX_0F38F9) },
+ { Bad_Opcode },
+ { Bad_Opcode },
{ Bad_Opcode },
{ Bad_Opcode },
{ Bad_Opcode },
@@ -11854,14 +11837,6 @@ static const struct dis386 mod_table[][2] = {
{ "wrssK", { M, Gdq }, PREFIX_OPCODE },
},
{
- /* MOD_0F38F8_PREFIX_2 */
- { "movdir64b", { Gva, M }, PREFIX_OPCODE },
- },
- {
- /* MOD_0F38F9_PREFIX_0 */
- { "movdiri", { Em, Gm }, PREFIX_OPCODE },
- },
- {
/* MOD_62_32BIT */
{ "bound{S|}", { Gv, Ma }, 0 },
{ EVEX_TABLE (EVEX_0F) },
@@ -15177,10 +15152,8 @@ OP_E_register (int bytemode, int sizeflag)
names = (address_mode == mode_64bit
? names64 : names32);
if (!(prefixes & PREFIX_ADDR))
- {
- if (address_mode == mode_16bit)
- names = names16;
- }
+ names = (address_mode == mode_16bit
+ ? names16 : names);
else
{
/* Remove "addr16/addr32". */
@@ -15679,7 +15652,6 @@ static void
OP_G (int bytemode, int sizeflag)
{
int add = 0;
- const char **names;
USED_REX (REX_R);
if (rex & REX_R)
add += 8;
@@ -15728,24 +15700,6 @@ OP_G (int bytemode, int sizeflag)
used_prefixes |= (prefixes & PREFIX_DATA);
}
break;
- case va_mode:
- names = (address_mode == mode_64bit
- ? names64 : names32);
- if (!(prefixes & PREFIX_ADDR))
- {
- if (address_mode == mode_16bit)
- names = names16;
- }
- else
- {
- /* Remove "addr16/addr32". */
- all_prefixes[last_addr_prefix] = 0;
- names = (address_mode != mode_32bit
- ? names32 : names16);
- used_prefixes |= PREFIX_ADDR;
- }
- oappend (names[modrm.reg + add]);
- break;
case m_mode:
if (address_mode == mode_64bit)
oappend (names64[modrm.reg + add]);