aboutsummaryrefslogtreecommitdiff
path: root/opcodes/i386-dis.c
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2005-05-25 06:47:58 +0000
committerJan Beulich <jbeulich@novell.com>2005-05-25 06:47:58 +0000
commit2888cb7a54f4590730294abd881bb762d16c1ec6 (patch)
tree662e3be323073e2792aac557bf8b769bc60314e9 /opcodes/i386-dis.c
parentc079eaf26bd72dedb4856bdb130296c153599187 (diff)
downloadgdb-2888cb7a54f4590730294abd881bb762d16c1ec6.zip
gdb-2888cb7a54f4590730294abd881bb762d16c1ec6.tar.gz
gdb-2888cb7a54f4590730294abd881bb762d16c1ec6.tar.bz2
opcodes/
2005-05-25 Jan Beulich <jbeulich@novell.com> * i386-dis.c (prefix_name): Remove pointless mode_64bit check. (OP_E): Remove redundant REX_EXTZ handling. Remove pointless masking of 'rm' in 16-bit memory address handling.
Diffstat (limited to 'opcodes/i386-dis.c')
-rw-r--r--opcodes/i386-dis.c15
1 files changed, 5 insertions, 10 deletions
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index 15f43c3..9a8b73f 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -1895,7 +1895,7 @@ prefix_name (int pref, int sizeflag)
if (mode_64bit)
return (sizeflag & AFLAG) ? "addr32" : "addr64";
else
- return ((sizeflag & AFLAG) && !mode_64bit) ? "addr16" : "addr32";
+ return (sizeflag & AFLAG) ? "addr16" : "addr32";
case FWAIT_OPCODE:
return "fwait";
default:
@@ -3214,13 +3214,11 @@ OP_E (int bytemode, int sizeflag)
scale = (*codep >> 6) & 3;
base = *codep & 7;
USED_REX (REX_EXTY);
- USED_REX (REX_EXTZ);
if (rex & REX_EXTY)
index += 8;
- if (rex & REX_EXTZ)
- base += 8;
codep++;
}
+ base += add;
switch (mod)
{
@@ -3316,9 +3314,6 @@ OP_E (int bytemode, int sizeflag)
if (intel_syntax && riprel)
oappend ("rip + ");
*obufp = '\0';
- USED_REX (REX_EXTZ);
- if (!havesib && (rex & REX_EXTZ))
- base += 8;
if (havebase)
oappend (mode_64bit && (sizeflag & AFLAG)
? names64[base] : names32[base]);
@@ -3384,7 +3379,7 @@ OP_E (int bytemode, int sizeflag)
switch (mod)
{
case 0:
- if ((rm & 7) == 6)
+ if (rm == 6)
{
disp = get16 ();
if ((disp & 0x8000) != 0)
@@ -3405,13 +3400,13 @@ OP_E (int bytemode, int sizeflag)
}
if (!intel_syntax)
- if (mod != 0 || (rm & 7) == 6)
+ if (mod != 0 || rm == 6)
{
print_operand_value (scratchbuf, 0, disp);
oappend (scratchbuf);
}
- if (mod != 0 || (rm & 7) != 6)
+ if (mod != 0 || rm != 6)
{
*obufp++ = open_char;
*obufp = '\0';