diff options
author | Jan Beulich <jbeulich@novell.com> | 2007-09-12 13:20:31 +0000 |
---|---|---|
committer | Jan Beulich <jbeulich@novell.com> | 2007-09-12 13:20:31 +0000 |
commit | ae91ad40e9ad11f9141b0940215201cfb4f8f992 (patch) | |
tree | 880e913522d73e06f81e2ad294bdbd1bb9f030ae /gas | |
parent | 01a3c21322a91d77e51645f58062b9e63cec1f63 (diff) | |
download | gdb-ae91ad40e9ad11f9141b0940215201cfb4f8f992.zip gdb-ae91ad40e9ad11f9141b0940215201cfb4f8f992.tar.gz gdb-ae91ad40e9ad11f9141b0940215201cfb4f8f992.tar.bz2 |
gas/testsuite/
2007-09-12 Jan Beulich <jbeulich@novell.com>
* gas/i386/sse4_1.s, gas/i386/x86-64-sse4_1.s: Add two-operand forms
of blendvps, blendvpd, and pblendvb.
* gas/i386/sse4_1.d, gas/i386/sse4_1-intel.d,
gas/i386/x86-64-sse4_1.d, gas/i386/x86-64-sse4_1-intel.d: Adjust,
making last/first operand of blendvps, blendvpd, and pblendvb
optional.
opcodes/
2007-09-12 Jan Beulich <jbeulich@novell.com>
* i386-opc.tbl: Add two-operand forms of blendvps, blendvpd, and
pblendvb.
* i386-tbl.h: Regenerate.
Diffstat (limited to 'gas')
-rw-r--r-- | gas/testsuite/ChangeLog | 8 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/sse4_1-intel.d | 18 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/sse4_1.d | 18 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/sse4_1.s | 6 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-sse4_1-intel.d | 18 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-sse4_1.d | 18 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-sse4_1.s | 6 |
7 files changed, 68 insertions, 24 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index 3a61f51..d956da63 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,4 +1,12 @@ 2007-09-12 Jan Beulich <jbeulich@novell.com> + * gas/i386/sse4_1.s, gas/i386/x86-64-sse4_1.s: Add two-operand forms + of blendvps, blendvpd, and pblendvb. + * gas/i386/sse4_1.d, gas/i386/sse4_1-intel.d, + gas/i386/x86-64-sse4_1.d, gas/i386/x86-64-sse4_1-intel.d: Adjust, + making last/first operand of blendvps, blendvpd, and pblendvb + optional. + +2007-09-12 Jan Beulich <jbeulich@novell.com> * gas/i386/amdfam10.s, gas/i386/x86-64-amdfam10.s: Add Intel syntax code. * gas/i386/amdfam10.d, gas/i386/x86-64-amdfam10.d: Adjust. diff --git a/gas/testsuite/gas/i386/sse4_1-intel.d b/gas/testsuite/gas/i386/sse4_1-intel.d index c906249..2bc9c48 100644 --- a/gas/testsuite/gas/i386/sse4_1-intel.d +++ b/gas/testsuite/gas/i386/sse4_1-intel.d @@ -11,10 +11,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 0f 3a 0d c1 00 blendpd xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 3a 0c 01 00 blendps xmm0,XMMWORD PTR \[ecx\],0x0 [ ]*[a-f0-9]+: 66 0f 3a 0c c1 00 blendps xmm0,xmm1,0x0 -[ ]*[a-f0-9]+: 66 0f 38 15 01 blendvpd xmm0,XMMWORD PTR \[ecx\],xmm0 -[ ]*[a-f0-9]+: 66 0f 38 15 c1 blendvpd xmm0,xmm1,xmm0 -[ ]*[a-f0-9]+: 66 0f 38 14 01 blendvps xmm0,XMMWORD PTR \[ecx\],xmm0 -[ ]*[a-f0-9]+: 66 0f 38 14 c1 blendvps xmm0,xmm1,xmm0 +[ ]*[a-f0-9]+: 66 0f 38 15 01 blendvpd xmm0,XMMWORD PTR \[ecx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 15 c1 blendvpd xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 15 01 blendvpd xmm0,XMMWORD PTR \[ecx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 15 c1 blendvpd xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 01 blendvps xmm0,XMMWORD PTR \[ecx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 c1 blendvps xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 01 blendvps xmm0,XMMWORD PTR \[ecx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 c1 blendvps xmm0,xmm1(,xmm0)? [ ]*[a-f0-9]+: 66 0f 3a 41 01 00 dppd xmm0,XMMWORD PTR \[ecx\],0x0 [ ]*[a-f0-9]+: 66 0f 3a 41 c1 00 dppd xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 3a 40 01 00 dpps xmm0,XMMWORD PTR \[ecx\],0x0 @@ -28,8 +32,10 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 0f 3a 42 c1 00 mpsadbw xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 38 2b 01 packusdw xmm0,XMMWORD PTR \[ecx\] [ ]*[a-f0-9]+: 66 0f 38 2b c1 packusdw xmm0,xmm1 -[ ]*[a-f0-9]+: 66 0f 38 10 01 pblendvb xmm0,XMMWORD PTR \[ecx\],xmm0 -[ ]*[a-f0-9]+: 66 0f 38 10 c1 pblendvb xmm0,xmm1,xmm0 +[ ]*[a-f0-9]+: 66 0f 38 10 01 pblendvb xmm0,XMMWORD PTR \[ecx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 10 c1 pblendvb xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 10 01 pblendvb xmm0,XMMWORD PTR \[ecx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 10 c1 pblendvb xmm0,xmm1(,xmm0)? [ ]*[a-f0-9]+: 66 0f 3a 0e 01 00 pblendw xmm0,XMMWORD PTR \[ecx\],0x0 [ ]*[a-f0-9]+: 66 0f 3a 0e c1 00 pblendw xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 38 29 c1 pcmpeqq xmm0,xmm1 diff --git a/gas/testsuite/gas/i386/sse4_1.d b/gas/testsuite/gas/i386/sse4_1.d index 80607a9..1e03c82 100644 --- a/gas/testsuite/gas/i386/sse4_1.d +++ b/gas/testsuite/gas/i386/sse4_1.d @@ -10,10 +10,14 @@ Disassembly of section .text: [ ]*[0-9a-f]+: 66 0f 3a 0d c1 00 blendpd \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0c 01 00 blendps \$0x0,\(%ecx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0c c1 00 blendps \$0x0,%xmm1,%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 15 01 blendvpd %xmm0,\(%ecx\),%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 15 c1 blendvpd %xmm0,%xmm1,%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 14 01 blendvps %xmm0,\(%ecx\),%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 14 c1 blendvps %xmm0,%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 01 blendvpd (%xmm0,)?\(%ecx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 c1 blendvpd (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 01 blendvpd (%xmm0,)?\(%ecx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 c1 blendvpd (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 01 blendvps (%xmm0,)?\(%ecx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 c1 blendvps (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 01 blendvps (%xmm0,)?\(%ecx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 c1 blendvps (%xmm0,)?%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 41 01 00 dppd \$0x0,\(%ecx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 41 c1 00 dppd \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 40 01 00 dpps \$0x0,\(%ecx\),%xmm0 @@ -27,8 +31,10 @@ Disassembly of section .text: [ ]*[0-9a-f]+: 66 0f 3a 42 c1 00 mpsadbw \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 38 2b 01 packusdw \(%ecx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 38 2b c1 packusdw %xmm1,%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 10 01 pblendvb %xmm0,\(%ecx\),%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 10 c1 pblendvb %xmm0,%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 01 pblendvb (%xmm0,)?\(%ecx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 c1 pblendvb (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 01 pblendvb (%xmm0,)?\(%ecx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 c1 pblendvb (%xmm0,)?%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0e 01 00 pblendw \$0x0,\(%ecx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0e c1 00 pblendw \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 38 29 c1 pcmpeqq %xmm1,%xmm0 diff --git a/gas/testsuite/gas/i386/sse4_1.s b/gas/testsuite/gas/i386/sse4_1.s index 709bdd5..f9f4cab 100644 --- a/gas/testsuite/gas/i386/sse4_1.s +++ b/gas/testsuite/gas/i386/sse4_1.s @@ -8,8 +8,12 @@ foo: blendps $0,%xmm1,%xmm0 blendvpd %xmm0,(%ecx),%xmm0 blendvpd %xmm0,%xmm1,%xmm0 + blendvpd (%ecx),%xmm0 + blendvpd %xmm1,%xmm0 blendvps %xmm0,(%ecx),%xmm0 blendvps %xmm0,%xmm1,%xmm0 + blendvps (%ecx),%xmm0 + blendvps %xmm1,%xmm0 dppd $0,(%ecx),%xmm0 dppd $0,%xmm1,%xmm0 dpps $0,(%ecx),%xmm0 @@ -25,6 +29,8 @@ foo: packusdw %xmm1,%xmm0 pblendvb %xmm0,(%ecx),%xmm0 pblendvb %xmm0,%xmm1,%xmm0 + pblendvb (%ecx),%xmm0 + pblendvb %xmm1,%xmm0 pblendw $0,(%ecx),%xmm0 pblendw $0,%xmm1,%xmm0 pcmpeqq %xmm1,%xmm0 diff --git a/gas/testsuite/gas/i386/x86-64-sse4_1-intel.d b/gas/testsuite/gas/i386/x86-64-sse4_1-intel.d index e9f3f97..60a66b7 100644 --- a/gas/testsuite/gas/i386/x86-64-sse4_1-intel.d +++ b/gas/testsuite/gas/i386/x86-64-sse4_1-intel.d @@ -11,10 +11,14 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 0f 3a 0d c1 00 blendpd xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 3a 0c 01 00 blendps xmm0,XMMWORD PTR \[rcx\],0x0 [ ]*[a-f0-9]+: 66 0f 3a 0c c1 00 blendps xmm0,xmm1,0x0 -[ ]*[a-f0-9]+: 66 0f 38 15 01 blendvpd xmm0,XMMWORD PTR \[rcx\],xmm0 -[ ]*[a-f0-9]+: 66 0f 38 15 c1 blendvpd xmm0,xmm1,xmm0 -[ ]*[a-f0-9]+: 66 0f 38 14 01 blendvps xmm0,XMMWORD PTR \[rcx\],xmm0 -[ ]*[a-f0-9]+: 66 0f 38 14 c1 blendvps xmm0,xmm1,xmm0 +[ ]*[a-f0-9]+: 66 0f 38 15 01 blendvpd xmm0,XMMWORD PTR \[rcx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 15 c1 blendvpd xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 15 01 blendvpd xmm0,XMMWORD PTR \[rcx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 15 c1 blendvpd xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 01 blendvps xmm0,XMMWORD PTR \[rcx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 c1 blendvps xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 01 blendvps xmm0,XMMWORD PTR \[rcx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 14 c1 blendvps xmm0,xmm1(,xmm0)? [ ]*[a-f0-9]+: 66 0f 3a 41 01 00 dppd xmm0,XMMWORD PTR \[rcx\],0x0 [ ]*[a-f0-9]+: 66 0f 3a 41 c1 00 dppd xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 3a 40 01 00 dpps xmm0,XMMWORD PTR \[rcx\],0x0 @@ -29,8 +33,10 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 0f 3a 42 c1 00 mpsadbw xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 38 2b 01 packusdw xmm0,XMMWORD PTR \[rcx\] [ ]*[a-f0-9]+: 66 0f 38 2b c1 packusdw xmm0,xmm1 -[ ]*[a-f0-9]+: 66 0f 38 10 01 pblendvb xmm0,XMMWORD PTR \[rcx\],xmm0 -[ ]*[a-f0-9]+: 66 0f 38 10 c1 pblendvb xmm0,xmm1,xmm0 +[ ]*[a-f0-9]+: 66 0f 38 10 01 pblendvb xmm0,XMMWORD PTR \[rcx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 10 c1 pblendvb xmm0,xmm1(,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 10 01 pblendvb xmm0,XMMWORD PTR \[rcx\](,xmm0)? +[ ]*[a-f0-9]+: 66 0f 38 10 c1 pblendvb xmm0,xmm1(,xmm0)? [ ]*[a-f0-9]+: 66 0f 3a 0e 01 00 pblendw xmm0,XMMWORD PTR \[rcx\],0x0 [ ]*[a-f0-9]+: 66 0f 3a 0e c1 00 pblendw xmm0,xmm1,0x0 [ ]*[a-f0-9]+: 66 0f 38 29 c1 pcmpeqq xmm0,xmm1 diff --git a/gas/testsuite/gas/i386/x86-64-sse4_1.d b/gas/testsuite/gas/i386/x86-64-sse4_1.d index 96662d0..518e258 100644 --- a/gas/testsuite/gas/i386/x86-64-sse4_1.d +++ b/gas/testsuite/gas/i386/x86-64-sse4_1.d @@ -10,10 +10,14 @@ Disassembly of section .text: [ ]*[0-9a-f]+: 66 0f 3a 0d c1 00 blendpd \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0c 01 00 blendps \$0x0,\(%rcx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0c c1 00 blendps \$0x0,%xmm1,%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 15 01 blendvpd %xmm0,\(%rcx\),%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 15 c1 blendvpd %xmm0,%xmm1,%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 14 01 blendvps %xmm0,\(%rcx\),%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 14 c1 blendvps %xmm0,%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 01 blendvpd (%xmm0,)?\(%rcx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 c1 blendvpd (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 01 blendvpd (%xmm0,)?\(%rcx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 15 c1 blendvpd (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 01 blendvps (%xmm0,)?\(%rcx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 c1 blendvps (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 01 blendvps (%xmm0,)?\(%rcx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 14 c1 blendvps (%xmm0,)?%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 41 01 00 dppd \$0x0,\(%rcx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 41 c1 00 dppd \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 40 01 00 dpps \$0x0,\(%rcx\),%xmm0 @@ -28,8 +32,10 @@ Disassembly of section .text: [ ]*[0-9a-f]+: 66 0f 3a 42 c1 00 mpsadbw \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 38 2b 01 packusdw \(%rcx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 38 2b c1 packusdw %xmm1,%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 10 01 pblendvb %xmm0,\(%rcx\),%xmm0 -[ ]*[0-9a-f]+: 66 0f 38 10 c1 pblendvb %xmm0,%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 01 pblendvb (%xmm0,)?\(%rcx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 c1 pblendvb (%xmm0,)?%xmm1,%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 01 pblendvb (%xmm0,)?\(%rcx\),%xmm0 +[ ]*[0-9a-f]+: 66 0f 38 10 c1 pblendvb (%xmm0,)?%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0e 01 00 pblendw \$0x0,\(%rcx\),%xmm0 [ ]*[0-9a-f]+: 66 0f 3a 0e c1 00 pblendw \$0x0,%xmm1,%xmm0 [ ]*[0-9a-f]+: 66 0f 38 29 c1 pcmpeqq %xmm1,%xmm0 diff --git a/gas/testsuite/gas/i386/x86-64-sse4_1.s b/gas/testsuite/gas/i386/x86-64-sse4_1.s index e6c105b..ea3d483 100644 --- a/gas/testsuite/gas/i386/x86-64-sse4_1.s +++ b/gas/testsuite/gas/i386/x86-64-sse4_1.s @@ -8,8 +8,12 @@ foo: blendps $0x0,%xmm1,%xmm0 blendvpd %xmm0,(%rcx),%xmm0 blendvpd %xmm0,%xmm1,%xmm0 + blendvpd (%rcx),%xmm0 + blendvpd %xmm1,%xmm0 blendvps %xmm0,(%rcx),%xmm0 blendvps %xmm0,%xmm1,%xmm0 + blendvps (%rcx),%xmm0 + blendvps %xmm1,%xmm0 dppd $0x0,(%rcx),%xmm0 dppd $0x0,%xmm1,%xmm0 dpps $0x0,(%rcx),%xmm0 @@ -26,6 +30,8 @@ foo: packusdw %xmm1,%xmm0 pblendvb %xmm0,(%rcx),%xmm0 pblendvb %xmm0,%xmm1,%xmm0 + pblendvb (%rcx),%xmm0 + pblendvb %xmm1,%xmm0 pblendw $0x0,(%rcx),%xmm0 pblendw $0x0,%xmm1,%xmm0 pcmpeqq %xmm1,%xmm0 |