i386: Check for reserved VEX.vvvv and EVEX.vvvv
[external/binutils.git] / gas / testsuite / gas / i386 / avx-gather.s
1 # Check 32bit AVX gather instructions
2
3         .text
4 _start:
5         vgatherdpd %xmm2, (%ebp, %xmm7, 2),%xmm1
6         vgatherqpd %xmm2, (%ebp, %xmm7, 2),%xmm1
7         vgatherdpd %ymm2, (%ebp, %xmm7, 2),%ymm1
8         vgatherqpd %ymm2, (%ebp, %ymm7, 2),%ymm1
9
10         vgatherdpd %ymm5,0x8(,%xmm4,1),%ymm6
11         vgatherdpd %ymm5,-0x8(,%xmm4,1),%ymm6
12         vgatherdpd %ymm5,(,%xmm4,1),%ymm6
13         vgatherdpd %ymm5,0x298(,%xmm4,1),%ymm6
14         vgatherdpd %ymm5,0x8(,%xmm4,8),%ymm6
15         vgatherdpd %ymm5,-0x8(,%xmm4,8),%ymm6
16         vgatherdpd %ymm5,(,%xmm4,8),%ymm6
17         vgatherdpd %ymm5,0x298(,%xmm4,8),%ymm6
18
19         vgatherdps %xmm2, (%ebp, %xmm7, 2),%xmm1
20         vgatherqps %xmm2, (%ebp, %xmm7, 2),%xmm1
21         vgatherdps %ymm2, (%ebp, %ymm7, 2),%ymm1
22         vgatherqps %xmm2, (%ebp, %ymm7, 2),%xmm1
23
24         vgatherdps %xmm5,0x8(,%xmm4,1),%xmm6
25         vgatherdps %xmm5,-0x8(,%xmm4,1),%xmm6
26         vgatherdps %xmm5,(,%xmm4,1),%xmm6
27         vgatherdps %xmm5,0x298(,%xmm4,1),%xmm6
28         vgatherdps %xmm5,0x8(,%xmm4,8),%xmm6
29         vgatherdps %xmm5,-0x8(,%xmm4,8),%xmm6
30         vgatherdps %xmm5,(,%xmm4,8),%xmm6
31         vgatherdps %xmm5,0x298(,%xmm4,8),%xmm6
32
33         vpgatherdd %xmm2, (%ebp, %xmm7, 2),%xmm1
34         vpgatherqd %xmm2, (%ebp, %xmm7, 2),%xmm1
35         vpgatherdd %ymm2, (%ebp, %ymm7, 2),%ymm1
36         vpgatherqd %xmm2, (%ebp, %ymm7, 2),%xmm1
37
38         vpgatherdd %xmm5,0x8(,%xmm4,1),%xmm6
39         vpgatherdd %xmm5,-0x8(,%xmm4,1),%xmm6
40         vpgatherdd %xmm5,(,%xmm4,1),%xmm6
41         vpgatherdd %xmm5,0x298(,%xmm4,1),%xmm6
42         vpgatherdd %xmm5,0x8(,%xmm4,8),%xmm6
43         vpgatherdd %xmm5,-0x8(,%xmm4,8),%xmm6
44         vpgatherdd %xmm5,(,%xmm4,8),%xmm6
45         vpgatherdd %xmm5,0x298(,%xmm4,8),%xmm6
46
47         vpgatherdq %xmm2, (%ebp, %xmm7, 2),%xmm1
48         vpgatherqq %xmm2, (%ebp, %xmm7, 2),%xmm1
49         vpgatherdq %ymm2, (%ebp, %xmm7, 2),%ymm1
50         vpgatherqq %ymm2, (%ebp, %ymm7, 2),%ymm1
51
52         vpgatherdq %ymm5,0x8(,%xmm4,1),%ymm6
53         vpgatherdq %ymm5,-0x8(,%xmm4,1),%ymm6
54         vpgatherdq %ymm5,(,%xmm4,1),%ymm6
55         vpgatherdq %ymm5,0x298(,%xmm4,1),%ymm6
56         vpgatherdq %ymm5,0x8(,%xmm4,8),%ymm6
57         vpgatherdq %ymm5,-0x8(,%xmm4,8),%ymm6
58         vpgatherdq %ymm5,(,%xmm4,8),%ymm6
59         vpgatherdq %ymm5,0x298(,%xmm4,8),%ymm6
60
61         .intel_syntax noprefix
62 vgatherdpd xmm1,QWORD PTR [ebp+xmm7*2+0x0],xmm2
63 vgatherqpd xmm1,QWORD PTR [ebp+xmm7*2+0x0],xmm2
64 vgatherdpd ymm1,QWORD PTR [ebp+xmm7*2+0x0],ymm2
65 vgatherqpd ymm1,QWORD PTR [ebp+ymm7*2+0x0],ymm2
66 vgatherdpd ymm6,QWORD PTR [xmm4*1+0x8],ymm5
67 vgatherdpd ymm6,QWORD PTR [xmm4*1-0x8],ymm5
68 vgatherdpd ymm6,QWORD PTR [xmm4*1+0x0],ymm5
69 vgatherdpd ymm6,QWORD PTR [xmm4*1+0x298],ymm5
70 vgatherdpd ymm6,QWORD PTR [xmm4*8+0x8],ymm5
71 vgatherdpd ymm6,QWORD PTR [xmm4*8-0x8],ymm5
72 vgatherdpd ymm6,QWORD PTR [xmm4*8+0x0],ymm5
73 vgatherdpd ymm6,QWORD PTR [xmm4*8+0x298],ymm5
74 vgatherdps xmm1,DWORD PTR [ebp+xmm7*2+0x0],xmm2
75 vgatherqps xmm1,DWORD PTR [ebp+xmm7*2+0x0],xmm2
76 vgatherdps ymm1,DWORD PTR [ebp+ymm7*2+0x0],ymm2
77 vgatherqps xmm1,DWORD PTR [ebp+ymm7*2+0x0],xmm2
78 vgatherdps xmm6,DWORD PTR [xmm4*1+0x8],xmm5
79 vgatherdps xmm6,DWORD PTR [xmm4*1-0x8],xmm5
80 vgatherdps xmm6,DWORD PTR [xmm4*1+0x0],xmm5
81 vgatherdps xmm6,DWORD PTR [xmm4*1+0x298],xmm5
82 vgatherdps xmm6,DWORD PTR [xmm4*8+0x8],xmm5
83 vgatherdps xmm6,DWORD PTR [xmm4*8-0x8],xmm5
84 vgatherdps xmm6,DWORD PTR [xmm4*8+0x0],xmm5
85 vgatherdps xmm6,DWORD PTR [xmm4*8+0x298],xmm5
86 vpgatherdd xmm1,DWORD PTR [ebp+xmm7*2+0x0],xmm2
87 vpgatherqd xmm1,DWORD PTR [ebp+xmm7*2+0x0],xmm2
88 vpgatherdd ymm1,DWORD PTR [ebp+ymm7*2+0x0],ymm2
89 vpgatherqd xmm1,DWORD PTR [ebp+ymm7*2+0x0],xmm2
90 vpgatherdd xmm6,DWORD PTR [xmm4*1+0x8],xmm5
91 vpgatherdd xmm6,DWORD PTR [xmm4*1-0x8],xmm5
92 vpgatherdd xmm6,DWORD PTR [xmm4*1+0x0],xmm5
93 vpgatherdd xmm6,DWORD PTR [xmm4*1+0x298],xmm5
94 vpgatherdd xmm6,DWORD PTR [xmm4*8+0x8],xmm5
95 vpgatherdd xmm6,DWORD PTR [xmm4*8-0x8],xmm5
96 vpgatherdd xmm6,DWORD PTR [xmm4*8+0x0],xmm5
97 vpgatherdd xmm6,DWORD PTR [xmm4*8+0x298],xmm5
98 vpgatherdq xmm1,QWORD PTR [ebp+xmm7*2+0x0],xmm2
99 vpgatherqq xmm1,QWORD PTR [ebp+xmm7*2+0x0],xmm2
100 vpgatherdq ymm1,QWORD PTR [ebp+xmm7*2+0x0],ymm2
101 vpgatherqq ymm1,QWORD PTR [ebp+ymm7*2+0x0],ymm2
102 vpgatherdq ymm6,QWORD PTR [xmm4*1+0x8],ymm5
103 vpgatherdq ymm6,QWORD PTR [xmm4*1-0x8],ymm5
104 vpgatherdq ymm6,QWORD PTR [xmm4*1+0x0],ymm5
105 vpgatherdq ymm6,QWORD PTR [xmm4*1+0x298],ymm5
106 vpgatherdq ymm6,QWORD PTR [xmm4*8+0x8],ymm5
107 vpgatherdq ymm6,QWORD PTR [xmm4*8-0x8],ymm5
108 vpgatherdq ymm6,QWORD PTR [xmm4*8+0x0],ymm5
109 vpgatherdq ymm6,QWORD PTR [xmm4*8+0x298],ymm5