aboutsummaryrefslogtreecommitdiff
path: root/opcodes
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2020-07-15 06:49:45 -0700
committerH.J. Lu <hjl.tools@gmail.com>2020-07-15 06:57:47 -0700
commit04c662e2b66bedd050f97adec19afe0fcfce9ea7 (patch)
treebc8bd76482538d3ced9901b0d24c91813de80566 /opcodes
parent56c1b507aa8bd8029f63bc78275fab1d815966f5 (diff)
downloadbinutils-04c662e2b66bedd050f97adec19afe0fcfce9ea7.zip
binutils-04c662e2b66bedd050f97adec19afe0fcfce9ea7.tar.gz
binutils-04c662e2b66bedd050f97adec19afe0fcfce9ea7.tar.bz2
x86: Don't display eiz with no scale
Change 67 48 8b 1c 25 ef cd ab 89 mov 0x89abcdef(,%eiz,1),%rbx to 67 48 8b 1c 25 ef cd ab 89 mov 0x89abcdef,%rbx in AT&T syntax and 67 48 8b 1c 25 ef cd ab 89 mov rbx,QWORD PTR [eiz*1+0x89abcdef] to 67 48 8b 1c 25 ef cd ab 89 mov rbx,QWORD PTR ds:0x89abcdef in Intel syntax. gas/ PR gas/26237 * testsuite/gas/i386/evex-no-scale-64.d: Updated. * testsuite/gas/i386/addr32.d: Likewise. * testsuite/gas/i386/x86-64-addr32-intel.d: Likewise. * testsuite/gas/i386/x86-64-addr32.d: Likewise. opcodes/ PR gas/26237 * i386-dis.c (OP_E_memory): Don't display eiz with no scale without base nor index registers.
Diffstat (limited to 'opcodes')
-rw-r--r--opcodes/ChangeLog6
-rw-r--r--opcodes/i386-dis.c2
2 files changed, 7 insertions, 1 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index e4e26a1..91d7f5b 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,9 @@
+2020-07-15 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/26237
+ * i386-dis.c (OP_E_memory): Don't display eiz with no scale
+ without base nor index registers.
+
2020-07-15 Jan Beulich <jbeulich@suse.com>
* i386-dis.c (putop): Move 'V' and 'W' handling.
diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c
index cd8a9a8..d1d7a7d 100644
--- a/opcodes/i386-dis.c
+++ b/opcodes/i386-dis.c
@@ -11818,7 +11818,7 @@ OP_E_memory (int bytemode, int sizeflag)
/* Without base nor index registers, zero-extend the
lower 32-bit displacement to 64 bits. */
disp = (unsigned int) disp;
- needindex = 1;
+ needindex = scale;
}
needaddr32 = 1;
}