aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2017-11-16 12:28:06 +0100
committerJan Beulich <jbeulich@suse.com>2017-11-16 12:28:06 +0100
commitc2b9da16088f8c500ab93e9a4e3001ab7393cb38 (patch)
treef5000e7eb2e7b4be8db0ee3a96c8f378226782ba /gas
parent8c8cad3aa839747e368cc5db58331756a2b70e8e (diff)
downloadgdb-c2b9da16088f8c500ab93e9a4e3001ab7393cb38.zip
gdb-c2b9da16088f8c500ab93e9a4e3001ab7393cb38.tar.gz
gdb-c2b9da16088f8c500ab93e9a4e3001ab7393cb38.tar.bz2
ix86/Intel: don't require memory operand size specifier for PTWRITE
Other than in 64-bit mode, in 32- and 16-bit modes operand size isn't ambiguous.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog9
-rw-r--r--gas/config/tc-i386.c2
-rw-r--r--gas/testsuite/gas/i386/ptwrite-intel.d1
-rw-r--r--gas/testsuite/gas/i386/ptwrite.d1
-rw-r--r--gas/testsuite/gas/i386/ptwrite.s1
5 files changed, 13 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index eae7a29..e1aacff 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,12 @@
+2017-11-16 Jan Beulich <jbeulich@suse.com>
+
+ * config/tc-i386.c (process_suffix): Ignore .no_qsuf outside of
+ 64-bit mode.
+ * testsuite/gas/i386/ptwrite.s: Add test for memory operand
+ without DWORD PTR.
+ * testsuite/gas/i386/ptwrite.d,
+ testsuite/gas/i386/ptwrite-intel.d: Adjust expectations.
+
2017-11-15 H.J. Lu <hongjiu.lu@intel.com>
* testsuite/gas/i386/noextreg.s: Replace .code64/.code32 and
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index f20be8e..5a7066c 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -5565,7 +5565,7 @@ process_suffix (void)
suffixes |= 1 << 3;
if (!i.tm.opcode_modifier.no_ssuf)
suffixes |= 1 << 4;
- if (!i.tm.opcode_modifier.no_qsuf)
+ if (flag_code == CODE_64BIT && !i.tm.opcode_modifier.no_qsuf)
suffixes |= 1 << 5;
/* There are more than suffix matches. */
diff --git a/gas/testsuite/gas/i386/ptwrite-intel.d b/gas/testsuite/gas/i386/ptwrite-intel.d
index d39609a..f0f2aad 100644
--- a/gas/testsuite/gas/i386/ptwrite-intel.d
+++ b/gas/testsuite/gas/i386/ptwrite-intel.d
@@ -15,4 +15,5 @@ Disassembly of section \.text:
+[a-f0-9]+: f3 0f ae 21 ptwrite DWORD PTR \[ecx\]
+[a-f0-9]+: f3 0f ae e1 ptwrite ecx
+[a-f0-9]+: f3 0f ae 21 ptwrite DWORD PTR \[ecx\]
+ +[a-f0-9]+: f3 0f ae 21 ptwrite DWORD PTR \[ecx\]
#pass
diff --git a/gas/testsuite/gas/i386/ptwrite.d b/gas/testsuite/gas/i386/ptwrite.d
index 399c740..31552bc 100644
--- a/gas/testsuite/gas/i386/ptwrite.d
+++ b/gas/testsuite/gas/i386/ptwrite.d
@@ -15,4 +15,5 @@ Disassembly of section \.text:
+[a-f0-9]+: f3 0f ae 21 ptwritel \(%ecx\)
+[a-f0-9]+: f3 0f ae e1 ptwrite %ecx
+[a-f0-9]+: f3 0f ae 21 ptwritel \(%ecx\)
+ +[a-f0-9]+: f3 0f ae 21 ptwritel \(%ecx\)
#pass
diff --git a/gas/testsuite/gas/i386/ptwrite.s b/gas/testsuite/gas/i386/ptwrite.s
index 3aa4be7..61efd7e 100644
--- a/gas/testsuite/gas/i386/ptwrite.s
+++ b/gas/testsuite/gas/i386/ptwrite.s
@@ -9,4 +9,5 @@ _start:
.intel_syntax noprefix
ptwrite ecx
+ ptwrite [ecx]
ptwrite DWORD PTR [ecx]