aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2007-10-04 18:29:29 +0000
committerH.J. Lu <hjl.tools@gmail.com>2007-10-04 18:29:29 +0000
commit955e1e6a77cac122171c75c5a475732400ea8d92 (patch)
treec525db1a445561a8d07c70fee9948d690eb9090a /gas
parent0f5f163810a47915de4187b7e2b51192c446b62b (diff)
downloadgdb-955e1e6a77cac122171c75c5a475732400ea8d92.zip
gdb-955e1e6a77cac122171c75c5a475732400ea8d92.tar.gz
gdb-955e1e6a77cac122171c75c5a475732400ea8d92.tar.bz2
gas/
2007-10-04 H.J. Lu <hongjiu.lu@intel.com> PR gas/5109 * config/tc-i386.c (process_suffix): Clear QWORD suffix if it is ignored in Intel mode. gas/testsuite/ 2007-10-04 H.J. Lu <hongjiu.lu@intel.com> PR gas/5109 * gas/i386/simd-intel.d: Updated. * gas/i386/simd.d: Likewise. * gas/i386/x86-64-simd-intel.d: Likewise. * gas/i386/x86-64-simd.d: Likewise. * gas/i386/simd.s: Add more tests. * gas/i386/x86-64-simd.s: Likewise.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog6
-rw-r--r--gas/config/tc-i386.c6
-rw-r--r--gas/testsuite/ChangeLog11
-rw-r--r--gas/testsuite/gas/i386/simd-intel.d77
-rw-r--r--gas/testsuite/gas/i386/simd.d77
-rw-r--r--gas/testsuite/gas/i386/simd.s82
-rw-r--r--gas/testsuite/gas/i386/x86-64-simd-intel.d149
-rw-r--r--gas/testsuite/gas/i386/x86-64-simd.d149
-rw-r--r--gas/testsuite/gas/i386/x86-64-simd.s92
9 files changed, 558 insertions, 91 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 6694d98..1b2e47b 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,9 @@
+2007-10-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/5109
+ * config/tc-i386.c (process_suffix): Clear QWORD suffix if it
+ is ignored in Intel mode.
+
2007-10-04 Helge Deller <deller@gmx.de>
* read.c (potable): Add string8, string16, string32 and string64.
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 0669c03..56bf31f 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -3384,7 +3384,11 @@ process_suffix (void)
}
else if (i.suffix == QWORD_MNEM_SUFFIX)
{
- if (!check_qword_reg ())
+ if (intel_syntax
+ && i.tm.opcode_modifier.ignoresize
+ && i.tm.opcode_modifier.no_qsuf)
+ i.suffix = 0;
+ else if (!check_qword_reg ())
return 0;
}
else if (i.suffix == WORD_MNEM_SUFFIX)
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog
index f2cb037..f688114 100644
--- a/gas/testsuite/ChangeLog
+++ b/gas/testsuite/ChangeLog
@@ -1,3 +1,14 @@
+2007-10-04 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/5109
+ * gas/i386/simd-intel.d: Updated.
+ * gas/i386/simd.d: Likewise.
+ * gas/i386/x86-64-simd-intel.d: Likewise.
+ * gas/i386/x86-64-simd.d: Likewise.
+
+ * gas/i386/simd.s: Add more tests.
+ * gas/i386/x86-64-simd.s: Likewise.
+
2007-10-04 Helge Deller <deller@gmx.de>
* gas/all/gas.exp: Include new test "strings".
diff --git a/gas/testsuite/gas/i386/simd-intel.d b/gas/testsuite/gas/i386/simd-intel.d
index 661856e..a8503a4 100644
--- a/gas/testsuite/gas/i386/simd-intel.d
+++ b/gas/testsuite/gas/i386/simd-intel.d
@@ -85,8 +85,81 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq xmm0,DWORD PTR \[eax\]
[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq xmm0,QWORD PTR \[eax\]
[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps xmm0,DWORD PTR \[eax\],0x0
-[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si eax,DWORD PTR \[eax\]
-[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si eax,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss xmm1,DWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu XMMWORD PTR ds:0x12345678,xmm1
+[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd QWORD PTR ds:0x12345678,xmm1
+[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps QWORD PTR ds:0x12345678,xmm1
+[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd QWORD PTR ds:0x12345678,xmm1
+[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps QWORD PTR ds:0x12345678,xmm1
+[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw xmm1,XMMWORD PTR ds:0x12345678,0x90
+[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw xmm1,XMMWORD PTR ds:0x12345678,0x90
+[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw mm1,DWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq mm1,DWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd mm1,DWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq xmm1,XMMWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd xmm1,QWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss xmm1,DWORD PTR ds:0x12345678
+[ ]*[a-f0-9]+: f2 0f c2 00 00 cmpeqsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f c2 00 00 cmpeqss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 2a 00 cvtpi2pd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 0f 2a 00 cvtpi2ps xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 0f 2d 00 cvtps2pi mm0,QWORD PTR \[eax\]
[ ]*[a-f0-9]+: f2 0f 2d 00 cvtsd2si eax,QWORD PTR \[eax\]
[ ]*[a-f0-9]+: f2 0f 2c 00 cvttsd2si eax,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 5a 00 cvtsd2ss xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 5a 00 cvtss2sd xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si eax,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si eax,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 5e 00 divsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 5e 00 divss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 5f 00 maxsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 5f 00 maxss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 2b 00 movntsd QWORD PTR \[eax\],xmm0
+[ ]*[a-f0-9]+: f3 0f 2b 00 movntss DWORD PTR \[eax\],xmm0
+[ ]*[a-f0-9]+: f2 0f 10 00 movsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 11 00 movsd QWORD PTR \[eax\],xmm0
+[ ]*[a-f0-9]+: f3 0f 10 00 movss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 11 00 movss DWORD PTR \[eax\],xmm0
+[ ]*[a-f0-9]+: f2 0f 59 00 mulsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 59 00 mulss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 53 00 rcpss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 3a 0b 00 00 roundsd xmm0,QWORD PTR \[eax\],0x0
+[ ]*[a-f0-9]+: 66 0f 3a 0a 00 00 roundss xmm0,DWORD PTR \[eax\],0x0
+[ ]*[a-f0-9]+: f3 0f 52 00 rsqrtss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 51 00 sqrtsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 51 00 sqrtss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f2 0f 5c 00 subsd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: f3 0f 5c 00 subss xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 20 00 pmovsxbw xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 21 00 pmovsxbd xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 22 00 pmovsxbq xmm0,WORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 23 00 pmovsxwd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 24 00 pmovsxwq xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 25 00 pmovsxdq xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 30 00 pmovzxbw xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 31 00 pmovzxbd xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 32 00 pmovzxbq xmm0,WORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 33 00 pmovzxwd xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq xmm0,DWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq xmm0,QWORD PTR \[eax\]
+[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps xmm0,DWORD PTR \[eax\],0x0
#pass
diff --git a/gas/testsuite/gas/i386/simd.d b/gas/testsuite/gas/i386/simd.d
index 110105e..1e76bb1 100644
--- a/gas/testsuite/gas/i386/simd.d
+++ b/gas/testsuite/gas/i386/simd.d
@@ -84,8 +84,81 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq \(%eax\),%xmm0
[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq \(%eax\),%xmm0
[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps \$0x0,\(%eax\),%xmm0
-[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si \(%eax\),%eax
-[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si \(%eax\),%eax
+[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu %xmm1,0x12345678
+[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd %xmm1,0x12345678
+[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps %xmm1,0x12345678
+[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd %xmm1,0x12345678
+[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps %xmm1,0x12345678
+[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw \$0x90,0x12345678,%xmm1
+[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw \$0x90,0x12345678,%xmm1
+[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw 0x12345678,%mm1
+[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq 0x12345678,%mm1
+[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd 0x12345678,%mm1
+[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd 0x12345678,%xmm1
+[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss 0x12345678,%xmm1
+[ ]*[a-f0-9]+: f2 0f c2 00 00 cmpeqsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f c2 00 00 cmpeqss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 2a 00 cvtpi2pd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 0f 2a 00 cvtpi2ps \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 0f 2d 00 cvtps2pi \(%eax\),%mm0
[ ]*[a-f0-9]+: f2 0f 2d 00 cvtsd2si \(%eax\),%eax
[ ]*[a-f0-9]+: f2 0f 2c 00 cvttsd2si \(%eax\),%eax
+[ ]*[a-f0-9]+: f2 0f 5a 00 cvtsd2ss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5a 00 cvtss2sd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si \(%eax\),%eax
+[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si \(%eax\),%eax
+[ ]*[a-f0-9]+: f2 0f 5e 00 divsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5e 00 divss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 5f 00 maxsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5f 00 maxss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 2b 00 movntsd %xmm0,\(%eax\)
+[ ]*[a-f0-9]+: f3 0f 2b 00 movntss %xmm0,\(%eax\)
+[ ]*[a-f0-9]+: f2 0f 10 00 movsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 11 00 movsd %xmm0,\(%eax\)
+[ ]*[a-f0-9]+: f3 0f 10 00 movss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 11 00 movss %xmm0,\(%eax\)
+[ ]*[a-f0-9]+: f2 0f 59 00 mulsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 59 00 mulss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 53 00 rcpss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 3a 0b 00 00 roundsd \$0x0,\(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 3a 0a 00 00 roundss \$0x0,\(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 52 00 rsqrtss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 51 00 sqrtsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 51 00 sqrtss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 5c 00 subsd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5c 00 subss \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 20 00 pmovsxbw \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 21 00 pmovsxbd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 22 00 pmovsxbq \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 23 00 pmovsxwd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 24 00 pmovsxwq \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 25 00 pmovsxdq \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 30 00 pmovzxbw \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 31 00 pmovzxbd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 32 00 pmovzxbq \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 33 00 pmovzxwd \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq \(%eax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps \$0x0,\(%eax\),%xmm0
#pass
diff --git a/gas/testsuite/gas/i386/simd.s b/gas/testsuite/gas/i386/simd.s
index ac4f047..b600a6d 100644
--- a/gas/testsuite/gas/i386/simd.s
+++ b/gas/testsuite/gas/i386/simd.s
@@ -81,7 +81,81 @@ _start:
insertps $0x0,(%eax),%xmm0
.intel_syntax noprefix
- cvtss2si eax,DWORD PTR [eax]
- cvttss2si eax,DWORD PTR [eax]
- cvtsd2si eax,QWORD PTR [eax]
- cvttsd2si eax,QWORD PTR [eax]
+
+addsubps xmm1,XMMWORD PTR ds:0x12345678
+comisd xmm1,QWORD PTR ds:0x12345678
+comiss xmm1,DWORD PTR ds:0x12345678
+cvtdq2pd xmm1,QWORD PTR ds:0x12345678
+cvtpd2dq xmm1,XMMWORD PTR ds:0x12345678
+cvtps2pd xmm1,QWORD PTR ds:0x12345678
+cvttps2dq xmm1,XMMWORD PTR ds:0x12345678
+haddps xmm1,XMMWORD PTR ds:0x12345678
+movdqu XMMWORD PTR ds:0x12345678,xmm1
+movdqu xmm1,XMMWORD PTR ds:0x12345678
+movhpd QWORD PTR ds:0x12345678,xmm1
+movhpd xmm1,QWORD PTR ds:0x12345678
+movhps QWORD PTR ds:0x12345678,xmm1
+movhps xmm1,QWORD PTR ds:0x12345678
+movlpd QWORD PTR ds:0x12345678,xmm1
+movlpd xmm1,QWORD PTR ds:0x12345678
+movlps QWORD PTR ds:0x12345678,xmm1
+movlps xmm1,QWORD PTR ds:0x12345678
+movshdup xmm1,XMMWORD PTR ds:0x12345678
+movsldup xmm1,XMMWORD PTR ds:0x12345678
+pshufhw xmm1,XMMWORD PTR ds:0x12345678,0x90
+pshuflw xmm1,XMMWORD PTR ds:0x12345678,0x90
+punpcklbw mm1,DWORD PTR ds:0x12345678
+punpckldq mm1,DWORD PTR ds:0x12345678
+punpcklwd mm1,DWORD PTR ds:0x12345678
+punpcklbw xmm1,XMMWORD PTR ds:0x12345678
+punpckldq xmm1,XMMWORD PTR ds:0x12345678
+punpcklwd xmm1,XMMWORD PTR ds:0x12345678
+punpcklqdq xmm1,XMMWORD PTR ds:0x12345678
+ucomisd xmm1,QWORD PTR ds:0x12345678
+ucomiss xmm1,DWORD PTR ds:0x12345678
+cmpeqsd xmm0,QWORD PTR [eax]
+cmpeqss xmm0,DWORD PTR [eax]
+cvtpi2pd xmm0,QWORD PTR [eax]
+cvtpi2ps xmm0,QWORD PTR [eax]
+cvtps2pi mm0,QWORD PTR [eax]
+cvtsd2si eax,QWORD PTR [eax]
+cvttsd2si eax,QWORD PTR [eax]
+cvtsd2ss xmm0,QWORD PTR [eax]
+cvtss2sd xmm0,DWORD PTR [eax]
+cvtss2si eax,DWORD PTR [eax]
+cvttss2si eax,DWORD PTR [eax]
+divsd xmm0,QWORD PTR [eax]
+divss xmm0,DWORD PTR [eax]
+maxsd xmm0,QWORD PTR [eax]
+maxss xmm0,DWORD PTR [eax]
+minss xmm0,DWORD PTR [eax]
+minss xmm0,DWORD PTR [eax]
+movntsd QWORD PTR [eax],xmm0
+movntss DWORD PTR [eax],xmm0
+movsd xmm0,QWORD PTR [eax]
+movsd QWORD PTR [eax],xmm0
+movss xmm0,DWORD PTR [eax]
+movss DWORD PTR [eax],xmm0
+mulsd xmm0,QWORD PTR [eax]
+mulss xmm0,DWORD PTR [eax]
+rcpss xmm0,DWORD PTR [eax]
+roundsd xmm0,QWORD PTR [eax],0x0
+roundss xmm0,DWORD PTR [eax],0x0
+rsqrtss xmm0,DWORD PTR [eax]
+sqrtsd xmm0,QWORD PTR [eax]
+sqrtss xmm0,DWORD PTR [eax]
+subsd xmm0,QWORD PTR [eax]
+subss xmm0,DWORD PTR [eax]
+pmovsxbw xmm0,QWORD PTR [eax]
+pmovsxbd xmm0,DWORD PTR [eax]
+pmovsxbq xmm0,WORD PTR [eax]
+pmovsxwd xmm0,QWORD PTR [eax]
+pmovsxwq xmm0,DWORD PTR [eax]
+pmovsxdq xmm0,QWORD PTR [eax]
+pmovzxbw xmm0,QWORD PTR [eax]
+pmovzxbd xmm0,DWORD PTR [eax]
+pmovzxbq xmm0,WORD PTR [eax]
+pmovzxwd xmm0,QWORD PTR [eax]
+pmovzxwq xmm0,DWORD PTR [eax]
+pmovzxdq xmm0,QWORD PTR [eax]
+insertps xmm0,DWORD PTR [eax],0x0
diff --git a/gas/testsuite/gas/i386/x86-64-simd-intel.d b/gas/testsuite/gas/i386/x86-64-simd-intel.d
index d121902..89d0b27 100644
--- a/gas/testsuite/gas/i386/x86-64-simd-intel.d
+++ b/gas/testsuite/gas/i386/x86-64-simd-intel.d
@@ -8,39 +8,39 @@
Disassembly of section .text:
0+ <_start>:
-[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss xmm1,DWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu XMMWORD PTR \[rip\+0x12345678\],xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd QWORD PTR \[rip\+0x12345678\],xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps QWORD PTR \[rip\+0x12345678\],xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd QWORD PTR \[rip\+0x12345678\],xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps QWORD PTR \[rip\+0x12345678\],xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq QWORD PTR \[rip\+0x12345678\],xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw xmm1,XMMWORD PTR \[rip\+0x12345678\],0x90[ ]*(#.*)?
-[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw xmm1,XMMWORD PTR \[rip\+0x12345678\],0x90[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw mm1,DWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq mm1,DWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd mm1,DWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq xmm1,XMMWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd xmm1,QWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss xmm1,DWORD PTR \[rip\+0x12345678\][ ]*(#.*)?
+[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345680 <_start\+0x12345680>
+[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd xmm1,QWORD PTR \[rip\+0x12345678\] # 12345688 <_start\+0x12345688>
+[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss xmm1,DWORD PTR \[rip\+0x12345678\] # 1234568f <_start\+0x1234568f>
+[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd xmm1,QWORD PTR \[rip\+0x12345678\] # 12345697 <_start\+0x12345697>
+[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234569f <_start\+0x1234569f>
+[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd xmm1,QWORD PTR \[rip\+0x12345678\] # 123456a6 <_start\+0x123456a6>
+[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 123456ae <_start\+0x123456ae>
+[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps xmm1,XMMWORD PTR \[rip\+0x12345678\] # 123456b6 <_start\+0x123456b6>
+[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu XMMWORD PTR \[rip\+0x12345678\],xmm1 # 123456be <_start\+0x123456be>
+[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu xmm1,XMMWORD PTR \[rip\+0x12345678\] # 123456c6 <_start\+0x123456c6>
+[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd QWORD PTR \[rip\+0x12345678\],xmm1 # 123456ce <_start\+0x123456ce>
+[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd xmm1,QWORD PTR \[rip\+0x12345678\] # 123456d6 <_start\+0x123456d6>
+[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps QWORD PTR \[rip\+0x12345678\],xmm1 # 123456dd <_start\+0x123456dd>
+[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps xmm1,QWORD PTR \[rip\+0x12345678\] # 123456e4 <_start\+0x123456e4>
+[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd QWORD PTR \[rip\+0x12345678\],xmm1 # 123456ec <_start\+0x123456ec>
+[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd xmm1,QWORD PTR \[rip\+0x12345678\] # 123456f4 <_start\+0x123456f4>
+[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps QWORD PTR \[rip\+0x12345678\],xmm1 # 123456fb <_start\+0x123456fb>
+[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps xmm1,QWORD PTR \[rip\+0x12345678\] # 12345702 <_start\+0x12345702>
+[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq QWORD PTR \[rip\+0x12345678\],xmm1 # 1234570a <_start\+0x1234570a>
+[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq xmm1,QWORD PTR \[rip\+0x12345678\] # 12345712 <_start\+0x12345712>
+[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234571a <_start\+0x1234571a>
+[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345722 <_start\+0x12345722>
+[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw xmm1,XMMWORD PTR \[rip\+0x12345678\],0x90 # 1234572b <_start\+0x1234572b>
+[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw xmm1,XMMWORD PTR \[rip\+0x12345678\],0x90 # 12345734 <_start\+0x12345734>
+[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw mm1,DWORD PTR \[rip\+0x12345678\] # 1234573b <_start\+0x1234573b>
+[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq mm1,DWORD PTR \[rip\+0x12345678\] # 12345742 <_start\+0x12345742>
+[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd mm1,DWORD PTR \[rip\+0x12345678\] # 12345749 <_start\+0x12345749>
+[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345751 <_start\+0x12345751>
+[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345759 <_start\+0x12345759>
+[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345761 <_start\+0x12345761>
+[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345769 <_start\+0x12345769>
+[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd xmm1,QWORD PTR \[rip\+0x12345678\] # 12345771 <_start\+0x12345771>
+[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss xmm1,DWORD PTR \[rip\+0x12345678\] # 12345778 <_start\+0x12345778>
[ ]*[a-f0-9]+: f2 0f c2 00 00 cmpeqsd xmm0,QWORD PTR \[rax\]
[ ]*[a-f0-9]+: f3 0f c2 00 00 cmpeqss xmm0,DWORD PTR \[rax\]
[ ]*[a-f0-9]+: 66 0f 2a 00 cvtpi2pd xmm0,QWORD PTR \[rax\]
@@ -91,12 +91,87 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq xmm0,DWORD PTR \[rax\]
[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq xmm0,QWORD PTR \[rax\]
[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps xmm0,DWORD PTR \[rax\],0x0
-[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si eax,DWORD PTR \[rax\]
-[ ]*[a-f0-9]+: f3 48 0f 2d 00 cvtss2si rax,DWORD PTR \[rax\]
-[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si eax,DWORD PTR \[rax\]
-[ ]*[a-f0-9]+: f3 48 0f 2c 00 cvttss2si rax,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234585e <_start\+0x1234585e>
+[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd xmm1,QWORD PTR \[rip\+0x12345678\] # 12345866 <_start\+0x12345866>
+[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss xmm1,DWORD PTR \[rip\+0x12345678\] # 1234586d <_start\+0x1234586d>
+[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd xmm1,QWORD PTR \[rip\+0x12345678\] # 12345875 <_start\+0x12345875>
+[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234587d <_start\+0x1234587d>
+[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd xmm1,QWORD PTR \[rip\+0x12345678\] # 12345884 <_start\+0x12345884>
+[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234588c <_start\+0x1234588c>
+[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345894 <_start\+0x12345894>
+[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu XMMWORD PTR \[rip\+0x12345678\],xmm1 # 1234589c <_start\+0x1234589c>
+[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu xmm1,XMMWORD PTR \[rip\+0x12345678\] # 123458a4 <_start\+0x123458a4>
+[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd QWORD PTR \[rip\+0x12345678\],xmm1 # 123458ac <_start\+0x123458ac>
+[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd xmm1,QWORD PTR \[rip\+0x12345678\] # 123458b4 <_start\+0x123458b4>
+[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps QWORD PTR \[rip\+0x12345678\],xmm1 # 123458bb <_start\+0x123458bb>
+[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps xmm1,QWORD PTR \[rip\+0x12345678\] # 123458c2 <_start\+0x123458c2>
+[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd QWORD PTR \[rip\+0x12345678\],xmm1 # 123458ca <_start\+0x123458ca>
+[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd xmm1,QWORD PTR \[rip\+0x12345678\] # 123458d2 <_start\+0x123458d2>
+[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps QWORD PTR \[rip\+0x12345678\],xmm1 # 123458d9 <_start\+0x123458d9>
+[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps xmm1,QWORD PTR \[rip\+0x12345678\] # 123458e0 <_start\+0x123458e0>
+[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq QWORD PTR \[rip\+0x12345678\],xmm1 # 123458e8 <_start\+0x123458e8>
+[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq xmm1,QWORD PTR \[rip\+0x12345678\] # 123458f0 <_start\+0x123458f0>
+[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup xmm1,XMMWORD PTR \[rip\+0x12345678\] # 123458f8 <_start\+0x123458f8>
+[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345900 <_start\+0x12345900>
+[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw xmm1,XMMWORD PTR \[rip\+0x12345678\],0x90 # 12345909 <_start\+0x12345909>
+[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw xmm1,XMMWORD PTR \[rip\+0x12345678\],0x90 # 12345912 <_start\+0x12345912>
+[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw mm1,DWORD PTR \[rip\+0x12345678\] # 12345919 <_start\+0x12345919>
+[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq mm1,DWORD PTR \[rip\+0x12345678\] # 12345920 <_start\+0x12345920>
+[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd mm1,DWORD PTR \[rip\+0x12345678\] # 12345927 <_start\+0x12345927>
+[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234592f <_start\+0x1234592f>
+[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345937 <_start\+0x12345937>
+[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd xmm1,XMMWORD PTR \[rip\+0x12345678\] # 1234593f <_start\+0x1234593f>
+[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq xmm1,XMMWORD PTR \[rip\+0x12345678\] # 12345947 <_start\+0x12345947>
+[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd xmm1,QWORD PTR \[rip\+0x12345678\] # 1234594f <_start\+0x1234594f>
+[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss xmm1,DWORD PTR \[rip\+0x12345678\] # 12345956 <_start\+0x12345956>
+[ ]*[a-f0-9]+: f2 0f c2 00 00 cmpeqsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f c2 00 00 cmpeqss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 2a 00 cvtpi2pd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 0f 2a 00 cvtpi2ps xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 0f 2d 00 cvtps2pi mm0,QWORD PTR \[rax\]
[ ]*[a-f0-9]+: f2 0f 2d 00 cvtsd2si eax,QWORD PTR \[rax\]
[ ]*[a-f0-9]+: f2 48 0f 2d 00 cvtsd2si rax,QWORD PTR \[rax\]
[ ]*[a-f0-9]+: f2 0f 2c 00 cvttsd2si eax,QWORD PTR \[rax\]
[ ]*[a-f0-9]+: f2 48 0f 2c 00 cvttsd2si rax,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 5a 00 cvtsd2ss xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 5a 00 cvtss2sd xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si eax,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 48 0f 2d 00 cvtss2si rax,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si eax,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 48 0f 2c 00 cvttss2si rax,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 5e 00 divsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 5e 00 divss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 5f 00 maxsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 5f 00 maxss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 2b 00 movntsd QWORD PTR \[rax\],xmm0
+[ ]*[a-f0-9]+: f3 0f 2b 00 movntss DWORD PTR \[rax\],xmm0
+[ ]*[a-f0-9]+: f2 0f 10 00 movsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 11 00 movsd QWORD PTR \[rax\],xmm0
+[ ]*[a-f0-9]+: f3 0f 10 00 movss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 11 00 movss DWORD PTR \[rax\],xmm0
+[ ]*[a-f0-9]+: f2 0f 59 00 mulsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 59 00 mulss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 53 00 rcpss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 3a 0b 00 00 roundsd xmm0,QWORD PTR \[rax\],0x0
+[ ]*[a-f0-9]+: 66 0f 3a 0a 00 00 roundss xmm0,DWORD PTR \[rax\],0x0
+[ ]*[a-f0-9]+: f3 0f 52 00 rsqrtss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 51 00 sqrtsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 51 00 sqrtss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f2 0f 5c 00 subsd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: f3 0f 5c 00 subss xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 20 00 pmovsxbw xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 21 00 pmovsxbd xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 22 00 pmovsxbq xmm0,WORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 23 00 pmovsxwd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 24 00 pmovsxwq xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 25 00 pmovsxdq xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 30 00 pmovzxbw xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 31 00 pmovzxbd xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 32 00 pmovzxbq xmm0,WORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 33 00 pmovzxwd xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq xmm0,DWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq xmm0,QWORD PTR \[rax\]
+[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps xmm0,DWORD PTR \[rax\],0x0
#pass
diff --git a/gas/testsuite/gas/i386/x86-64-simd.d b/gas/testsuite/gas/i386/x86-64-simd.d
index 7dfc943..3ff0385 100644
--- a/gas/testsuite/gas/i386/x86-64-simd.d
+++ b/gas/testsuite/gas/i386/x86-64-simd.d
@@ -7,39 +7,39 @@
Disassembly of section .text:
0+ <_start>:
-[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu %xmm1,0x12345678\(%rip\)[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd %xmm1,0x12345678\(%rip\)[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps %xmm1,0x12345678\(%rip\)[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd %xmm1,0x12345678\(%rip\)[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps %xmm1,0x12345678\(%rip\)[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq %xmm1,0x12345678\(%rip\)[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw \$0x90,0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw \$0x90,0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%mm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%mm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%mm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
-[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss 0x12345678\(%rip\),%xmm1[ ]*(#.*)?
+[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps 0x12345678\(%rip\),%xmm1 # 12345680 <_start\+0x12345680>
+[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd 0x12345678\(%rip\),%xmm1 # 12345688 <_start\+0x12345688>
+[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss 0x12345678\(%rip\),%xmm1 # 1234568f <_start\+0x1234568f>
+[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd 0x12345678\(%rip\),%xmm1 # 12345697 <_start\+0x12345697>
+[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq 0x12345678\(%rip\),%xmm1 # 1234569f <_start\+0x1234569f>
+[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd 0x12345678\(%rip\),%xmm1 # 123456a6 <_start\+0x123456a6>
+[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq 0x12345678\(%rip\),%xmm1 # 123456ae <_start\+0x123456ae>
+[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps 0x12345678\(%rip\),%xmm1 # 123456b6 <_start\+0x123456b6>
+[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu %xmm1,0x12345678\(%rip\) # 123456be <_start\+0x123456be>
+[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu 0x12345678\(%rip\),%xmm1 # 123456c6 <_start\+0x123456c6>
+[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd %xmm1,0x12345678\(%rip\) # 123456ce <_start\+0x123456ce>
+[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd 0x12345678\(%rip\),%xmm1 # 123456d6 <_start\+0x123456d6>
+[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps %xmm1,0x12345678\(%rip\) # 123456dd <_start\+0x123456dd>
+[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps 0x12345678\(%rip\),%xmm1 # 123456e4 <_start\+0x123456e4>
+[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd %xmm1,0x12345678\(%rip\) # 123456ec <_start\+0x123456ec>
+[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd 0x12345678\(%rip\),%xmm1 # 123456f4 <_start\+0x123456f4>
+[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps %xmm1,0x12345678\(%rip\) # 123456fb <_start\+0x123456fb>
+[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps 0x12345678\(%rip\),%xmm1 # 12345702 <_start\+0x12345702>
+[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq %xmm1,0x12345678\(%rip\) # 1234570a <_start\+0x1234570a>
+[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq 0x12345678\(%rip\),%xmm1 # 12345712 <_start\+0x12345712>
+[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup 0x12345678\(%rip\),%xmm1 # 1234571a <_start\+0x1234571a>
+[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup 0x12345678\(%rip\),%xmm1 # 12345722 <_start\+0x12345722>
+[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw \$0x90,0x12345678\(%rip\),%xmm1 # 1234572b <_start\+0x1234572b>
+[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw \$0x90,0x12345678\(%rip\),%xmm1 # 12345734 <_start\+0x12345734>
+[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%mm1 # 1234573b <_start\+0x1234573b>
+[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%mm1 # 12345742 <_start\+0x12345742>
+[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%mm1 # 12345749 <_start\+0x12345749>
+[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%xmm1 # 12345751 <_start\+0x12345751>
+[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%xmm1 # 12345759 <_start\+0x12345759>
+[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%xmm1 # 12345761 <_start\+0x12345761>
+[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq 0x12345678\(%rip\),%xmm1 # 12345769 <_start\+0x12345769>
+[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd 0x12345678\(%rip\),%xmm1 # 12345771 <_start\+0x12345771>
+[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss 0x12345678\(%rip\),%xmm1 # 12345778 <_start\+0x12345778>
[ ]*[a-f0-9]+: f2 0f c2 00 00 cmpeqsd \(%rax\),%xmm0
[ ]*[a-f0-9]+: f3 0f c2 00 00 cmpeqss \(%rax\),%xmm0
[ ]*[a-f0-9]+: 66 0f 2a 00 cvtpi2pd \(%rax\),%xmm0
@@ -90,12 +90,87 @@ Disassembly of section .text:
[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq \(%rax\),%xmm0
[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq \(%rax\),%xmm0
[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps \$0x0,\(%rax\),%xmm0
-[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si \(%rax\),%eax
-[ ]*[a-f0-9]+: f3 48 0f 2d 00 cvtss2siq \(%rax\),%rax
-[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si \(%rax\),%eax
-[ ]*[a-f0-9]+: f3 48 0f 2c 00 cvttss2siq \(%rax\),%rax
+[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps 0x12345678\(%rip\),%xmm1 # 1234585e <_start\+0x1234585e>
+[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd 0x12345678\(%rip\),%xmm1 # 12345866 <_start\+0x12345866>
+[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss 0x12345678\(%rip\),%xmm1 # 1234586d <_start\+0x1234586d>
+[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd 0x12345678\(%rip\),%xmm1 # 12345875 <_start\+0x12345875>
+[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq 0x12345678\(%rip\),%xmm1 # 1234587d <_start\+0x1234587d>
+[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd 0x12345678\(%rip\),%xmm1 # 12345884 <_start\+0x12345884>
+[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq 0x12345678\(%rip\),%xmm1 # 1234588c <_start\+0x1234588c>
+[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps 0x12345678\(%rip\),%xmm1 # 12345894 <_start\+0x12345894>
+[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu %xmm1,0x12345678\(%rip\) # 1234589c <_start\+0x1234589c>
+[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu 0x12345678\(%rip\),%xmm1 # 123458a4 <_start\+0x123458a4>
+[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd %xmm1,0x12345678\(%rip\) # 123458ac <_start\+0x123458ac>
+[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd 0x12345678\(%rip\),%xmm1 # 123458b4 <_start\+0x123458b4>
+[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps %xmm1,0x12345678\(%rip\) # 123458bb <_start\+0x123458bb>
+[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps 0x12345678\(%rip\),%xmm1 # 123458c2 <_start\+0x123458c2>
+[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd %xmm1,0x12345678\(%rip\) # 123458ca <_start\+0x123458ca>
+[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd 0x12345678\(%rip\),%xmm1 # 123458d2 <_start\+0x123458d2>
+[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps %xmm1,0x12345678\(%rip\) # 123458d9 <_start\+0x123458d9>
+[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps 0x12345678\(%rip\),%xmm1 # 123458e0 <_start\+0x123458e0>
+[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq %xmm1,0x12345678\(%rip\) # 123458e8 <_start\+0x123458e8>
+[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq 0x12345678\(%rip\),%xmm1 # 123458f0 <_start\+0x123458f0>
+[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup 0x12345678\(%rip\),%xmm1 # 123458f8 <_start\+0x123458f8>
+[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup 0x12345678\(%rip\),%xmm1 # 12345900 <_start\+0x12345900>
+[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw \$0x90,0x12345678\(%rip\),%xmm1 # 12345909 <_start\+0x12345909>
+[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw \$0x90,0x12345678\(%rip\),%xmm1 # 12345912 <_start\+0x12345912>
+[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%mm1 # 12345919 <_start\+0x12345919>
+[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%mm1 # 12345920 <_start\+0x12345920>
+[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%mm1 # 12345927 <_start\+0x12345927>
+[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%xmm1 # 1234592f <_start\+0x1234592f>
+[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%xmm1 # 12345937 <_start\+0x12345937>
+[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%xmm1 # 1234593f <_start\+0x1234593f>
+[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq 0x12345678\(%rip\),%xmm1 # 12345947 <_start\+0x12345947>
+[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd 0x12345678\(%rip\),%xmm1 # 1234594f <_start\+0x1234594f>
+[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss 0x12345678\(%rip\),%xmm1 # 12345956 <_start\+0x12345956>
+[ ]*[a-f0-9]+: f2 0f c2 00 00 cmpeqsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f c2 00 00 cmpeqss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 2a 00 cvtpi2pd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 0f 2a 00 cvtpi2ps \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 0f 2d 00 cvtps2pi \(%rax\),%mm0
[ ]*[a-f0-9]+: f2 0f 2d 00 cvtsd2si \(%rax\),%eax
[ ]*[a-f0-9]+: f2 48 0f 2d 00 cvtsd2siq \(%rax\),%rax
[ ]*[a-f0-9]+: f2 0f 2c 00 cvttsd2si \(%rax\),%eax
[ ]*[a-f0-9]+: f2 48 0f 2c 00 cvttsd2siq \(%rax\),%rax
+[ ]*[a-f0-9]+: f2 0f 5a 00 cvtsd2ss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5a 00 cvtss2sd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 2d 00 cvtss2si \(%rax\),%eax
+[ ]*[a-f0-9]+: f3 48 0f 2d 00 cvtss2siq \(%rax\),%rax
+[ ]*[a-f0-9]+: f3 0f 2c 00 cvttss2si \(%rax\),%eax
+[ ]*[a-f0-9]+: f3 48 0f 2c 00 cvttss2siq \(%rax\),%rax
+[ ]*[a-f0-9]+: f2 0f 5e 00 divsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5e 00 divss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 5f 00 maxsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5f 00 maxss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5d 00 minss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 2b 00 movntsd %xmm0,\(%rax\)
+[ ]*[a-f0-9]+: f3 0f 2b 00 movntss %xmm0,\(%rax\)
+[ ]*[a-f0-9]+: f2 0f 10 00 movsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 11 00 movsd %xmm0,\(%rax\)
+[ ]*[a-f0-9]+: f3 0f 10 00 movss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 11 00 movss %xmm0,\(%rax\)
+[ ]*[a-f0-9]+: f2 0f 59 00 mulsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 59 00 mulss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 53 00 rcpss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 3a 0b 00 00 roundsd \$0x0,\(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 3a 0a 00 00 roundss \$0x0,\(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 52 00 rsqrtss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 51 00 sqrtsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 51 00 sqrtss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f2 0f 5c 00 subsd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: f3 0f 5c 00 subss \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 20 00 pmovsxbw \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 21 00 pmovsxbd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 22 00 pmovsxbq \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 23 00 pmovsxwd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 24 00 pmovsxwq \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 25 00 pmovsxdq \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 30 00 pmovzxbw \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 31 00 pmovzxbd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 32 00 pmovzxbq \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 33 00 pmovzxwd \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 34 00 pmovzxwq \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 38 35 00 pmovzxdq \(%rax\),%xmm0
+[ ]*[a-f0-9]+: 66 0f 3a 21 00 00 insertps \$0x0,\(%rax\),%xmm0
#pass
diff --git a/gas/testsuite/gas/i386/x86-64-simd.s b/gas/testsuite/gas/i386/x86-64-simd.s
index 08c2fac..a09a353 100644
--- a/gas/testsuite/gas/i386/x86-64-simd.s
+++ b/gas/testsuite/gas/i386/x86-64-simd.s
@@ -87,11 +87,87 @@ _start:
insertps $0x0,(%rax),%xmm0
.intel_syntax noprefix
- cvtss2si eax,DWORD PTR [rax]
- cvtss2si rax,DWORD PTR [rax]
- cvttss2si eax,DWORD PTR [rax]
- cvttss2si rax,DWORD PTR [rax]
- cvtsd2si eax,QWORD PTR [rax]
- cvtsd2si rax,QWORD PTR [rax]
- cvttsd2si eax,QWORD PTR [rax]
- cvttsd2si rax,QWORD PTR [rax]
+
+addsubps xmm1,XMMWORD PTR [rip+0x12345678]
+comisd xmm1,QWORD PTR [rip+0x12345678]
+comiss xmm1,DWORD PTR [rip+0x12345678]
+cvtdq2pd xmm1,QWORD PTR [rip+0x12345678]
+cvtpd2dq xmm1,XMMWORD PTR [rip+0x12345678]
+cvtps2pd xmm1,QWORD PTR [rip+0x12345678]
+cvttps2dq xmm1,XMMWORD PTR [rip+0x12345678]
+haddps xmm1,XMMWORD PTR [rip+0x12345678]
+movdqu XMMWORD PTR [rip+0x12345678],xmm1
+movdqu xmm1,XMMWORD PTR [rip+0x12345678]
+movhpd QWORD PTR [rip+0x12345678],xmm1
+movhpd xmm1,QWORD PTR [rip+0x12345678]
+movhps QWORD PTR [rip+0x12345678],xmm1
+movhps xmm1,QWORD PTR [rip+0x12345678]
+movlpd QWORD PTR [rip+0x12345678],xmm1
+movlpd xmm1,QWORD PTR [rip+0x12345678]
+movlps QWORD PTR [rip+0x12345678],xmm1
+movlps xmm1,QWORD PTR [rip+0x12345678]
+movq QWORD PTR [rip+0x12345678],xmm1
+movq xmm1,QWORD PTR [rip+0x12345678]
+movshdup xmm1,XMMWORD PTR [rip+0x12345678]
+movsldup xmm1,XMMWORD PTR [rip+0x12345678]
+pshufhw xmm1,XMMWORD PTR [rip+0x12345678],0x90
+pshuflw xmm1,XMMWORD PTR [rip+0x12345678],0x90
+punpcklbw mm1,DWORD PTR [rip+0x12345678]
+punpckldq mm1,DWORD PTR [rip+0x12345678]
+punpcklwd mm1,DWORD PTR [rip+0x12345678]
+punpcklbw xmm1,XMMWORD PTR [rip+0x12345678]
+punpckldq xmm1,XMMWORD PTR [rip+0x12345678]
+punpcklwd xmm1,XMMWORD PTR [rip+0x12345678]
+punpcklqdq xmm1,XMMWORD PTR [rip+0x12345678]
+ucomisd xmm1,QWORD PTR [rip+0x12345678]
+ucomiss xmm1,DWORD PTR [rip+0x12345678]
+cmpeqsd xmm0,QWORD PTR [rax]
+cmpeqss xmm0,DWORD PTR [rax]
+cvtpi2pd xmm0,QWORD PTR [rax]
+cvtpi2ps xmm0,QWORD PTR [rax]
+cvtps2pi mm0,QWORD PTR [rax]
+cvtsd2si eax,QWORD PTR [rax]
+cvtsd2si rax,QWORD PTR [rax]
+cvttsd2si eax,QWORD PTR [rax]
+cvttsd2si rax,QWORD PTR [rax]
+cvtsd2ss xmm0,QWORD PTR [rax]
+cvtss2sd xmm0,DWORD PTR [rax]
+cvtss2si eax,DWORD PTR [rax]
+cvtss2si rax,DWORD PTR [rax]
+cvttss2si eax,DWORD PTR [rax]
+cvttss2si rax,DWORD PTR [rax]
+divsd xmm0,QWORD PTR [rax]
+divss xmm0,DWORD PTR [rax]
+maxsd xmm0,QWORD PTR [rax]
+maxss xmm0,DWORD PTR [rax]
+minss xmm0,DWORD PTR [rax]
+minss xmm0,DWORD PTR [rax]
+movntsd QWORD PTR [rax],xmm0
+movntss DWORD PTR [rax],xmm0
+movsd xmm0,QWORD PTR [rax]
+movsd QWORD PTR [rax],xmm0
+movss xmm0,DWORD PTR [rax]
+movss DWORD PTR [rax],xmm0
+mulsd xmm0,QWORD PTR [rax]
+mulss xmm0,DWORD PTR [rax]
+rcpss xmm0,DWORD PTR [rax]
+roundsd xmm0,QWORD PTR [rax],0x0
+roundss xmm0,DWORD PTR [rax],0x0
+rsqrtss xmm0,DWORD PTR [rax]
+sqrtsd xmm0,QWORD PTR [rax]
+sqrtss xmm0,DWORD PTR [rax]
+subsd xmm0,QWORD PTR [rax]
+subss xmm0,DWORD PTR [rax]
+pmovsxbw xmm0,QWORD PTR [rax]
+pmovsxbd xmm0,DWORD PTR [rax]
+pmovsxbq xmm0,WORD PTR [rax]
+pmovsxwd xmm0,QWORD PTR [rax]
+pmovsxwq xmm0,DWORD PTR [rax]
+pmovsxdq xmm0,QWORD PTR [rax]
+pmovzxbw xmm0,QWORD PTR [rax]
+pmovzxbd xmm0,DWORD PTR [rax]
+pmovzxbq xmm0,WORD PTR [rax]
+pmovzxwd xmm0,QWORD PTR [rax]
+pmovzxwq xmm0,DWORD PTR [rax]
+pmovzxdq xmm0,QWORD PTR [rax]
+insertps xmm0,DWORD PTR [rax],0x0