diff options
-rw-r--r-- | gas/ChangeLog | 9 | ||||
-rw-r--r-- | gas/config/tc-i386.c | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/ptwrite-intel.d | 1 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/ptwrite.d | 1 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/ptwrite.s | 1 |
5 files changed, 13 insertions, 1 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog index eae7a29515..e1aacffd96 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 f20be8ef9d..5a7066c1dd 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 d39609aef7..f0f2aad2f9 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 399c740429..31552bce91 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 3aa4be7c84..61efd7e128 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] |