aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2018-06-01 08:40:38 +0200
committerJan Beulich <jbeulich@suse.com>2018-06-01 08:40:38 +0200
commitdfd27d41831853da1c7694e2d9e765eccbed22cf (patch)
tree3a7cc1a2368bf14420a9e55357c76d7d3258e96e /gas
parent44846f29ab3a5fdab229cb63d9cd42323ed85767 (diff)
downloadgdb-dfd27d41831853da1c7694e2d9e765eccbed22cf.zip
gdb-dfd27d41831853da1c7694e2d9e765eccbed22cf.tar.gz
gdb-dfd27d41831853da1c7694e2d9e765eccbed22cf.tar.bz2
x86: don't emit REX.W for SLDT and STR
Just like for other selector register reads, they're unnecessary and should hence be avoided.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/testsuite/gas/i386/ilp32/x86-64-opcode.d4
-rw-r--r--gas/testsuite/gas/i386/x86-64-opcode.d4
3 files changed, 9 insertions, 4 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 67da990..f459469 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,10 @@
2018-06-01 Jan Beulich <jbeulich@suse.com>
+ * testsuite/gas/i386/ilp32/x86-64-opcode.d,
+ testsuite/gas/i386/x86-64-opcode.d: Adjust expectations.
+
+2018-06-01 Jan Beulich <jbeulich@suse.com>
+
* config/tc-i386.c (add_prefix): Check REX bits individually.
* testsuite/gas/i386/rex.s: Add tests for overriding individual
REX bits, including when others are already set.
diff --git a/gas/testsuite/gas/i386/ilp32/x86-64-opcode.d b/gas/testsuite/gas/i386/ilp32/x86-64-opcode.d
index 53893b3..f087252 100644
--- a/gas/testsuite/gas/i386/ilp32/x86-64-opcode.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-opcode.d
@@ -269,7 +269,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 41 0f 01 38 invlpg \(%r8\)
[ ]*[a-f0-9]+: 0f 01 38 invlpg \(%rax\)
[ ]*[a-f0-9]+: 0f 00 c0 sldt %eax
-[ ]*[a-f0-9]+: 48 0f 00 c0 sldt %rax
+[ ]*[a-f0-9]+: 0f 00 c0 sldt %eax
[ ]*[a-f0-9]+: 66 0f 00 c0 sldt %ax
[ ]*[a-f0-9]+: 0f 00 00 sldt \(%rax\)
[ ]*[a-f0-9]+: e6 00 out %al,\$0x0
@@ -294,7 +294,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 0f 01 e0 smsw %eax
[ ]*[a-f0-9]+: 66 0f 01 e0 smsw %ax
[ ]*[a-f0-9]+: 0f 01 20 smsw \(%rax\)
-[ ]*[a-f0-9]+: 48 0f 00 c8 str %rax
+[ ]*[a-f0-9]+: 0f 00 c8 str %eax
[ ]*[a-f0-9]+: 0f 00 c8 str %eax
[ ]*[a-f0-9]+: 66 0f 00 c8 str %ax
[ ]*[a-f0-9]+: 0f 00 08 str \(%rax\)
diff --git a/gas/testsuite/gas/i386/x86-64-opcode.d b/gas/testsuite/gas/i386/x86-64-opcode.d
index bfffb6e..a2e9a71 100644
--- a/gas/testsuite/gas/i386/x86-64-opcode.d
+++ b/gas/testsuite/gas/i386/x86-64-opcode.d
@@ -268,7 +268,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 41 0f 01 38 invlpg \(%r8\)
[ ]*[a-f0-9]+: 0f 01 38 invlpg \(%rax\)
[ ]*[a-f0-9]+: 0f 00 c0 sldt %eax
-[ ]*[a-f0-9]+: 48 0f 00 c0 sldt %rax
+[ ]*[a-f0-9]+: 0f 00 c0 sldt %eax
[ ]*[a-f0-9]+: 66 0f 00 c0 sldt %ax
[ ]*[a-f0-9]+: 0f 00 00 sldt \(%rax\)
[ ]*[a-f0-9]+: e6 00 out %al,\$0x0
@@ -293,7 +293,7 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 0f 01 e0 smsw %eax
[ ]*[a-f0-9]+: 66 0f 01 e0 smsw %ax
[ ]*[a-f0-9]+: 0f 01 20 smsw \(%rax\)
-[ ]*[a-f0-9]+: 48 0f 00 c8 str %rax
+[ ]*[a-f0-9]+: 0f 00 c8 str %eax
[ ]*[a-f0-9]+: 0f 00 c8 str %eax
[ ]*[a-f0-9]+: 66 0f 00 c8 str %ax
[ ]*[a-f0-9]+: 0f 00 08 str \(%rax\)