diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2007-10-08 19:22:01 +0000 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2007-10-08 19:22:01 +0000 |
commit | 8a72226ad5e5aa755c13705310e8eb88905c47e2 (patch) | |
tree | 550749d1135e850f08e92f6767b2fcb73e165766 | |
parent | f409fd1e69832e0b86b1655710cec7997e1fea7a (diff) | |
download | fsf-binutils-gdb-8a72226ad5e5aa755c13705310e8eb88905c47e2.zip fsf-binutils-gdb-8a72226ad5e5aa755c13705310e8eb88905c47e2.tar.gz fsf-binutils-gdb-8a72226ad5e5aa755c13705310e8eb88905c47e2.tar.bz2 |
gas/testsuite/
2007-10-08 H.J. Lu <hongjiu.lu@intel.com>
* gas/i386/i386.exp: Run simd-suffix and x86-64-simd-suffix.
* gas/i386/simd-suffix.d: New.
* gas/i386/x86-64-simd-suffix.d: Likewise.
* gas/i386/x86-64-opcode.d: Updated.
* gas/i386/x86-64-simd.d: Likewise.
opcodes/
2007-10-08 H.J. Lu <hongjiu.lu@intel.com>
* i386-dis.c: Updated comments for 'Y'.
(putop): Don't add 'q' for 'Y' if suffix_always isn't true.
-rw-r--r-- | gas/testsuite/ChangeLog | 10 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/i386.exp | 2 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/simd-suffix.d | 173 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-opcode.d | 96 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-simd-suffix.d | 185 | ||||
-rw-r--r-- | gas/testsuite/gas/i386/x86-64-simd.d | 16 | ||||
-rw-r--r-- | opcodes/ChangeLog | 5 | ||||
-rw-r--r-- | opcodes/i386-dis.c | 5 |
8 files changed, 434 insertions, 58 deletions
diff --git a/gas/testsuite/ChangeLog b/gas/testsuite/ChangeLog index c02f4bb..5e6d26b 100644 --- a/gas/testsuite/ChangeLog +++ b/gas/testsuite/ChangeLog @@ -1,3 +1,13 @@ +2007-10-08 H.J. Lu <hongjiu.lu@intel.com> + + * gas/i386/i386.exp: Run simd-suffix and x86-64-simd-suffix. + + * gas/i386/simd-suffix.d: New. + * gas/i386/x86-64-simd-suffix.d: Likewise. + + * gas/i386/x86-64-opcode.d: Updated. + * gas/i386/x86-64-simd.d: Likewise. + 2007-10-08 Maciej W. Rozycki <macro@linux-mips.org> * gas/mips/cp0-names-r3000.d: New test for R3000 CP0 symbolic diff --git a/gas/testsuite/gas/i386/i386.exp b/gas/testsuite/gas/i386/i386.exp index 68dddcd..c48d9d6 100644 --- a/gas/testsuite/gas/i386/i386.exp +++ b/gas/testsuite/gas/i386/i386.exp @@ -90,6 +90,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_32_check]] run_list_test "inval-crc32" "-al" run_dump_test "simd" run_dump_test "simd-intel" + run_dump_test "simd-suffix" run_dump_test "mem" run_dump_test "mem-intel" run_dump_test "reg" @@ -193,6 +194,7 @@ if [expr ([istarget "i*86-*-*"] || [istarget "x86_64-*-*"]) && [gas_64_check]] t run_list_test "x86-64-inval-crc32" "-al" run_dump_test "x86-64-simd" run_dump_test "x86-64-simd-intel" + run_dump_test "x86-64-simd-suffix" run_dump_test "x86-64-sse5" run_dump_test "x86-64-mem" run_dump_test "x86-64-mem-intel" diff --git a/gas/testsuite/gas/i386/simd-suffix.d b/gas/testsuite/gas/i386/simd-suffix.d new file mode 100644 index 0000000..633bf68 --- /dev/null +++ b/gas/testsuite/gas/i386/simd-suffix.d @@ -0,0 +1,173 @@ +#source: simd.s +#as: -J +#objdump: -dwMsuffix +#name: i386 SIMD (with suffixes) + +.*: +file format .* + +Disassembly of section .text: + +0+ <_start>: +[ ]*[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 +[ ]*[a-f0-9]+: 66 0f 15 08 unpckhpd \(%eax\),%xmm1 +[ ]*[a-f0-9]+: 0f 15 08 unpckhps \(%eax\),%xmm1 +[ ]*[a-f0-9]+: 66 0f 14 08 unpcklpd \(%eax\),%xmm1 +[ ]*[a-f0-9]+: 0f 14 08 unpcklps \(%eax\),%xmm1 +[ ]*[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 +[ ]*[a-f0-9]+: 66 0f 15 00 unpckhpd \(%eax\),%xmm0 +[ ]*[a-f0-9]+: 0f 15 00 unpckhps \(%eax\),%xmm0 +[ ]*[a-f0-9]+: 66 0f 14 00 unpcklpd \(%eax\),%xmm0 +[ ]*[a-f0-9]+: 0f 14 00 unpcklps \(%eax\),%xmm0 +#pass diff --git a/gas/testsuite/gas/i386/x86-64-opcode.d b/gas/testsuite/gas/i386/x86-64-opcode.d index 4d19682..338548f 100644 --- a/gas/testsuite/gas/i386/x86-64-opcode.d +++ b/gas/testsuite/gas/i386/x86-64-opcode.d @@ -78,54 +78,54 @@ Disassembly of section .text: [ ]*[0-9a-f]+:[ ]+66 0f 58 c0[ ]+addpd[ ]+%xmm0,%xmm0[ ]*(#.*)* [ ]*[0-9a-f]+:[ ]+66 45 0f 58 ff[ ]+addpd[ ]+%xmm15,%xmm15[ ]*(#.*)* [ ]*[0-9a-f]+:[ ]+66 45 0f 58 c7[ ]+addpd[ ]+%xmm15,%xmm8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 49 0f 2d 00[ ]+cvtsd2siq[ ]+\(%r8\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 48 0f 2d 00[ ]+cvtsd2siq[ ]+\(%rax\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2d 00[ ]+cvtsd2siq[ ]+\(%r8\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2d 00[ ]+cvtsd2siq[ ]+\(%rax\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 48 0f 2d c0[ ]+cvtsd2siq[ ]+%xmm0,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2d c7[ ]+cvtsd2siq[ ]+%xmm15,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 49 0f 2d c7[ ]+cvtsd2siq[ ]+%xmm15,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2d c0[ ]+cvtsd2siq[ ]+%xmm8,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 49 0f 2d c0[ ]+cvtsd2siq[ ]+%xmm8,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2d c7[ ]+cvtsd2siq[ ]+%xmm7,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 48 0f 2d c7[ ]+cvtsd2siq[ ]+%xmm7,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2d c0[ ]+cvtsd2siq[ ]+%xmm0,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 49 0f 2c 00[ ]+cvttsd2siq[ ]+\(%r8\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 48 0f 2c 00[ ]+cvttsd2siq[ ]+\(%rax\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2c 00[ ]+cvttsd2siq[ ]+\(%r8\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2c 00[ ]+cvttsd2siq[ ]+\(%rax\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 48 0f 2c c0[ ]+cvttsd2siq[ ]+%xmm0,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2c c7[ ]+cvttsd2siq[ ]+%xmm15,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 49 0f 2c c7[ ]+cvttsd2siq[ ]+%xmm15,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2c c0[ ]+cvttsd2siq[ ]+%xmm8,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 49 0f 2c c0[ ]+cvttsd2siq[ ]+%xmm8,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2c c7[ ]+cvttsd2siq[ ]+%xmm7,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 48 0f 2c c7[ ]+cvttsd2siq[ ]+%xmm7,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2c c0[ ]+cvttsd2siq[ ]+%xmm0,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 49 0f 2d 00[ ]+cvtss2siq[ ]+\(%r8\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 48 0f 2d 00[ ]+cvtss2siq[ ]+\(%rax\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2d 00[ ]+cvtss2siq[ ]+\(%r8\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2d 00[ ]+cvtss2siq[ ]+\(%rax\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 48 0f 2d c0[ ]+cvtss2siq[ ]+%xmm0,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2d c7[ ]+cvtss2siq[ ]+%xmm15,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 49 0f 2d c7[ ]+cvtss2siq[ ]+%xmm15,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2d c0[ ]+cvtss2siq[ ]+%xmm8,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 49 0f 2d c0[ ]+cvtss2siq[ ]+%xmm8,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2d c7[ ]+cvtss2siq[ ]+%xmm7,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 48 0f 2d c7[ ]+cvtss2siq[ ]+%xmm7,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2d c0[ ]+cvtss2siq[ ]+%xmm0,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 49 0f 2c 00[ ]+cvttss2siq[ ]+\(%r8\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 48 0f 2c 00[ ]+cvttss2siq[ ]+\(%rax\),%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2c 00[ ]+cvttss2siq[ ]+\(%r8\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2c 00[ ]+cvttss2siq[ ]+\(%rax\),%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 48 0f 2c c0[ ]+cvttss2siq[ ]+%xmm0,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2c c7[ ]+cvttss2siq[ ]+%xmm15,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 49 0f 2c c7[ ]+cvttss2siq[ ]+%xmm15,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2c c0[ ]+cvttss2siq[ ]+%xmm8,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 49 0f 2c c0[ ]+cvttss2siq[ ]+%xmm8,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2c c7[ ]+cvttss2siq[ ]+%xmm7,%r8[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 48 0f 2c c7[ ]+cvttss2siq[ ]+%xmm7,%rax[ ]*(#.*)* -[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2c c0[ ]+cvttss2siq[ ]+%xmm0,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 49 0f 2d 00[ ]+cvtsd2si[ ]+\(%r8\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 48 0f 2d 00[ ]+cvtsd2si[ ]+\(%rax\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2d 00[ ]+cvtsd2si[ ]+\(%r8\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2d 00[ ]+cvtsd2si[ ]+\(%rax\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 48 0f 2d c0[ ]+cvtsd2si[ ]+%xmm0,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2d c7[ ]+cvtsd2si[ ]+%xmm15,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 49 0f 2d c7[ ]+cvtsd2si[ ]+%xmm15,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2d c0[ ]+cvtsd2si[ ]+%xmm8,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 49 0f 2d c0[ ]+cvtsd2si[ ]+%xmm8,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2d c7[ ]+cvtsd2si[ ]+%xmm7,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 48 0f 2d c7[ ]+cvtsd2si[ ]+%xmm7,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2d c0[ ]+cvtsd2si[ ]+%xmm0,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 49 0f 2c 00[ ]+cvttsd2si[ ]+\(%r8\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 48 0f 2c 00[ ]+cvttsd2si[ ]+\(%rax\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2c 00[ ]+cvttsd2si[ ]+\(%r8\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2c 00[ ]+cvttsd2si[ ]+\(%rax\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 48 0f 2c c0[ ]+cvttsd2si[ ]+%xmm0,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2c c7[ ]+cvttsd2si[ ]+%xmm15,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 49 0f 2c c7[ ]+cvttsd2si[ ]+%xmm15,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4d 0f 2c c0[ ]+cvttsd2si[ ]+%xmm8,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 49 0f 2c c0[ ]+cvttsd2si[ ]+%xmm8,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2c c7[ ]+cvttsd2si[ ]+%xmm7,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 48 0f 2c c7[ ]+cvttsd2si[ ]+%xmm7,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f2 4c 0f 2c c0[ ]+cvttsd2si[ ]+%xmm0,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 49 0f 2d 00[ ]+cvtss2si[ ]+\(%r8\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 48 0f 2d 00[ ]+cvtss2si[ ]+\(%rax\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2d 00[ ]+cvtss2si[ ]+\(%r8\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2d 00[ ]+cvtss2si[ ]+\(%rax\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 48 0f 2d c0[ ]+cvtss2si[ ]+%xmm0,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2d c7[ ]+cvtss2si[ ]+%xmm15,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 49 0f 2d c7[ ]+cvtss2si[ ]+%xmm15,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2d c0[ ]+cvtss2si[ ]+%xmm8,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 49 0f 2d c0[ ]+cvtss2si[ ]+%xmm8,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2d c7[ ]+cvtss2si[ ]+%xmm7,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 48 0f 2d c7[ ]+cvtss2si[ ]+%xmm7,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2d c0[ ]+cvtss2si[ ]+%xmm0,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 49 0f 2c 00[ ]+cvttss2si[ ]+\(%r8\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 48 0f 2c 00[ ]+cvttss2si[ ]+\(%rax\),%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2c 00[ ]+cvttss2si[ ]+\(%r8\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2c 00[ ]+cvttss2si[ ]+\(%rax\),%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 48 0f 2c c0[ ]+cvttss2si[ ]+%xmm0,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2c c7[ ]+cvttss2si[ ]+%xmm15,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 49 0f 2c c7[ ]+cvttss2si[ ]+%xmm15,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4d 0f 2c c0[ ]+cvttss2si[ ]+%xmm8,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 49 0f 2c c0[ ]+cvttss2si[ ]+%xmm8,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2c c7[ ]+cvttss2si[ ]+%xmm7,%r8[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 48 0f 2c c7[ ]+cvttss2si[ ]+%xmm7,%rax[ ]*(#.*)* +[ ]*[0-9a-f]+:[ ]+f3 4c 0f 2c c0[ ]+cvttss2si[ ]+%xmm0,%r8[ ]*(#.*)* [ ]*[0-9a-f]+:[ ]+f3 41 0f 2a 00[ ]+cvtsi2ss[ ]+\(%r8\),%xmm0[ ]*(#.*)* [ ]*[0-9a-f]+:[ ]+f3 0f 2a 00[ ]+cvtsi2ss[ ]+\(%rax\),%xmm0[ ]*(#.*)* [ ]*[0-9a-f]+:[ ]+f3 45 0f 2a 38[ ]+cvtsi2ss[ ]+\(%r8\),%xmm15[ ]*(#.*)* diff --git a/gas/testsuite/gas/i386/x86-64-simd-suffix.d b/gas/testsuite/gas/i386/x86-64-simd-suffix.d new file mode 100644 index 0000000..dfd3150 --- /dev/null +++ b/gas/testsuite/gas/i386/x86-64-simd-suffix.d @@ -0,0 +1,185 @@ +#source: x86-64-simd.s +#as: -J +#objdump: -dwMsuffix +#name: x86-64 SIMD (with suffixes) + +.*: +file format .* + +Disassembly of section .text: + +0+ <_start>: +[ ]*[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 +[ ]*[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 +[ ]*[a-f0-9]+: 66 0f 15 08 unpckhpd \(%rax\),%xmm1 +[ ]*[a-f0-9]+: 0f 15 08 unpckhps \(%rax\),%xmm1 +[ ]*[a-f0-9]+: 66 0f 14 08 unpcklpd \(%rax\),%xmm1 +[ ]*[a-f0-9]+: 0f 14 08 unpcklps \(%rax\),%xmm1 +[ ]*[a-f0-9]+: f2 0f d0 0d 78 56 34 12 addsubps 0x12345678\(%rip\),%xmm1 # 1234586c <_start\+0x1234586c> +[ ]*[a-f0-9]+: 66 0f 2f 0d 78 56 34 12 comisd 0x12345678\(%rip\),%xmm1 # 12345874 <_start\+0x12345874> +[ ]*[a-f0-9]+: 0f 2f 0d 78 56 34 12 comiss 0x12345678\(%rip\),%xmm1 # 1234587b <_start\+0x1234587b> +[ ]*[a-f0-9]+: f3 0f e6 0d 78 56 34 12 cvtdq2pd 0x12345678\(%rip\),%xmm1 # 12345883 <_start\+0x12345883> +[ ]*[a-f0-9]+: f2 0f e6 0d 78 56 34 12 cvtpd2dq 0x12345678\(%rip\),%xmm1 # 1234588b <_start\+0x1234588b> +[ ]*[a-f0-9]+: 0f 5a 0d 78 56 34 12 cvtps2pd 0x12345678\(%rip\),%xmm1 # 12345892 <_start\+0x12345892> +[ ]*[a-f0-9]+: f3 0f 5b 0d 78 56 34 12 cvttps2dq 0x12345678\(%rip\),%xmm1 # 1234589a <_start\+0x1234589a> +[ ]*[a-f0-9]+: f2 0f 7c 0d 78 56 34 12 haddps 0x12345678\(%rip\),%xmm1 # 123458a2 <_start\+0x123458a2> +[ ]*[a-f0-9]+: f3 0f 7f 0d 78 56 34 12 movdqu %xmm1,0x12345678\(%rip\) # 123458aa <_start\+0x123458aa> +[ ]*[a-f0-9]+: f3 0f 6f 0d 78 56 34 12 movdqu 0x12345678\(%rip\),%xmm1 # 123458b2 <_start\+0x123458b2> +[ ]*[a-f0-9]+: 66 0f 17 0d 78 56 34 12 movhpd %xmm1,0x12345678\(%rip\) # 123458ba <_start\+0x123458ba> +[ ]*[a-f0-9]+: 66 0f 16 0d 78 56 34 12 movhpd 0x12345678\(%rip\),%xmm1 # 123458c2 <_start\+0x123458c2> +[ ]*[a-f0-9]+: 0f 17 0d 78 56 34 12 movhps %xmm1,0x12345678\(%rip\) # 123458c9 <_start\+0x123458c9> +[ ]*[a-f0-9]+: 0f 16 0d 78 56 34 12 movhps 0x12345678\(%rip\),%xmm1 # 123458d0 <_start\+0x123458d0> +[ ]*[a-f0-9]+: 66 0f 13 0d 78 56 34 12 movlpd %xmm1,0x12345678\(%rip\) # 123458d8 <_start\+0x123458d8> +[ ]*[a-f0-9]+: 66 0f 12 0d 78 56 34 12 movlpd 0x12345678\(%rip\),%xmm1 # 123458e0 <_start\+0x123458e0> +[ ]*[a-f0-9]+: 0f 13 0d 78 56 34 12 movlps %xmm1,0x12345678\(%rip\) # 123458e7 <_start\+0x123458e7> +[ ]*[a-f0-9]+: 0f 12 0d 78 56 34 12 movlps 0x12345678\(%rip\),%xmm1 # 123458ee <_start\+0x123458ee> +[ ]*[a-f0-9]+: 66 0f d6 0d 78 56 34 12 movq %xmm1,0x12345678\(%rip\) # 123458f6 <_start\+0x123458f6> +[ ]*[a-f0-9]+: f3 0f 7e 0d 78 56 34 12 movq 0x12345678\(%rip\),%xmm1 # 123458fe <_start\+0x123458fe> +[ ]*[a-f0-9]+: f3 0f 16 0d 78 56 34 12 movshdup 0x12345678\(%rip\),%xmm1 # 12345906 <_start\+0x12345906> +[ ]*[a-f0-9]+: f3 0f 12 0d 78 56 34 12 movsldup 0x12345678\(%rip\),%xmm1 # 1234590e <_start\+0x1234590e> +[ ]*[a-f0-9]+: f3 0f 70 0d 78 56 34 12 90 pshufhw \$0x90,0x12345678\(%rip\),%xmm1 # 12345917 <_start\+0x12345917> +[ ]*[a-f0-9]+: f2 0f 70 0d 78 56 34 12 90 pshuflw \$0x90,0x12345678\(%rip\),%xmm1 # 12345920 <_start\+0x12345920> +[ ]*[a-f0-9]+: 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%mm1 # 12345927 <_start\+0x12345927> +[ ]*[a-f0-9]+: 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%mm1 # 1234592e <_start\+0x1234592e> +[ ]*[a-f0-9]+: 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%mm1 # 12345935 <_start\+0x12345935> +[ ]*[a-f0-9]+: 66 0f 60 0d 78 56 34 12 punpcklbw 0x12345678\(%rip\),%xmm1 # 1234593d <_start\+0x1234593d> +[ ]*[a-f0-9]+: 66 0f 62 0d 78 56 34 12 punpckldq 0x12345678\(%rip\),%xmm1 # 12345945 <_start\+0x12345945> +[ ]*[a-f0-9]+: 66 0f 61 0d 78 56 34 12 punpcklwd 0x12345678\(%rip\),%xmm1 # 1234594d <_start\+0x1234594d> +[ ]*[a-f0-9]+: 66 0f 6c 0d 78 56 34 12 punpcklqdq 0x12345678\(%rip\),%xmm1 # 12345955 <_start\+0x12345955> +[ ]*[a-f0-9]+: 66 0f 2e 0d 78 56 34 12 ucomisd 0x12345678\(%rip\),%xmm1 # 1234595d <_start\+0x1234595d> +[ ]*[a-f0-9]+: 0f 2e 0d 78 56 34 12 ucomiss 0x12345678\(%rip\),%xmm1 # 12345964 <_start\+0x12345964> +[ ]*[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 +[ ]*[a-f0-9]+: 66 0f 15 00 unpckhpd \(%rax\),%xmm0 +[ ]*[a-f0-9]+: 0f 15 00 unpckhps \(%rax\),%xmm0 +[ ]*[a-f0-9]+: 66 0f 14 00 unpcklpd \(%rax\),%xmm0 +[ ]*[a-f0-9]+: 0f 14 00 unpcklps \(%rax\),%xmm0 +#pass diff --git a/gas/testsuite/gas/i386/x86-64-simd.d b/gas/testsuite/gas/i386/x86-64-simd.d index 9d6d2dc..94b6e37 100644 --- a/gas/testsuite/gas/i386/x86-64-simd.d +++ b/gas/testsuite/gas/i386/x86-64-simd.d @@ -46,15 +46,15 @@ Disassembly of section .text: [ ]*[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 48 0f 2d 00 cvtsd2si \(%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 48 0f 2c 00 cvttsd2si \(%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 48 0f 2d 00 cvtss2si \(%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]+: f3 48 0f 2c 00 cvttss2si \(%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 @@ -133,15 +133,15 @@ Disassembly of section .text: [ ]*[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 48 0f 2d 00 cvtsd2si \(%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 48 0f 2c 00 cvttsd2si \(%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 48 0f 2d 00 cvtss2si \(%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]+: f3 48 0f 2c 00 cvttss2si \(%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 diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog index 99b51e7..9d4edb0 100644 --- a/opcodes/ChangeLog +++ b/opcodes/ChangeLog @@ -1,3 +1,8 @@ +2007-10-08 H.J. Lu <hongjiu.lu@intel.com> + + * i386-dis.c: Updated comments for 'Y'. + (putop): Don't add 'q' for 'Y' if suffix_always isn't true. + 2007-10-08 Maciej W. Rozycki <macro@linux-mips.org> * opcodes/mips-dis.c (mips_cp0_names_r3000): New definition. diff --git a/opcodes/i386-dis.c b/opcodes/i386-dis.c index 1da05e0..44101b9 100644 --- a/opcodes/i386-dis.c +++ b/opcodes/i386-dis.c @@ -712,7 +712,8 @@ struct dis386 { 'V' => print 'q' in 64bit mode and behave as 'S' otherwise 'W' => print 'b', 'w' or 'l' ('d' in Intel mode) 'X' => print 's', 'd' depending on data16 prefix (for XMM) - 'Y' => 'q' if instruction has an REX 64bit overwrite prefix + 'Y' => 'q' if instruction has an REX 64bit overwrite prefix and + suffix_always is true. 'Z' => print 'q' in 64bit mode and behave as 'L' otherwise Many of the above letters print nothing in Intel mode. See "putop" @@ -6170,7 +6171,7 @@ putop (const char *template, int sizeflag) used_prefixes |= (prefixes & PREFIX_DATA); break; case 'Y': - if (intel_syntax) + if (intel_syntax || !(sizeflag & SUFFIX_ALWAYS)) break; if (rex & REX_W) { |