Automatic date update in version.in
[binutils-gdb.git] / gas / testsuite / gas / i386 / optimize-1.s
blobce537582b7c0676d48eae990470e70c18b257fdd
1 # Check instructions with optimized encoding
3 .text
4 _start:
5 vandnpd %zmm1, %zmm1, %zmm5{%k7}
6 vandnpd %ymm1, %ymm1, %ymm5 {%k7} {z}
7 vandnpd %zmm1, %zmm1, %zmm5
8 vandnpd %ymm1, %ymm1, %ymm5
10 vandnps %zmm1, %zmm1, %zmm5{%k7}
11 vandnps %ymm1, %ymm1, %ymm5{z}{%k7}
12 vandnps %zmm1, %zmm1, %zmm5
13 vandnps %ymm1, %ymm1, %ymm5
15 vpandn %ymm1, %ymm1, %ymm5
17 vpandnd %zmm1, %zmm1, %zmm5{%k7}
18 vpandnd %ymm1, %ymm1, %ymm5{z}{%k7}
19 vpandnd %zmm1, %zmm1, %zmm5
20 vpandnd %ymm1, %ymm1, %ymm5
22 vpandnq %zmm1, %zmm1, %zmm5{%k7}
23 vpandnq %ymm1, %ymm1, %ymm5{z}{%k7}
24 vpandnq %zmm1, %zmm1, %zmm5
25 vpandnq %ymm1, %ymm1, %ymm5
27 vxorpd %zmm1, %zmm1, %zmm5{%k7}
28 vxorpd %ymm1, %ymm1, %ymm5{z}{%k7}
29 vxorpd %zmm1, %zmm1, %zmm5
30 vxorpd %ymm1, %ymm1, %ymm5
32 vxorps %zmm1, %zmm1, %zmm5{%k7}
33 vxorps %ymm1, %ymm1, %ymm5{z}{%k7}
34 vxorps %zmm1, %zmm1, %zmm5
35 vxorps %ymm1, %ymm1, %ymm5
37 vpxor %ymm1, %ymm1, %ymm5
39 vpxord %zmm1, %zmm1, %zmm5{%k7}
40 vpxord %ymm1, %ymm1, %ymm5{z}{%k7}
41 vpxord %zmm1, %zmm1, %zmm5
42 vpxord %ymm1, %ymm1, %ymm5
44 vpxorq %zmm1, %zmm1, %zmm5{%k7}
45 vpxorq %ymm1, %ymm1, %ymm5{z}{%k7}
46 vpxorq %zmm1, %zmm1, %zmm5
47 vpxorq %ymm1, %ymm1, %ymm5
49 vpsubb %zmm1, %zmm1, %zmm5{%k7}
50 vpsubb %ymm1, %ymm1, %ymm5{z}{%k7}
51 vpsubb %zmm1, %zmm1, %zmm5
52 vpsubb %ymm1, %ymm1, %ymm5
54 vpsubw %zmm1, %zmm1, %zmm5{%k7}
55 vpsubw %ymm1, %ymm1, %ymm5{z}{%k7}
56 vpsubw %zmm1, %zmm1, %zmm5
57 vpsubw %ymm1, %ymm1, %ymm5
59 vpsubd %zmm1, %zmm1, %zmm5{%k7}
60 vpsubd %ymm1, %ymm1, %ymm5{z}{%k7}
61 vpsubd %zmm1, %zmm1, %zmm5
62 vpsubd %ymm1, %ymm1, %ymm5
64 vpsubq %zmm1, %zmm1, %zmm5{%k7}
65 vpsubq %ymm1, %ymm1, %ymm5{z}{%k7}
66 vpsubq %zmm1, %zmm1, %zmm5
67 vpsubq %ymm1, %ymm1, %ymm5
69 kxord %k1, %k1, %k5
70 kxorq %k1, %k1, %k5
72 kandnd %k1, %k1, %k5
73 kandnq %k1, %k1, %k5
75 vmovdqa32 %xmm1, %xmm2
76 vmovdqa64 %xmm1, %xmm2
77 vmovdqu8 %xmm1, %xmm2
78 vmovdqu16 %xmm1, %xmm2
79 vmovdqu32 %xmm1, %xmm2
80 vmovdqu64 %xmm1, %xmm2
82 vmovdqa32 127(%eax), %xmm2
83 vmovdqa64 127(%eax), %xmm2
84 vmovdqu8 127(%eax), %xmm2
85 vmovdqu16 127(%eax), %xmm2
86 vmovdqu32 127(%eax), %xmm2
87 vmovdqu64 127(%eax), %xmm2
89 vmovdqa32 %xmm1, 128(%eax)
90 vmovdqa64 %xmm1, 128(%eax)
91 vmovdqu8 %xmm1, 128(%eax)
92 vmovdqu16 %xmm1, 128(%eax)
93 vmovdqu32 %xmm1, 128(%eax)
94 vmovdqu64 %xmm1, 128(%eax)
96 vmovdqa32 %ymm1, %ymm2
97 vmovdqa64 %ymm1, %ymm2
98 vmovdqu8 %ymm1, %ymm2
99 vmovdqu16 %ymm1, %ymm2
100 vmovdqu32 %ymm1, %ymm2
101 vmovdqu64 %ymm1, %ymm2
103 vmovdqa32 127(%eax), %ymm2
104 vmovdqa64 127(%eax), %ymm2
105 vmovdqu8 127(%eax), %ymm2
106 vmovdqu16 127(%eax), %ymm2
107 vmovdqu32 127(%eax), %ymm2
108 vmovdqu64 127(%eax), %ymm2
110 vmovdqa32 %ymm1, 128(%eax)
111 vmovdqa64 %ymm1, 128(%eax)
112 vmovdqu8 %ymm1, 128(%eax)
113 vmovdqu16 %ymm1, 128(%eax)
114 vmovdqu32 %ymm1, 128(%eax)
115 vmovdqu64 %ymm1, 128(%eax)
117 vmovdqa32 (%eax), %zmm2
119 vpandd %xmm2, %xmm3, %xmm4
120 vpandq %xmm2, %xmm3, %xmm4
121 vpandnd %xmm2, %xmm3, %xmm4
122 vpandnq %xmm2, %xmm3, %xmm4
123 vpord %xmm2, %xmm3, %xmm4
124 vporq %xmm2, %xmm3, %xmm4
125 vpxord %xmm2, %xmm3, %xmm4
126 vpxorq %xmm2, %xmm3, %xmm4
128 vpandd %ymm2, %ymm3, %ymm4
129 vpandq %ymm2, %ymm3, %ymm4
130 vpandnd %ymm2, %ymm3, %ymm4
131 vpandnq %ymm2, %ymm3, %ymm4
132 vpord %ymm2, %ymm3, %ymm4
133 vporq %ymm2, %ymm3, %ymm4
134 vpxord %ymm2, %ymm3, %ymm4
135 vpxorq %ymm2, %ymm3, %ymm4
137 vpandd 112(%eax), %xmm2, %xmm3
138 vpandq 112(%eax), %xmm2, %xmm3
139 vpandnd 112(%eax), %xmm2, %xmm3
140 vpandnq 112(%eax), %xmm2, %xmm3
141 vpord 112(%eax), %xmm2, %xmm3
142 vporq 112(%eax), %xmm2, %xmm3
143 vpxord 112(%eax), %xmm2, %xmm3
144 vpxorq 112(%eax), %xmm2, %xmm3
146 vpandd 128(%eax), %xmm2, %xmm3
147 vpandq 128(%eax), %xmm2, %xmm3
148 vpandnd 128(%eax), %xmm2, %xmm3
149 vpandnq 128(%eax), %xmm2, %xmm3
150 vpord 128(%eax), %xmm2, %xmm3
151 vporq 128(%eax), %xmm2, %xmm3
152 vpxord 128(%eax), %xmm2, %xmm3
153 vpxorq 128(%eax), %xmm2, %xmm3
155 vpandd 96(%eax), %ymm2, %ymm3
156 vpandq 96(%eax), %ymm2, %ymm3
157 vpandnd 96(%eax), %ymm2, %ymm3
158 vpandnq 96(%eax), %ymm2, %ymm3
159 vpord 96(%eax), %ymm2, %ymm3
160 vporq 96(%eax), %ymm2, %ymm3
161 vpxord 96(%eax), %ymm2, %ymm3
162 vpxorq 96(%eax), %ymm2, %ymm3
164 vpandd 128(%eax), %ymm2, %ymm3
165 vpandq 128(%eax), %ymm2, %ymm3
166 vpandnd 128(%eax), %ymm2, %ymm3
167 vpandnq 128(%eax), %ymm2, %ymm3
168 vpord 128(%eax), %ymm2, %ymm3
169 vporq 128(%eax), %ymm2, %ymm3
170 vpxord 128(%eax), %ymm2, %ymm3
171 vpxorq 128(%eax), %ymm2, %ymm3
173 pcmpgtb %mm2, %mm2
174 pcmpgtb %xmm2, %xmm2
175 vpcmpgtb %xmm2, %xmm2, %xmm0
176 vpcmpgtb %ymm2, %ymm2, %ymm0
178 pcmpgtw %mm2, %mm2
179 pcmpgtw %xmm2, %xmm2
180 vpcmpgtw %xmm2, %xmm2, %xmm0
181 vpcmpgtw %ymm2, %ymm2, %ymm0
183 pcmpgtd %mm2, %mm2
184 pcmpgtd %xmm2, %xmm2
185 vpcmpgtd %xmm2, %xmm2, %xmm0
186 vpcmpgtd %ymm2, %ymm2, %ymm0
188 pcmpgtq %xmm2, %xmm2
189 vpcmpgtq %xmm2, %xmm2, %xmm0
190 vpcmpgtq %ymm2, %ymm2, %ymm0
192 pextrd $0, %xmm1, %edx
193 pextrd $0, %xmm1, (%edx)
194 vpextrd $0, %xmm1, %edx
195 vpextrd $0, %xmm1, (%edx)
197 bt $15, %ax
198 bt $16, %ax
199 btc $15, %ax
200 btr $15, %ax
201 bts $15, %ax
203 .code16
204 bt $15, %eax
205 bt $16, %eax
206 btc $15, %eax
207 btr $15, %eax
208 bts $15, %eax