aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorJan Beulich <jbeulich@novell.com>2018-07-11 10:25:40 +0200
committerJan Beulich <jbeulich@suse.com>2018-07-11 10:25:40 +0200
commit7f5cad304773ecbfe8b390e0b5d79fe11edb2a6b (patch)
tree49a3135e701743cb063c0a270fd00149e3a756c2 /gas
parentf0a85b07061964d6c608e6280ce61aa3fed1eabf (diff)
downloadbinutils-7f5cad304773ecbfe8b390e0b5d79fe11edb2a6b.zip
binutils-7f5cad304773ecbfe8b390e0b5d79fe11edb2a6b.tar.gz
binutils-7f5cad304773ecbfe8b390e0b5d79fe11edb2a6b.tar.bz2
x86/Intel: accept memory operand size specifiers for CET insns
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog8
-rw-r--r--gas/testsuite/gas/i386/cet-intel.d2
-rw-r--r--gas/testsuite/gas/i386/cet.d2
-rw-r--r--gas/testsuite/gas/i386/cet.s2
-rw-r--r--gas/testsuite/gas/i386/x86-64-cet-intel.d4
-rw-r--r--gas/testsuite/gas/i386/x86-64-cet.d4
-rw-r--r--gas/testsuite/gas/i386/x86-64-cet.s4
7 files changed, 26 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 6de7a61..ddb6235 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,13 @@
2018-07-11 Jan Beulich <jbeulich@suse.com>
+ * testsuite/gas/i386/cet.s, testsuite/gas/i386/x86-64-cet.s:
+ Add Intel cases with operand size specifiers.
+ * testsuite/gas/i386/cet-intel.d, testsuite/gas/i386/cet.d,
+ testsuite/gas/i386/x86-64-cet-intel.d,
+ testsuite/gas/i386/x86-64-cet.d: Adjust expectations.
+
+2018-07-11 Jan Beulich <jbeulich@suse.com>
+
* config/tc-i386.c (md_assemble): Also replace an already
present REP prefix.
* testsuite/gas/i386/mpx-add-bnd-prefix.s,
diff --git a/gas/testsuite/gas/i386/cet-intel.d b/gas/testsuite/gas/i386/cet-intel.d
index 79da878..96ff807 100644
--- a/gas/testsuite/gas/i386/cet-intel.d
+++ b/gas/testsuite/gas/i386/cet-intel.d
@@ -23,7 +23,9 @@ Disassembly of section .text:
+[a-f0-9]+: f3 0f 01 ea saveprevssp
+[a-f0-9]+: f3 0f 01 2c 01 rstorssp QWORD PTR \[ecx\+eax\*1\]
+[a-f0-9]+: 0f 38 f6 02 wrssd \[edx\],eax
+ +[a-f0-9]+: 0f 38 f6 10 wrssd \[eax\],edx
+[a-f0-9]+: 66 0f 38 f5 14 2f wrussd \[edi\+ebp\*1\],edx
+ +[a-f0-9]+: 66 0f 38 f5 3c 2a wrussd \[edx\+ebp\*1\],edi
+[a-f0-9]+: f3 0f 01 e8 setssbsy
+[a-f0-9]+: f3 0f ae 34 04 clrssbsy QWORD PTR \[esp\+eax\*1\]
+[a-f0-9]+: f3 0f 1e fa endbr64
diff --git a/gas/testsuite/gas/i386/cet.d b/gas/testsuite/gas/i386/cet.d
index 982d40e..0f67716 100644
--- a/gas/testsuite/gas/i386/cet.d
+++ b/gas/testsuite/gas/i386/cet.d
@@ -21,7 +21,9 @@ Disassembly of section .text:
+[a-f0-9]+: f3 0f 01 ea saveprevssp
+[a-f0-9]+: f3 0f 01 2c 01 rstorssp \(%ecx,%eax,1\)
+[a-f0-9]+: 0f 38 f6 02 wrssd %eax,\(%edx\)
+ +[a-f0-9]+: 0f 38 f6 10 wrssd %edx,\(%eax\)
+[a-f0-9]+: 66 0f 38 f5 14 2f wrussd %edx,\(%edi,%ebp,1\)
+ +[a-f0-9]+: 66 0f 38 f5 3c 2a wrussd %edi,\(%edx,%ebp,1\)
+[a-f0-9]+: f3 0f 01 e8 setssbsy
+[a-f0-9]+: f3 0f ae 34 04 clrssbsy \(%esp,%eax,1\)
+[a-f0-9]+: f3 0f 1e fa endbr64
diff --git a/gas/testsuite/gas/i386/cet.s b/gas/testsuite/gas/i386/cet.s
index f0178a8..730e7d7 100644
--- a/gas/testsuite/gas/i386/cet.s
+++ b/gas/testsuite/gas/i386/cet.s
@@ -18,7 +18,9 @@ _start:
saveprevssp
rstorssp QWORD PTR [ecx + eax]
wrssd [edx],eax
+ wrssd dword ptr [eax],edx
wrussd [edi + ebp],edx
+ wrussd dword ptr [edx + ebp],edi
setssbsy
clrssbsy QWORD PTR [esp + eax]
endbr64
diff --git a/gas/testsuite/gas/i386/x86-64-cet-intel.d b/gas/testsuite/gas/i386/x86-64-cet-intel.d
index 5e5f4a5..7b9a125 100644
--- a/gas/testsuite/gas/i386/x86-64-cet-intel.d
+++ b/gas/testsuite/gas/i386/x86-64-cet-intel.d
@@ -28,9 +28,13 @@ Disassembly of section .text:
+[a-f0-9]+: f3 0f 01 ea saveprevssp
+[a-f0-9]+: f3 41 0f 01 2c 24 rstorssp QWORD PTR \[r12\]
+[a-f0-9]+: 41 0f 38 f6 04 24 wrssd \[r12\],eax
+ +[a-f0-9]+: 44 0f 38 f6 20 wrssd \[rax\],r12d
+[a-f0-9]+: 4a 0f 38 f6 14 39 wrssq \[rcx\+r15\*1\],rdx
+ +[a-f0-9]+: 4a 0f 38 f6 0c 3a wrssq \[rdx\+r15\*1\],rcx
+[a-f0-9]+: 66 41 0f 38 f5 04 24 wrussd \[r12\],eax
+ +[a-f0-9]+: 66 44 0f 38 f5 20 wrussd \[rax\],r12d
+[a-f0-9]+: 66 48 0f 38 f5 0c 03 wrussq \[rbx\+rax\*1\],rcx
+ +[a-f0-9]+: 66 48 0f 38 f5 1c 01 wrussq \[rcx\+rax\*1\],rbx
+[a-f0-9]+: f3 0f 01 e8 setssbsy
+[a-f0-9]+: f3 42 0f ae 34 26 clrssbsy QWORD PTR \[rsi\+r12\*1\]
+[a-f0-9]+: f3 0f 1e fa endbr64
diff --git a/gas/testsuite/gas/i386/x86-64-cet.d b/gas/testsuite/gas/i386/x86-64-cet.d
index af29827..27749662 100644
--- a/gas/testsuite/gas/i386/x86-64-cet.d
+++ b/gas/testsuite/gas/i386/x86-64-cet.d
@@ -27,9 +27,13 @@ Disassembly of section .text:
+[a-f0-9]+: f3 0f 01 ea saveprevssp
+[a-f0-9]+: f3 41 0f 01 2c 24 rstorssp \(%r12\)
+[a-f0-9]+: 41 0f 38 f6 04 24 wrssd %eax,\(%r12\)
+ +[a-f0-9]+: 44 0f 38 f6 20 wrssd %r12d,\(%rax\)
+[a-f0-9]+: 4a 0f 38 f6 14 39 wrssq %rdx,\(%rcx,%r15,1\)
+ +[a-f0-9]+: 4a 0f 38 f6 0c 3a wrssq %rcx,\(%rdx,%r15,1\)
+[a-f0-9]+: 66 41 0f 38 f5 04 24 wrussd %eax,\(%r12\)
+ +[a-f0-9]+: 66 44 0f 38 f5 20 wrussd %r12d,\(%rax\)
+[a-f0-9]+: 66 48 0f 38 f5 0c 03 wrussq %rcx,\(%rbx,%rax,1\)
+ +[a-f0-9]+: 66 48 0f 38 f5 1c 01 wrussq %rbx,\(%rcx,%rax,1\)
+[a-f0-9]+: f3 0f 01 e8 setssbsy
+[a-f0-9]+: f3 42 0f ae 34 26 clrssbsy \(%rsi,%r12,1\)
+[a-f0-9]+: f3 0f 1e fa endbr64
diff --git a/gas/testsuite/gas/i386/x86-64-cet.s b/gas/testsuite/gas/i386/x86-64-cet.s
index 33cd4bf..54ca839 100644
--- a/gas/testsuite/gas/i386/x86-64-cet.s
+++ b/gas/testsuite/gas/i386/x86-64-cet.s
@@ -24,9 +24,13 @@ _start:
saveprevssp
rstorssp QWORD PTR [r12]
wrssd [r12],eax
+ wrssd dword ptr [rax],r12d
wrssq [rcx+r15],rdx
+ wrssq qword ptr [rdx+r15],rcx
wrussd [r12],eax
+ wrussd dword ptr [rax],r12d
wrussq [rbx+rax],rcx
+ wrussq qword ptr [rcx+rax],rbx
setssbsy
clrssbsy QWORD PTR [rsi+r12]
endbr64