From: H.J. Lu Date: Fri, 27 Feb 2009 20:13:04 +0000 (+0000) Subject: 2009-02-27 H.J. Lu X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=d6f574e0edeebc51588a33b7461e35425fef8925;p=binutils-gdb.git 2009-02-27 H.J. Lu * i386-dis.c (OP_EX): Call OP_E_memory instead of OP_E. --- diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index ce7b57af421..ca35ba7051a 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,7 @@ +2009-02-27 H.J. Lu + + * i386-dis.c (OP_EX): Call OP_E_memory instead of OP_E. + 2009-02-26 Peter Bergner * ppc-dis.c (powerpc_init_dialect): Extend -Mpower7 to disassemble diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index 83de1f72536..2e44ed0a8ac 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -12676,11 +12676,17 @@ static void OP_EX (int bytemode, int sizeflag) { int add; + + /* Skip mod/rm byte. */ + MODRM_CHECK; + codep++; + if (modrm.mod != 3) { - OP_E (bytemode, sizeflag); + OP_E_memory (bytemode, sizeflag, 0); return; } + USED_REX (REX_B); if (rex & REX_B) add = 8; @@ -12693,9 +12699,6 @@ OP_EX (int bytemode, int sizeflag) || bytemode == q_swap_mode)) swap_operand (); - /* Skip mod/rm byte. */ - MODRM_CHECK; - codep++; if (need_vex && bytemode != xmm_mode && bytemode != xmmq_mode)