aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@suse.com>2020-07-14 10:23:36 +0200
committerJan Beulich <jbeulich@suse.com>2020-07-14 10:23:36 +0200
commite8b5d5f9713b7c74f95c4ff573ddeb7ebdb3fbc3 (patch)
tree0bafc00c1efb11d44eefb9020b4362bc2b028853 /gas
parent38397794c90dc92e92ca4b0a9d00005f23fe500b (diff)
downloadbinutils-e8b5d5f9713b7c74f95c4ff573ddeb7ebdb3fbc3.zip
binutils-e8b5d5f9713b7c74f95c4ff573ddeb7ebdb3fbc3.tar.gz
binutils-e8b5d5f9713b7c74f95c4ff573ddeb7ebdb3fbc3.tar.bz2
x86: drop dead code from OP_IMREG()
There's only a very limited set of modes that this function gets invoked with - avoid it being more generic than it needs to be. This may, down the road, allow actually doing away with the function altogether. This eliminates a first improperly used "USED_REX (0)".
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/testsuite/gas/i386/x86-64-pseudos.d2
-rw-r--r--gas/testsuite/gas/i386/x86-64-pseudos.s2
3 files changed, 10 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 88dffa5..ba55ed9 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,11 @@
2020-07-14 Jan Beulich <jbeulich@suse.com>
+ * testsuite/gas/i386/x86-64-pseudos.s: Add empty-REX tests for
+ not-ModR/M-encoded byte register cases.
+ * testsuite/gas/i386/x86-64-pseudos.d: Adjust expectations.
+
+2020-07-14 Jan Beulich <jbeulich@suse.com>
+
* testsuite/gas/i386/ilp32/x86-64-arch-1.d,
testsuite/gas/i386/ilp32/x86-64-arch-2.d,
testsuite/gas/i386/ilp32/x86-64-avx-intel.d,
diff --git a/gas/testsuite/gas/i386/x86-64-pseudos.d b/gas/testsuite/gas/i386/x86-64-pseudos.d
index 529578b..26944b9 100644
--- a/gas/testsuite/gas/i386/x86-64-pseudos.d
+++ b/gas/testsuite/gas/i386/x86-64-pseudos.d
@@ -301,6 +301,8 @@ Disassembly of section .text:
+[a-f0-9]+: 0f 28 90 80 00 00 00 movaps 0x80\(%rax\),%xmm2
+[a-f0-9]+: 0f 28 90 80 00 00 00 movaps 0x80\(%rax\),%xmm2
+[a-f0-9]+: 88 c4 mov %al,%ah
+ +[a-f0-9]+: 40 d3 e0 rex shl %cl,%eax
+ +[a-f0-9]+: 40 a0 01 00 00 00 00 00 00 00 rex movabs 0x1,%al
+[a-f0-9]+: 40 89 c3 rex mov %eax,%ebx
+[a-f0-9]+: 41 89 c6 mov %eax,%r14d
+[a-f0-9]+: 41 89 00 mov %eax,\(%r8\)
diff --git a/gas/testsuite/gas/i386/x86-64-pseudos.s b/gas/testsuite/gas/i386/x86-64-pseudos.s
index 3bda573..0529075 100644
--- a/gas/testsuite/gas/i386/x86-64-pseudos.s
+++ b/gas/testsuite/gas/i386/x86-64-pseudos.s
@@ -305,6 +305,8 @@ _start:
{disp8} movaps 128(%rax),%xmm2
{disp32} movaps 128(%rax),%xmm2
{rex} mov %al,%ah
+ {rex} shl %cl, %eax
+ {rex} movabs 1, %al
{rex} movl %eax,%ebx
{rex} movl %eax,%r14d
{rex} movl %eax,(%r8)