[PATCH v2 4/7] x86: extra operand reversal "opts" tests
Jan Beulich
JBeulich@suse.com
Wed Sep 5 13:04:00 GMT 2018
More information about the Binutils mailing list
Wed Sep 5 13:04:00 GMT 2018
- Previous message (by thread): [PATCH v2 2/7] x86: improve operand reversal
- Next message (by thread): [PATCH v2 3/7] x86: fold ILP32 output of "opts" tests
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
"x86: improve operand reversal" has fixed a number of issues with the .s pseudo-suffix too. As an optional change, test cases get added here to cover this. gas/ 2018-09-05 Jan Beulich <jbeulich@suse.com> * testsuite/gas/i386/opts.s: Add mov, FPU, and vmov* tests. * testsuite/gas/i386/x86-64-opts.s: Likewise, plus bndmov. * testsuite/gas/i386/opts.d, testsuite/gas/i386/opts-intel.d, testsuite/gas/i386/sse2avx-opts.d, testsuite/gas/i386/sse2avx-opts-intel.d, testsuite/gas/i386/x86-64-opts.d, testsuite/gas/i386/x86-64-opts-intel.d, testsuite/gas/i386/x86-64-sse2avx-opts.d, testsuite/gas/i386/x86-64-sse2avx-opts-intel.d: Adjust expectations. --- a/gas/testsuite/gas/i386/opts-intel.d +++ b/gas/testsuite/gas/i386/opts-intel.d @@ -116,6 +116,34 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 33 ca xor.s cx,dx [ ]*[a-f0-9]+: 31 d1 xor ecx,edx [ ]*[a-f0-9]+: 33 ca xor.s ecx,edx +[ ]*[a-f0-9]+: a1 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: a1 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: a3 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: a3 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[edi\],eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[edi\],eax +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[edi\] +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[edi\] +[ ]*[a-f0-9]+: 0f 20 c0 mov eax,cr0 +[ ]*[a-f0-9]+: 0f 20 c0 mov eax,cr0 +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,eax +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,eax +[ ]*[a-f0-9]+: 0f 21 c0 mov eax,db0 +[ ]*[a-f0-9]+: 0f 21 c0 mov eax,db0 +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,eax +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,eax +[ ]*[a-f0-9]+: d8 c0 fadd st,st\(0\) +[ ]*[a-f0-9]+: dc c0 fadd st\(0\),st +[ ]*[a-f0-9]+: d8 f0 fdiv st,st\(0\) +[ ]*[a-f0-9]+: dc f0 fdivr st\(0\),st +[ ]*[a-f0-9]+: d8 f8 fdivr st,st\(0\) +[ ]*[a-f0-9]+: dc f8 fdiv st\(0\),st +[ ]*[a-f0-9]+: d8 c8 fmul st,st\(0\) +[ ]*[a-f0-9]+: dc c8 fmul st\(0\),st +[ ]*[a-f0-9]+: d8 e0 fsub st,st\(0\) +[ ]*[a-f0-9]+: dc e0 fsubr st\(0\),st +[ ]*[a-f0-9]+: d8 e8 fsubr st,st\(0\) +[ ]*[a-f0-9]+: dc e8 fsub st\(0\),st [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 @@ -166,6 +194,72 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 [ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s xmm2\{k7\},xmm6,xmm4 [ ]*[a-f0-9]+: 66 0f 1a d1 bndmov bnd2,bnd1 [ ]*[a-f0-9]+: 66 0f 1b ca bndmov.s bnd2,bnd1 [ ]*[a-f0-9]+: 00 d1 add cl,dl --- a/gas/testsuite/gas/i386/opts.d +++ b/gas/testsuite/gas/i386/opts.d @@ -115,6 +115,34 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 33 ca xorw.s %dx,%cx [ ]*[a-f0-9]+: 31 d1 xorl %edx,%ecx [ ]*[a-f0-9]+: 33 ca xorl.s %edx,%ecx +[ ]*[a-f0-9]+: a1 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: a1 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: a3 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: a3 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%edi\) +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%edi\) +[ ]*[a-f0-9]+: 8b 07 movl \(%edi\),%eax +[ ]*[a-f0-9]+: 8b 07 movl \(%edi\),%eax +[ ]*[a-f0-9]+: 0f 20 c0 movl %cr0,%eax +[ ]*[a-f0-9]+: 0f 20 c0 movl %cr0,%eax +[ ]*[a-f0-9]+: 0f 22 f8 movl %eax,%cr7 +[ ]*[a-f0-9]+: 0f 22 f8 movl %eax,%cr7 +[ ]*[a-f0-9]+: 0f 21 c0 movl %db0,%eax +[ ]*[a-f0-9]+: 0f 21 c0 movl %db0,%eax +[ ]*[a-f0-9]+: 0f 23 f8 movl %eax,%db7 +[ ]*[a-f0-9]+: 0f 23 f8 movl %eax,%db7 +[ ]*[a-f0-9]+: d8 c0 fadd %st\(0\),%st +[ ]*[a-f0-9]+: dc c0 fadd %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f0 fdiv %st\(0\),%st +[ ]*[a-f0-9]+: dc f0 fdiv %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f8 fdivr %st\(0\),%st +[ ]*[a-f0-9]+: dc f8 fdivr %st,%st\(0\) +[ ]*[a-f0-9]+: d8 c8 fmul %st\(0\),%st +[ ]*[a-f0-9]+: dc c8 fmul %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e0 fsub %st\(0\),%st +[ ]*[a-f0-9]+: dc e0 fsub %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e8 fsubr %st\(0\),%st +[ ]*[a-f0-9]+: dc e8 fsubr %st,%st\(0\) [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 @@ -165,6 +193,72 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 [ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s %xmm4,%xmm6,%xmm2\{%k7\} [ ]*[a-f0-9]+: 66 0f 1a d1 bndmov %bnd1,%bnd2 [ ]*[a-f0-9]+: 66 0f 1b ca bndmov.s %bnd1,%bnd2 [ ]*[a-f0-9]+: 00 d1 addb %dl,%cl --- a/gas/testsuite/gas/i386/opts.s +++ b/gas/testsuite/gas/i386/opts.s @@ -114,6 +114,38 @@ _start: xorl %edx,%ecx xorl.s %edx,%ecx +# Tests for moves which cannot be changed + mov 0x12345678, %eax + mov.s 0x12345678, %eax + mov %eax, 0x12345678 + mov.s %eax, 0x12345678 + mov %eax, (%edi) + mov.s %eax, (%edi) + mov (%edi), %eax + mov.s (%edi), %eax + mov %cr0, %eax + mov.s %cr0, %eax + mov %eax, %cr7 + mov.s %eax, %cr7 + mov %dr0, %eax + mov.s %dr0, %eax + mov %eax, %dr7 + mov.s %eax, %dr7 + +# Tests for op st, st + fadd %st, %st + fadd.s %st, %st + fdiv %st, %st + fdiv.s %st, %st + fdivr %st, %st + fdivr.s %st, %st + fmul %st, %st + fmul.s %st, %st + fsub %st, %st + fsub.s %st, %st + fsubr %st, %st + fsubr.s %st, %st + # Tests for op ymm, ymm vmovapd %ymm4,%ymm6 vmovapd.s %ymm4,%ymm6 @@ -172,6 +204,80 @@ _start: movq %mm0,%mm4 movq.s %mm0,%mm4 +# Tests for op zmm, zmm + vmovapd %zmm4,%zmm6 + vmovapd.s %zmm4,%zmm6 + vmovaps %zmm4,%zmm6 + vmovaps.s %zmm4,%zmm6 + vmovdqa32 %zmm4,%zmm6 + vmovdqa32.s %zmm4,%zmm6 + vmovdqa64 %zmm4,%zmm6 + vmovdqa64.s %zmm4,%zmm6 + vmovdqu8 %zmm4,%zmm6 + vmovdqu8.s %zmm4,%zmm6 + vmovdqu16 %zmm4,%zmm6 + vmovdqu16.s %zmm4,%zmm6 + vmovdqu32 %zmm4,%zmm6 + vmovdqu32.s %zmm4,%zmm6 + vmovdqu64 %zmm4,%zmm6 + vmovdqu64.s %zmm4,%zmm6 + vmovupd %zmm4,%zmm6 + vmovupd.s %zmm4,%zmm6 + vmovups %zmm4,%zmm6 + vmovups.s %zmm4,%zmm6 + +# Tests for EVEX forms of op ymm, ymm + vmovapd %ymm4,%ymm6{%k7} + vmovapd.s %ymm4,%ymm6{%k7} + vmovaps %ymm4,%ymm6{%k7} + vmovaps.s %ymm4,%ymm6{%k7} + vmovdqa32 %ymm4,%ymm6 + vmovdqa32.s %ymm4,%ymm6 + vmovdqa64 %ymm4,%ymm6 + vmovdqa64.s %ymm4,%ymm6 + vmovdqu8 %ymm4,%ymm6 + vmovdqu8.s %ymm4,%ymm6 + vmovdqu16 %ymm4,%ymm6 + vmovdqu16.s %ymm4,%ymm6 + vmovdqu32 %ymm4,%ymm6 + vmovdqu32.s %ymm4,%ymm6 + vmovdqu64 %ymm4,%ymm6 + vmovdqu64.s %ymm4,%ymm6 + vmovupd %ymm4,%ymm6{%k7} + vmovupd.s %ymm4,%ymm6{%k7} + vmovups %ymm4,%ymm6{%k7} + vmovups.s %ymm4,%ymm6{%k7} + +# Tests for EVEX forms op xmm, xmm + vmovapd %xmm4,%xmm6{%k7} + vmovapd.s %xmm4,%xmm6{%k7} + vmovaps %xmm4,%xmm6{%k7} + vmovaps.s %xmm4,%xmm6{%k7} + vmovdqa32 %xmm4,%xmm6 + vmovdqa32.s %xmm4,%xmm6 + vmovdqa64 %xmm4,%xmm6 + vmovdqa64.s %xmm4,%xmm6 + vmovdqu8 %xmm4,%xmm6 + vmovdqu8.s %xmm4,%xmm6 + vmovdqu16 %xmm4,%xmm6 + vmovdqu16.s %xmm4,%xmm6 + vmovdqu32 %xmm4,%xmm6 + vmovdqu32.s %xmm4,%xmm6 + vmovdqu64 %xmm4,%xmm6 + vmovdqu64.s %xmm4,%xmm6 + {evex} vmovq %xmm4,%xmm6 + {evex} vmovq.s %xmm4,%xmm6 + vmovupd %xmm4,%xmm6{%k7} + vmovupd.s %xmm4,%xmm6{%k7} + vmovups %xmm4,%xmm6{%k7} + vmovups.s %xmm4,%xmm6{%k7} + +# Tests for EVEX forms op xmm, xmm, xmm + vmovsd %xmm4,%xmm6,%xmm2{%k7} + vmovsd.s %xmm4,%xmm6,%xmm2{%k7} + vmovss %xmm4,%xmm6,%xmm2{%k7} + vmovss.s %xmm4,%xmm6,%xmm2{%k7} + # Tests for op bnd, bnd bndmov %bnd1,%bnd2 bndmov.s %bnd1,%bnd2 --- a/gas/testsuite/gas/i386/sse2avx-opts-intel.d +++ b/gas/testsuite/gas/i386/sse2avx-opts-intel.d @@ -117,6 +117,34 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 33 ca xor.s cx,dx [ ]*[a-f0-9]+: 31 d1 xor ecx,edx [ ]*[a-f0-9]+: 33 ca xor.s ecx,edx +[ ]*[a-f0-9]+: a1 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: a1 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: a3 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: a3 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[edi\],eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[edi\],eax +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[edi\] +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[edi\] +[ ]*[a-f0-9]+: 0f 20 c0 mov eax,cr0 +[ ]*[a-f0-9]+: 0f 20 c0 mov eax,cr0 +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,eax +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,eax +[ ]*[a-f0-9]+: 0f 21 c0 mov eax,db0 +[ ]*[a-f0-9]+: 0f 21 c0 mov eax,db0 +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,eax +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,eax +[ ]*[a-f0-9]+: d8 c0 fadd st,st\(0\) +[ ]*[a-f0-9]+: dc c0 fadd st\(0\),st +[ ]*[a-f0-9]+: d8 f0 fdiv st,st\(0\) +[ ]*[a-f0-9]+: dc f0 fdivr st\(0\),st +[ ]*[a-f0-9]+: d8 f8 fdivr st,st\(0\) +[ ]*[a-f0-9]+: dc f8 fdiv st\(0\),st +[ ]*[a-f0-9]+: d8 c8 fmul st,st\(0\) +[ ]*[a-f0-9]+: dc c8 fmul st\(0\),st +[ ]*[a-f0-9]+: d8 e0 fsub st,st\(0\) +[ ]*[a-f0-9]+: dc e0 fsubr st\(0\),st +[ ]*[a-f0-9]+: d8 e8 fsubr st,st\(0\) +[ ]*[a-f0-9]+: dc e8 fsub st\(0\),st [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 @@ -167,6 +195,72 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 [ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s xmm2\{k7\},xmm6,xmm4 [ ]*[a-f0-9]+: 66 0f 1a d1 bndmov bnd2,bnd1 [ ]*[a-f0-9]+: 66 0f 1b ca bndmov.s bnd2,bnd1 [ ]*[a-f0-9]+: 00 d1 add cl,dl --- a/gas/testsuite/gas/i386/sse2avx-opts.d +++ b/gas/testsuite/gas/i386/sse2avx-opts.d @@ -117,6 +117,34 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 66 33 ca xorw.s %dx,%cx [ ]*[a-f0-9]+: 31 d1 xorl %edx,%ecx [ ]*[a-f0-9]+: 33 ca xorl.s %edx,%ecx +[ ]*[a-f0-9]+: a1 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: a1 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: a3 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: a3 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%edi\) +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%edi\) +[ ]*[a-f0-9]+: 8b 07 movl \(%edi\),%eax +[ ]*[a-f0-9]+: 8b 07 movl \(%edi\),%eax +[ ]*[a-f0-9]+: 0f 20 c0 movl %cr0,%eax +[ ]*[a-f0-9]+: 0f 20 c0 movl %cr0,%eax +[ ]*[a-f0-9]+: 0f 22 f8 movl %eax,%cr7 +[ ]*[a-f0-9]+: 0f 22 f8 movl %eax,%cr7 +[ ]*[a-f0-9]+: 0f 21 c0 movl %db0,%eax +[ ]*[a-f0-9]+: 0f 21 c0 movl %db0,%eax +[ ]*[a-f0-9]+: 0f 23 f8 movl %eax,%db7 +[ ]*[a-f0-9]+: 0f 23 f8 movl %eax,%db7 +[ ]*[a-f0-9]+: d8 c0 fadd %st\(0\),%st +[ ]*[a-f0-9]+: dc c0 fadd %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f0 fdiv %st\(0\),%st +[ ]*[a-f0-9]+: dc f0 fdiv %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f8 fdivr %st\(0\),%st +[ ]*[a-f0-9]+: dc f8 fdivr %st,%st\(0\) +[ ]*[a-f0-9]+: d8 c8 fmul %st\(0\),%st +[ ]*[a-f0-9]+: dc c8 fmul %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e0 fsub %st\(0\),%st +[ ]*[a-f0-9]+: dc e0 fsub %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e8 fsubr %st\(0\),%st +[ ]*[a-f0-9]+: dc e8 fsubr %st,%st\(0\) [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 @@ -167,6 +195,72 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 [ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s %xmm4,%xmm6,%xmm2\{%k7\} [ ]*[a-f0-9]+: 66 0f 1a d1 bndmov %bnd1,%bnd2 [ ]*[a-f0-9]+: 66 0f 1b ca bndmov.s %bnd1,%bnd2 [ ]*[a-f0-9]+: 00 d1 addb %dl,%cl --- a/gas/testsuite/gas/i386/x86-64-opts-intel.d +++ b/gas/testsuite/gas/i386/x86-64-opts-intel.d @@ -152,6 +152,42 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 48 33 ca xor.s rcx,rdx [ ]*[a-f0-9]+: 48 31 d1 xor rcx,rdx [ ]*[a-f0-9]+: 48 33 ca xor.s rcx,rdx +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[rdi\],eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[rdi\],eax +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[rdi\] +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[rdi\] +[ ]*[a-f0-9]+: 0f 20 c0 mov rax,cr0 +[ ]*[a-f0-9]+: 0f 20 c0 mov rax,cr0 +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,rax +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,rax +[ ]*[a-f0-9]+: 0f 21 c0 mov rax,db0 +[ ]*[a-f0-9]+: 0f 21 c0 mov rax,db0 +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,rax +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,rax +[ ]*[a-f0-9]+: d8 c0 fadd st,st\(0\) +[ ]*[a-f0-9]+: dc c0 fadd st\(0\),st +[ ]*[a-f0-9]+: d8 f0 fdiv st,st\(0\) +[ ]*[a-f0-9]+: dc f0 fdivr st\(0\),st +[ ]*[a-f0-9]+: d8 f8 fdivr st,st\(0\) +[ ]*[a-f0-9]+: dc f8 fdiv st\(0\),st +[ ]*[a-f0-9]+: d8 c8 fmul st,st\(0\) +[ ]*[a-f0-9]+: dc c8 fmul st\(0\),st +[ ]*[a-f0-9]+: d8 e0 fsub st,st\(0\) +[ ]*[a-f0-9]+: dc e0 fsubr st\(0\),st +[ ]*[a-f0-9]+: d8 e8 fsubr st,st\(0\) +[ ]*[a-f0-9]+: dc e8 fsub st\(0\),st [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 @@ -202,6 +238,74 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 [ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 1a d8 bndmov bnd3,bnd0 +[ ]*[a-f0-9]+: 66 0f 1b c3 bndmov.s bnd3,bnd0 [ ]*[a-f0-9]+: 00 d1 add cl,dl [ ]*[a-f0-9]+: 02 ca add.s cl,dl [ ]*[a-f0-9]+: 66 01 d1 add cx,dx --- a/gas/testsuite/gas/i386/x86-64-opts.d +++ b/gas/testsuite/gas/i386/x86-64-opts.d @@ -151,6 +151,42 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 48 33 ca xorq.s %rdx,%rcx [ ]*[a-f0-9]+: 48 31 d1 xorq %rdx,%rcx [ ]*[a-f0-9]+: 48 33 ca xorq.s %rdx,%rcx +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%rdi\) +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%rdi\) +[ ]*[a-f0-9]+: 8b 07 movl \(%rdi\),%eax +[ ]*[a-f0-9]+: 8b 07 movl \(%rdi\),%eax +[ ]*[a-f0-9]+: 0f 20 c0 movq %cr0,%rax +[ ]*[a-f0-9]+: 0f 20 c0 movq %cr0,%rax +[ ]*[a-f0-9]+: 0f 22 f8 movq %rax,%cr7 +[ ]*[a-f0-9]+: 0f 22 f8 movq %rax,%cr7 +[ ]*[a-f0-9]+: 0f 21 c0 movq %db0,%rax +[ ]*[a-f0-9]+: 0f 21 c0 movq %db0,%rax +[ ]*[a-f0-9]+: 0f 23 f8 movq %rax,%db7 +[ ]*[a-f0-9]+: 0f 23 f8 movq %rax,%db7 +[ ]*[a-f0-9]+: d8 c0 fadd %st\(0\),%st +[ ]*[a-f0-9]+: dc c0 fadd %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f0 fdiv %st\(0\),%st +[ ]*[a-f0-9]+: dc f0 fdiv %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f8 fdivr %st\(0\),%st +[ ]*[a-f0-9]+: dc f8 fdivr %st,%st\(0\) +[ ]*[a-f0-9]+: d8 c8 fmul %st\(0\),%st +[ ]*[a-f0-9]+: dc c8 fmul %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e0 fsub %st\(0\),%st +[ ]*[a-f0-9]+: dc e0 fsub %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e8 fsubr %st\(0\),%st +[ ]*[a-f0-9]+: dc e8 fsubr %st,%st\(0\) [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 @@ -201,6 +237,74 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 [ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 66 0f 1a d8 bndmov %bnd0,%bnd3 +[ ]*[a-f0-9]+: 66 0f 1b c3 bndmov.s %bnd0,%bnd3 [ ]*[a-f0-9]+: 00 d1 addb %dl,%cl [ ]*[a-f0-9]+: 02 ca addb.s %dl,%cl [ ]*[a-f0-9]+: 66 01 d1 addw %dx,%cx --- a/gas/testsuite/gas/i386/x86-64-opts.s +++ b/gas/testsuite/gas/i386/x86-64-opts.s @@ -150,6 +150,46 @@ _start: xorq %rdx,%rcx xorq.s %rdx,%rcx +# Tests for moves which cannot be changed + mov 0x12345678, %eax + mov.s 0x12345678, %eax + mov %eax, 0x12345678 + mov.s %eax, 0x12345678 + mov 0x123456789abcdef0, %eax + mov.s 0x123456789abcdef0, %eax + mov %eax, 0x123456789abcdef0 + mov.s %eax, 0x123456789abcdef0 + movabs 0x123456789abcdef0, %eax + movabs.s 0x123456789abcdef0, %eax + movabs %eax, 0x123456789abcdef0 + movabs.s %eax, 0x123456789abcdef0 + mov %eax, (%rdi) + mov.s %eax, (%rdi) + mov (%rdi), %eax + mov.s (%rdi), %eax + mov %cr0, %rax + mov.s %cr0, %rax + mov %rax, %cr7 + mov.s %rax, %cr7 + mov %dr0, %rax + mov.s %dr0, %rax + mov %rax, %dr7 + mov.s %rax, %dr7 + +# Tests for op st, st + fadd %st, %st + fadd.s %st, %st + fdiv %st, %st + fdiv.s %st, %st + fdivr %st, %st + fdivr.s %st, %st + fmul %st, %st + fmul.s %st, %st + fsub %st, %st + fsub.s %st, %st + fsubr %st, %st + fsubr.s %st, %st + # Tests for op ymm, ymm vmovapd %ymm4,%ymm6 vmovapd.s %ymm4,%ymm6 @@ -208,6 +248,84 @@ _start: movq %mm0,%mm4 movq.s %mm0,%mm4 +# Tests for op zmm, zmm + vmovapd %zmm4,%zmm6 + vmovapd.s %zmm4,%zmm6 + vmovaps %zmm4,%zmm6 + vmovaps.s %zmm4,%zmm6 + vmovdqa32 %zmm4,%zmm6 + vmovdqa32.s %zmm4,%zmm6 + vmovdqa64 %zmm4,%zmm6 + vmovdqa64.s %zmm4,%zmm6 + vmovdqu8 %zmm4,%zmm6 + vmovdqu8.s %zmm4,%zmm6 + vmovdqu16 %zmm4,%zmm6 + vmovdqu16.s %zmm4,%zmm6 + vmovdqu32 %zmm4,%zmm6 + vmovdqu32.s %zmm4,%zmm6 + vmovdqu64 %zmm4,%zmm6 + vmovdqu64.s %zmm4,%zmm6 + vmovupd %zmm4,%zmm6 + vmovupd.s %zmm4,%zmm6 + vmovups %zmm4,%zmm6 + vmovups.s %zmm4,%zmm6 + +# Tests for EVEX forms of op ymm, ymm + vmovapd %ymm4,%ymm6{%k7} + vmovapd.s %ymm4,%ymm6{%k7} + vmovaps %ymm4,%ymm6{%k7} + vmovaps.s %ymm4,%ymm6{%k7} + vmovdqa32 %ymm4,%ymm6 + vmovdqa32.s %ymm4,%ymm6 + vmovdqa64 %ymm4,%ymm6 + vmovdqa64.s %ymm4,%ymm6 + vmovdqu8 %ymm4,%ymm6 + vmovdqu8.s %ymm4,%ymm6 + vmovdqu16 %ymm4,%ymm6 + vmovdqu16.s %ymm4,%ymm6 + vmovdqu32 %ymm4,%ymm6 + vmovdqu32.s %ymm4,%ymm6 + vmovdqu64 %ymm4,%ymm6 + vmovdqu64.s %ymm4,%ymm6 + vmovupd %ymm4,%ymm6{%k7} + vmovupd.s %ymm4,%ymm6{%k7} + vmovups %ymm4,%ymm6{%k7} + vmovups.s %ymm4,%ymm6{%k7} + +# Tests for EVEX forms op xmm, xmm + vmovapd %xmm4,%xmm6{%k7} + vmovapd.s %xmm4,%xmm6{%k7} + vmovaps %xmm4,%xmm6{%k7} + vmovaps.s %xmm4,%xmm6{%k7} + vmovdqa32 %xmm4,%xmm6 + vmovdqa32.s %xmm4,%xmm6 + vmovdqa64 %xmm4,%xmm6 + vmovdqa64.s %xmm4,%xmm6 + vmovdqu8 %xmm4,%xmm6 + vmovdqu8.s %xmm4,%xmm6 + vmovdqu16 %xmm4,%xmm6 + vmovdqu16.s %xmm4,%xmm6 + vmovdqu32 %xmm4,%xmm6 + vmovdqu32.s %xmm4,%xmm6 + vmovdqu64 %xmm4,%xmm6 + vmovdqu64.s %xmm4,%xmm6 + {evex} vmovq %xmm4,%xmm6 + {evex} vmovq.s %xmm4,%xmm6 + vmovupd %xmm4,%xmm6{%k7} + vmovupd.s %xmm4,%xmm6{%k7} + vmovups %xmm4,%xmm6{%k7} + vmovups.s %xmm4,%xmm6{%k7} + +# Tests for EVEX forms op xmm, xmm, xmm + vmovsd %xmm4,%xmm6,%xmm2{%k7} + vmovsd.s %xmm4,%xmm6,%xmm2{%k7} + vmovss %xmm4,%xmm6,%xmm2{%k7} + vmovss.s %xmm4,%xmm6,%xmm2{%k7} + +# Tests for op bnd, bnd + bndmov %bnd0, %bnd3 + bndmov.s %bnd0, %bnd3 + .intel_syntax noprefix # Tests for op reg, reg --- a/gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d +++ b/gas/testsuite/gas/i386/x86-64-sse2avx-opts-intel.d @@ -153,6 +153,42 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 48 33 ca xor.s rcx,rdx [ ]*[a-f0-9]+: 48 31 d1 xor rcx,rdx [ ]*[a-f0-9]+: 48 33 ca xor.s rcx,rdx +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 mov eax,DWORD PTR ds:0x12345678 +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 mov DWORD PTR ds:0x12345678,eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabs eax,DWORD PTR ds:0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabs DWORD PTR ds:0x123456789abcdef0,eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[rdi\],eax +[ ]*[a-f0-9]+: 89 07 mov DWORD PTR \[rdi\],eax +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[rdi\] +[ ]*[a-f0-9]+: 8b 07 mov eax,DWORD PTR \[rdi\] +[ ]*[a-f0-9]+: 0f 20 c0 mov rax,cr0 +[ ]*[a-f0-9]+: 0f 20 c0 mov rax,cr0 +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,rax +[ ]*[a-f0-9]+: 0f 22 f8 mov cr7,rax +[ ]*[a-f0-9]+: 0f 21 c0 mov rax,db0 +[ ]*[a-f0-9]+: 0f 21 c0 mov rax,db0 +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,rax +[ ]*[a-f0-9]+: 0f 23 f8 mov db7,rax +[ ]*[a-f0-9]+: d8 c0 fadd st,st\(0\) +[ ]*[a-f0-9]+: dc c0 fadd st\(0\),st +[ ]*[a-f0-9]+: d8 f0 fdiv st,st\(0\) +[ ]*[a-f0-9]+: dc f0 fdivr st\(0\),st +[ ]*[a-f0-9]+: d8 f8 fdivr st,st\(0\) +[ ]*[a-f0-9]+: dc f8 fdiv st\(0\),st +[ ]*[a-f0-9]+: d8 c8 fmul st,st\(0\) +[ ]*[a-f0-9]+: dc c8 fmul st\(0\),st +[ ]*[a-f0-9]+: d8 e0 fsub st,st\(0\) +[ ]*[a-f0-9]+: dc e0 fsubr st\(0\),st +[ ]*[a-f0-9]+: d8 e8 fsubr st,st\(0\) +[ ]*[a-f0-9]+: dc e8 fsub st\(0\),st [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd ymm6,ymm4 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s ymm6,ymm4 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps ymm6,ymm4 @@ -203,6 +239,74 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s xmm2,xmm6,xmm4 [ ]*[a-f0-9]+: 0f 6f e0 movq mm4,mm0 [ ]*[a-f0-9]+: 0f 7f c4 movq.s mm4,mm0 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s zmm6,zmm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s ymm6,ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s ymm6\{k7\},ymm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s xmm6\{k7\},xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s xmm2\{k7\},xmm6,xmm4 +[ ]*[a-f0-9]+: 66 0f 1a d8 bndmov bnd3,bnd0 +[ ]*[a-f0-9]+: 66 0f 1b c3 bndmov.s bnd3,bnd0 [ ]*[a-f0-9]+: 00 d1 add cl,dl [ ]*[a-f0-9]+: 02 ca add.s cl,dl [ ]*[a-f0-9]+: 66 01 d1 add cx,dx --- a/gas/testsuite/gas/i386/x86-64-sse2avx-opts.d +++ b/gas/testsuite/gas/i386/x86-64-sse2avx-opts.d @@ -153,6 +153,42 @@ Disassembly of section .text: [ ]*[a-f0-9]+: 48 33 ca xorq.s %rdx,%rcx [ ]*[a-f0-9]+: 48 31 d1 xorq %rdx,%rcx [ ]*[a-f0-9]+: 48 33 ca xorq.s %rdx,%rcx +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: 8b 04 25 78 56 34 12 movl 0x12345678,%eax +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: 89 04 25 78 56 34 12 movl %eax,0x12345678 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a1 f0 de bc 9a 78 56 34 12 movabsl 0x123456789abcdef0,%eax +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: a3 f0 de bc 9a 78 56 34 12 movabsl %eax,0x123456789abcdef0 +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%rdi\) +[ ]*[a-f0-9]+: 89 07 movl %eax,\(%rdi\) +[ ]*[a-f0-9]+: 8b 07 movl \(%rdi\),%eax +[ ]*[a-f0-9]+: 8b 07 movl \(%rdi\),%eax +[ ]*[a-f0-9]+: 0f 20 c0 movq %cr0,%rax +[ ]*[a-f0-9]+: 0f 20 c0 movq %cr0,%rax +[ ]*[a-f0-9]+: 0f 22 f8 movq %rax,%cr7 +[ ]*[a-f0-9]+: 0f 22 f8 movq %rax,%cr7 +[ ]*[a-f0-9]+: 0f 21 c0 movq %db0,%rax +[ ]*[a-f0-9]+: 0f 21 c0 movq %db0,%rax +[ ]*[a-f0-9]+: 0f 23 f8 movq %rax,%db7 +[ ]*[a-f0-9]+: 0f 23 f8 movq %rax,%db7 +[ ]*[a-f0-9]+: d8 c0 fadd %st\(0\),%st +[ ]*[a-f0-9]+: dc c0 fadd %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f0 fdiv %st\(0\),%st +[ ]*[a-f0-9]+: dc f0 fdiv %st,%st\(0\) +[ ]*[a-f0-9]+: d8 f8 fdivr %st\(0\),%st +[ ]*[a-f0-9]+: dc f8 fdivr %st,%st\(0\) +[ ]*[a-f0-9]+: d8 c8 fmul %st\(0\),%st +[ ]*[a-f0-9]+: dc c8 fmul %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e0 fsub %st\(0\),%st +[ ]*[a-f0-9]+: dc e0 fsub %st,%st\(0\) +[ ]*[a-f0-9]+: d8 e8 fsubr %st\(0\),%st +[ ]*[a-f0-9]+: dc e8 fsubr %st,%st\(0\) [ ]*[a-f0-9]+: c5 fd 28 f4 vmovapd %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fd 29 e6 vmovapd.s %ymm4,%ymm6 [ ]*[a-f0-9]+: c5 fc 28 f4 vmovaps %ymm4,%ymm6 @@ -203,6 +239,74 @@ Disassembly of section .text: [ ]*[a-f0-9]+: c5 ca 11 e2 vmovss.s %xmm4,%xmm6,%xmm2 [ ]*[a-f0-9]+: 0f 6f e0 movq %mm0,%mm4 [ ]*[a-f0-9]+: 0f 7f c4 movq.s %mm0,%mm4 +[ ]*[a-f0-9]+: 62 f1 fd 48 28 f4 vmovapd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 29 e6 vmovapd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 28 f4 vmovaps %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 29 e6 vmovaps.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 6f f4 vmovdqa32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7d 48 7f e6 vmovdqa32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 6f f4 vmovdqa64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 7f e6 vmovdqa64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 6f f4 vmovdqu8 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7f 48 7f e6 vmovdqu8.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 6f f4 vmovdqu16 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 ff 48 7f e6 vmovdqu16.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 6f f4 vmovdqu32 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7e 48 7f e6 vmovdqu32.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 6f f4 vmovdqu64 %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fe 48 7f e6 vmovdqu64.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 10 f4 vmovupd %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 48 11 e6 vmovupd.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 10 f4 vmovups %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 7c 48 11 e6 vmovups.s %zmm4,%zmm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 28 f4 vmovapd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 29 e6 vmovapd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 28 f4 vmovaps %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 29 e6 vmovaps.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 28 6f f4 vmovdqa32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7d 28 7f e6 vmovdqa32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 6f f4 vmovdqa64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 28 7f e6 vmovdqa64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 6f f4 vmovdqu8 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7f 28 7f e6 vmovdqu8.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 6f f4 vmovdqu16 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 ff 28 7f e6 vmovdqu16.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 6f f4 vmovdqu32 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 7e 28 7f e6 vmovdqu32.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 6f f4 vmovdqu64 %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fe 28 7f e6 vmovdqu64.s %ymm4,%ymm6 +[ ]*[a-f0-9]+: 62 f1 fd 2f 10 f4 vmovupd %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 2f 11 e6 vmovupd.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 10 f4 vmovups %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 2f 11 e6 vmovups.s %ymm4,%ymm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 28 f4 vmovapd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 29 e6 vmovapd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 28 f4 vmovaps %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 29 e6 vmovaps.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7d 08 6f f4 vmovdqa32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7d 08 7f e6 vmovdqa32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 6f f4 vmovdqa64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 7f e6 vmovdqa64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 6f f4 vmovdqu8 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7f 08 7f e6 vmovdqu8.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 6f f4 vmovdqu16 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 ff 08 7f e6 vmovdqu16.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 6f f4 vmovdqu32 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 7e 08 7f e6 vmovdqu32.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 6f f4 vmovdqu64 %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7f e6 vmovdqu64.s %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fe 08 7e f4 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 08 d6 e6 vmovq %xmm4,%xmm6 +[ ]*[a-f0-9]+: 62 f1 fd 0f 10 f4 vmovupd %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 fd 0f 11 e6 vmovupd.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 10 f4 vmovups %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 7c 0f 11 e6 vmovups.s %xmm4,%xmm6\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 10 d4 vmovsd %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 cf 0f 11 e2 vmovsd.s %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 10 d4 vmovss %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 62 f1 4e 0f 11 e2 vmovss.s %xmm4,%xmm6,%xmm2\{%k7\} +[ ]*[a-f0-9]+: 66 0f 1a d8 bndmov %bnd0,%bnd3 +[ ]*[a-f0-9]+: 66 0f 1b c3 bndmov.s %bnd0,%bnd3 [ ]*[a-f0-9]+: 00 d1 addb %dl,%cl [ ]*[a-f0-9]+: 02 ca addb.s %dl,%cl [ ]*[a-f0-9]+: 66 01 d1 addw %dx,%cx
- Previous message (by thread): [PATCH v2 2/7] x86: improve operand reversal
- Next message (by thread): [PATCH v2 3/7] x86: fold ILP32 output of "opts" tests
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
More information about the Binutils mailing list