Revert "AVX512: Implemented encoding and intrinsics for vextracti64x4 ,vextracti64x...
[oota-llvm.git] / test / MC / X86 / x86-64-avx512dq.s
1 // RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=knl -mattr=+avx512dq  --show-encoding %s | FileCheck %s
2
3 // CHECK: vpmullq %zmm18, %zmm24, %zmm18
4 // CHECK:  encoding: [0x62,0xa2,0xbd,0x40,0x40,0xd2]
5           vpmullq %zmm18, %zmm24, %zmm18
6
7 // CHECK: vpmullq %zmm18, %zmm24, %zmm18 {%k2}
8 // CHECK:  encoding: [0x62,0xa2,0xbd,0x42,0x40,0xd2]
9           vpmullq %zmm18, %zmm24, %zmm18 {%k2}
10
11 // CHECK: vpmullq %zmm18, %zmm24, %zmm18 {%k2} {z}
12 // CHECK:  encoding: [0x62,0xa2,0xbd,0xc2,0x40,0xd2]
13           vpmullq %zmm18, %zmm24, %zmm18 {%k2} {z}
14
15 // CHECK: vpmullq (%rcx), %zmm24, %zmm18
16 // CHECK:  encoding: [0x62,0xe2,0xbd,0x40,0x40,0x11]
17           vpmullq (%rcx), %zmm24, %zmm18
18
19 // CHECK: vpmullq 291(%rax,%r14,8), %zmm24, %zmm18
20 // CHECK:  encoding: [0x62,0xa2,0xbd,0x40,0x40,0x94,0xf0,0x23,0x01,0x00,0x00]
21           vpmullq 291(%rax,%r14,8), %zmm24, %zmm18
22
23 // CHECK: vpmullq (%rcx){1to8}, %zmm24, %zmm18
24 // CHECK:  encoding: [0x62,0xe2,0xbd,0x50,0x40,0x11]
25           vpmullq (%rcx){1to8}, %zmm24, %zmm18
26
27 // CHECK: vpmullq 8128(%rdx), %zmm24, %zmm18
28 // CHECK:  encoding: [0x62,0xe2,0xbd,0x40,0x40,0x52,0x7f]
29           vpmullq 8128(%rdx), %zmm24, %zmm18
30
31 // CHECK: vpmullq 8192(%rdx), %zmm24, %zmm18
32 // CHECK:  encoding: [0x62,0xe2,0xbd,0x40,0x40,0x92,0x00,0x20,0x00,0x00]
33           vpmullq 8192(%rdx), %zmm24, %zmm18
34
35 // CHECK: vpmullq -8192(%rdx), %zmm24, %zmm18
36 // CHECK:  encoding: [0x62,0xe2,0xbd,0x40,0x40,0x52,0x80]
37           vpmullq -8192(%rdx), %zmm24, %zmm18
38
39 // CHECK: vpmullq -8256(%rdx), %zmm24, %zmm18
40 // CHECK:  encoding: [0x62,0xe2,0xbd,0x40,0x40,0x92,0xc0,0xdf,0xff,0xff]
41           vpmullq -8256(%rdx), %zmm24, %zmm18
42
43 // CHECK: vpmullq 1016(%rdx){1to8}, %zmm24, %zmm18
44 // CHECK:  encoding: [0x62,0xe2,0xbd,0x50,0x40,0x52,0x7f]
45           vpmullq 1016(%rdx){1to8}, %zmm24, %zmm18
46
47 // CHECK: vpmullq 1024(%rdx){1to8}, %zmm24, %zmm18
48 // CHECK:  encoding: [0x62,0xe2,0xbd,0x50,0x40,0x92,0x00,0x04,0x00,0x00]
49           vpmullq 1024(%rdx){1to8}, %zmm24, %zmm18
50
51 // CHECK: vpmullq -1024(%rdx){1to8}, %zmm24, %zmm18
52 // CHECK:  encoding: [0x62,0xe2,0xbd,0x50,0x40,0x52,0x80]
53           vpmullq -1024(%rdx){1to8}, %zmm24, %zmm18
54
55 // CHECK: vpmullq -1032(%rdx){1to8}, %zmm24, %zmm18
56 // CHECK:  encoding: [0x62,0xe2,0xbd,0x50,0x40,0x92,0xf8,0xfb,0xff,0xff]
57           vpmullq -1032(%rdx){1to8}, %zmm24, %zmm18
58
59 // CHECK: kandb  %k6, %k5, %k2
60 // CHECK:  encoding: [0xc5,0xd5,0x41,0xd6]
61           kandb  %k6, %k5, %k2
62
63 // CHECK: kandnb %k4, %k6, %k5
64 // CHECK:  encoding: [0xc5,0xcd,0x42,0xec]
65           kandnb %k4, %k6, %k5
66
67 // CHECK: korb   %k5, %k4, %k4
68 // CHECK:  encoding: [0xc5,0xdd,0x45,0xe5]
69           korb   %k5, %k4, %k4
70
71 // CHECK: kxnorb %k7, %k6, %k4
72 // CHECK:  encoding: [0xc5,0xcd,0x46,0xe7]
73           kxnorb %k7, %k6, %k4
74
75 // CHECK: kxorb  %k5, %k6, %k4
76 // CHECK:  encoding: [0xc5,0xcd,0x47,0xe5]
77           kxorb  %k5, %k6, %k4
78
79 // CHECK: knotb  %k4, %k5
80 // CHECK:  encoding: [0xc5,0xf9,0x44,0xec]
81           knotb  %k4, %k5
82
83 // CHECK: knotb  %k3, %k3
84 // CHECK:  encoding: [0xc5,0xf9,0x44,0xdb]
85           knotb  %k3, %k3
86
87 // CHECK: kmovb  %k3, %k5
88 // CHECK:  encoding: [0xc5,0xf9,0x90,0xeb]
89           kmovb  %k3, %k5
90
91 // CHECK: kmovb  (%rcx), %k5
92 // CHECK:  encoding: [0xc5,0xf9,0x90,0x29]
93           kmovb  (%rcx), %k5
94
95 // CHECK: kmovb  4660(%rax,%r14,8), %k5
96 // CHECK:  encoding: [0xc4,0xa1,0x79,0x90,0xac,0xf0,0x34,0x12,0x00,0x00]
97           kmovb  4660(%rax,%r14,8), %k5
98
99 // CHECK: kmovb  %k2, (%rcx)
100 // CHECK:  encoding: [0xc5,0xf9,0x91,0x11]
101           kmovb  %k2, (%rcx)
102
103 // CHECK: kmovb  %k2, 4660(%rax,%r14,8)
104 // CHECK:  encoding: [0xc4,0xa1,0x79,0x91,0x94,0xf0,0x34,0x12,0x00,0x00]
105           kmovb  %k2, 4660(%rax,%r14,8)
106
107 // CHECK: kmovb  %eax, %k2
108 // CHECK:  encoding: [0xc5,0xf9,0x92,0xd0]
109           kmovb  %eax, %k2
110
111 // CHECK: kmovb  %ebp, %k2
112 // CHECK:  encoding: [0xc5,0xf9,0x92,0xd5]
113           kmovb  %ebp, %k2
114
115 // CHECK: kmovb  %r13d, %k2
116 // CHECK:  encoding: [0xc4,0xc1,0x79,0x92,0xd5]
117           kmovb  %r13d, %k2
118
119 // CHECK: kmovb  %k3, %eax
120 // CHECK:  encoding: [0xc5,0xf9,0x93,0xc3]
121           kmovb  %k3, %eax
122
123 // CHECK: kmovb  %k3, %ebp
124 // CHECK:  encoding: [0xc5,0xf9,0x93,0xeb]
125           kmovb  %k3, %ebp
126
127 // CHECK: kmovb  %k3, %r13d
128 // CHECK:  encoding: [0xc5,0x79,0x93,0xeb]
129           kmovb  %k3, %r13d
130
131 // CHECK: vandpd %zmm27, %zmm28, %zmm19
132 // CHECK:  encoding: [0x62,0x81,0x9d,0x40,0x54,0xdb]
133           vandpd %zmm27, %zmm28, %zmm19
134
135 // CHECK: vandpd %zmm27, %zmm28, %zmm19 {%k5}
136 // CHECK:  encoding: [0x62,0x81,0x9d,0x45,0x54,0xdb]
137           vandpd %zmm27, %zmm28, %zmm19 {%k5}
138
139 // CHECK: vandpd %zmm27, %zmm28, %zmm19 {%k5} {z}
140 // CHECK:  encoding: [0x62,0x81,0x9d,0xc5,0x54,0xdb]
141           vandpd %zmm27, %zmm28, %zmm19 {%k5} {z}
142
143 // CHECK: vandpd (%rcx), %zmm28, %zmm19
144 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x54,0x19]
145           vandpd (%rcx), %zmm28, %zmm19
146
147 // CHECK: vandpd 291(%rax,%r14,8), %zmm28, %zmm19
148 // CHECK:  encoding: [0x62,0xa1,0x9d,0x40,0x54,0x9c,0xf0,0x23,0x01,0x00,0x00]
149           vandpd 291(%rax,%r14,8), %zmm28, %zmm19
150
151 // CHECK: vandpd (%rcx){1to8}, %zmm28, %zmm19
152 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x54,0x19]
153           vandpd (%rcx){1to8}, %zmm28, %zmm19
154
155 // CHECK: vandpd 8128(%rdx), %zmm28, %zmm19
156 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x54,0x5a,0x7f]
157           vandpd 8128(%rdx), %zmm28, %zmm19
158
159 // CHECK: vandpd 8192(%rdx), %zmm28, %zmm19
160 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x54,0x9a,0x00,0x20,0x00,0x00]
161           vandpd 8192(%rdx), %zmm28, %zmm19
162
163 // CHECK: vandpd -8192(%rdx), %zmm28, %zmm19
164 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x54,0x5a,0x80]
165           vandpd -8192(%rdx), %zmm28, %zmm19
166
167 // CHECK: vandpd -8256(%rdx), %zmm28, %zmm19
168 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x54,0x9a,0xc0,0xdf,0xff,0xff]
169           vandpd -8256(%rdx), %zmm28, %zmm19
170
171 // CHECK: vandpd 1016(%rdx){1to8}, %zmm28, %zmm19
172 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x54,0x5a,0x7f]
173           vandpd 1016(%rdx){1to8}, %zmm28, %zmm19
174
175 // CHECK: vandpd 1024(%rdx){1to8}, %zmm28, %zmm19
176 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x54,0x9a,0x00,0x04,0x00,0x00]
177           vandpd 1024(%rdx){1to8}, %zmm28, %zmm19
178
179 // CHECK: vandpd -1024(%rdx){1to8}, %zmm28, %zmm19
180 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x54,0x5a,0x80]
181           vandpd -1024(%rdx){1to8}, %zmm28, %zmm19
182
183 // CHECK: vandpd -1032(%rdx){1to8}, %zmm28, %zmm19
184 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x54,0x9a,0xf8,0xfb,0xff,0xff]
185           vandpd -1032(%rdx){1to8}, %zmm28, %zmm19
186
187 // CHECK: vandps %zmm25, %zmm22, %zmm17
188 // CHECK:  encoding: [0x62,0x81,0x4c,0x40,0x54,0xc9]
189           vandps %zmm25, %zmm22, %zmm17
190
191 // CHECK: vandps %zmm25, %zmm22, %zmm17 {%k4}
192 // CHECK:  encoding: [0x62,0x81,0x4c,0x44,0x54,0xc9]
193           vandps %zmm25, %zmm22, %zmm17 {%k4}
194
195 // CHECK: vandps %zmm25, %zmm22, %zmm17 {%k4} {z}
196 // CHECK:  encoding: [0x62,0x81,0x4c,0xc4,0x54,0xc9]
197           vandps %zmm25, %zmm22, %zmm17 {%k4} {z}
198
199 // CHECK: vandps (%rcx), %zmm22, %zmm17
200 // CHECK:  encoding: [0x62,0xe1,0x4c,0x40,0x54,0x09]
201           vandps (%rcx), %zmm22, %zmm17
202
203 // CHECK: vandps 291(%rax,%r14,8), %zmm22, %zmm17
204 // CHECK:  encoding: [0x62,0xa1,0x4c,0x40,0x54,0x8c,0xf0,0x23,0x01,0x00,0x00]
205           vandps 291(%rax,%r14,8), %zmm22, %zmm17
206
207 // CHECK: vandps (%rcx){1to16}, %zmm22, %zmm17
208 // CHECK:  encoding: [0x62,0xe1,0x4c,0x50,0x54,0x09]
209           vandps (%rcx){1to16}, %zmm22, %zmm17
210
211 // CHECK: vandps 8128(%rdx), %zmm22, %zmm17
212 // CHECK:  encoding: [0x62,0xe1,0x4c,0x40,0x54,0x4a,0x7f]
213           vandps 8128(%rdx), %zmm22, %zmm17
214
215 // CHECK: vandps 8192(%rdx), %zmm22, %zmm17
216 // CHECK:  encoding: [0x62,0xe1,0x4c,0x40,0x54,0x8a,0x00,0x20,0x00,0x00]
217           vandps 8192(%rdx), %zmm22, %zmm17
218
219 // CHECK: vandps -8192(%rdx), %zmm22, %zmm17
220 // CHECK:  encoding: [0x62,0xe1,0x4c,0x40,0x54,0x4a,0x80]
221           vandps -8192(%rdx), %zmm22, %zmm17
222
223 // CHECK: vandps -8256(%rdx), %zmm22, %zmm17
224 // CHECK:  encoding: [0x62,0xe1,0x4c,0x40,0x54,0x8a,0xc0,0xdf,0xff,0xff]
225           vandps -8256(%rdx), %zmm22, %zmm17
226
227 // CHECK: vandps 508(%rdx){1to16}, %zmm22, %zmm17
228 // CHECK:  encoding: [0x62,0xe1,0x4c,0x50,0x54,0x4a,0x7f]
229           vandps 508(%rdx){1to16}, %zmm22, %zmm17
230
231 // CHECK: vandps 512(%rdx){1to16}, %zmm22, %zmm17
232 // CHECK:  encoding: [0x62,0xe1,0x4c,0x50,0x54,0x8a,0x00,0x02,0x00,0x00]
233           vandps 512(%rdx){1to16}, %zmm22, %zmm17
234
235 // CHECK: vandps -512(%rdx){1to16}, %zmm22, %zmm17
236 // CHECK:  encoding: [0x62,0xe1,0x4c,0x50,0x54,0x4a,0x80]
237           vandps -512(%rdx){1to16}, %zmm22, %zmm17
238
239 // CHECK: vandps -516(%rdx){1to16}, %zmm22, %zmm17
240 // CHECK:  encoding: [0x62,0xe1,0x4c,0x50,0x54,0x8a,0xfc,0xfd,0xff,0xff]
241           vandps -516(%rdx){1to16}, %zmm22, %zmm17
242
243 // CHECK: vandnpd %zmm22, %zmm17, %zmm20
244 // CHECK:  encoding: [0x62,0xa1,0xf5,0x40,0x55,0xe6]
245           vandnpd %zmm22, %zmm17, %zmm20
246
247 // CHECK: vandnpd %zmm22, %zmm17, %zmm20 {%k1}
248 // CHECK:  encoding: [0x62,0xa1,0xf5,0x41,0x55,0xe6]
249           vandnpd %zmm22, %zmm17, %zmm20 {%k1}
250
251 // CHECK: vandnpd %zmm22, %zmm17, %zmm20 {%k1} {z}
252 // CHECK:  encoding: [0x62,0xa1,0xf5,0xc1,0x55,0xe6]
253           vandnpd %zmm22, %zmm17, %zmm20 {%k1} {z}
254
255 // CHECK: vandnpd (%rcx), %zmm17, %zmm20
256 // CHECK:  encoding: [0x62,0xe1,0xf5,0x40,0x55,0x21]
257           vandnpd (%rcx), %zmm17, %zmm20
258
259 // CHECK: vandnpd 291(%rax,%r14,8), %zmm17, %zmm20
260 // CHECK:  encoding: [0x62,0xa1,0xf5,0x40,0x55,0xa4,0xf0,0x23,0x01,0x00,0x00]
261           vandnpd 291(%rax,%r14,8), %zmm17, %zmm20
262
263 // CHECK: vandnpd (%rcx){1to8}, %zmm17, %zmm20
264 // CHECK:  encoding: [0x62,0xe1,0xf5,0x50,0x55,0x21]
265           vandnpd (%rcx){1to8}, %zmm17, %zmm20
266
267 // CHECK: vandnpd 8128(%rdx), %zmm17, %zmm20
268 // CHECK:  encoding: [0x62,0xe1,0xf5,0x40,0x55,0x62,0x7f]
269           vandnpd 8128(%rdx), %zmm17, %zmm20
270
271 // CHECK: vandnpd 8192(%rdx), %zmm17, %zmm20
272 // CHECK:  encoding: [0x62,0xe1,0xf5,0x40,0x55,0xa2,0x00,0x20,0x00,0x00]
273           vandnpd 8192(%rdx), %zmm17, %zmm20
274
275 // CHECK: vandnpd -8192(%rdx), %zmm17, %zmm20
276 // CHECK:  encoding: [0x62,0xe1,0xf5,0x40,0x55,0x62,0x80]
277           vandnpd -8192(%rdx), %zmm17, %zmm20
278
279 // CHECK: vandnpd -8256(%rdx), %zmm17, %zmm20
280 // CHECK:  encoding: [0x62,0xe1,0xf5,0x40,0x55,0xa2,0xc0,0xdf,0xff,0xff]
281           vandnpd -8256(%rdx), %zmm17, %zmm20
282
283 // CHECK: vandnpd 1016(%rdx){1to8}, %zmm17, %zmm20
284 // CHECK:  encoding: [0x62,0xe1,0xf5,0x50,0x55,0x62,0x7f]
285           vandnpd 1016(%rdx){1to8}, %zmm17, %zmm20
286
287 // CHECK: vandnpd 1024(%rdx){1to8}, %zmm17, %zmm20
288 // CHECK:  encoding: [0x62,0xe1,0xf5,0x50,0x55,0xa2,0x00,0x04,0x00,0x00]
289           vandnpd 1024(%rdx){1to8}, %zmm17, %zmm20
290
291 // CHECK: vandnpd -1024(%rdx){1to8}, %zmm17, %zmm20
292 // CHECK:  encoding: [0x62,0xe1,0xf5,0x50,0x55,0x62,0x80]
293           vandnpd -1024(%rdx){1to8}, %zmm17, %zmm20
294
295 // CHECK: vandnpd -1032(%rdx){1to8}, %zmm17, %zmm20
296 // CHECK:  encoding: [0x62,0xe1,0xf5,0x50,0x55,0xa2,0xf8,0xfb,0xff,0xff]
297           vandnpd -1032(%rdx){1to8}, %zmm17, %zmm20
298
299 // CHECK: vandnps %zmm19, %zmm17, %zmm22
300 // CHECK:  encoding: [0x62,0xa1,0x74,0x40,0x55,0xf3]
301           vandnps %zmm19, %zmm17, %zmm22
302
303 // CHECK: vandnps %zmm19, %zmm17, %zmm22 {%k2}
304 // CHECK:  encoding: [0x62,0xa1,0x74,0x42,0x55,0xf3]
305           vandnps %zmm19, %zmm17, %zmm22 {%k2}
306
307 // CHECK: vandnps %zmm19, %zmm17, %zmm22 {%k2} {z}
308 // CHECK:  encoding: [0x62,0xa1,0x74,0xc2,0x55,0xf3]
309           vandnps %zmm19, %zmm17, %zmm22 {%k2} {z}
310
311 // CHECK: vandnps (%rcx), %zmm17, %zmm22
312 // CHECK:  encoding: [0x62,0xe1,0x74,0x40,0x55,0x31]
313           vandnps (%rcx), %zmm17, %zmm22
314
315 // CHECK: vandnps 291(%rax,%r14,8), %zmm17, %zmm22
316 // CHECK:  encoding: [0x62,0xa1,0x74,0x40,0x55,0xb4,0xf0,0x23,0x01,0x00,0x00]
317           vandnps 291(%rax,%r14,8), %zmm17, %zmm22
318
319 // CHECK: vandnps (%rcx){1to16}, %zmm17, %zmm22
320 // CHECK:  encoding: [0x62,0xe1,0x74,0x50,0x55,0x31]
321           vandnps (%rcx){1to16}, %zmm17, %zmm22
322
323 // CHECK: vandnps 8128(%rdx), %zmm17, %zmm22
324 // CHECK:  encoding: [0x62,0xe1,0x74,0x40,0x55,0x72,0x7f]
325           vandnps 8128(%rdx), %zmm17, %zmm22
326
327 // CHECK: vandnps 8192(%rdx), %zmm17, %zmm22
328 // CHECK:  encoding: [0x62,0xe1,0x74,0x40,0x55,0xb2,0x00,0x20,0x00,0x00]
329           vandnps 8192(%rdx), %zmm17, %zmm22
330
331 // CHECK: vandnps -8192(%rdx), %zmm17, %zmm22
332 // CHECK:  encoding: [0x62,0xe1,0x74,0x40,0x55,0x72,0x80]
333           vandnps -8192(%rdx), %zmm17, %zmm22
334
335 // CHECK: vandnps -8256(%rdx), %zmm17, %zmm22
336 // CHECK:  encoding: [0x62,0xe1,0x74,0x40,0x55,0xb2,0xc0,0xdf,0xff,0xff]
337           vandnps -8256(%rdx), %zmm17, %zmm22
338
339 // CHECK: vandnps 508(%rdx){1to16}, %zmm17, %zmm22
340 // CHECK:  encoding: [0x62,0xe1,0x74,0x50,0x55,0x72,0x7f]
341           vandnps 508(%rdx){1to16}, %zmm17, %zmm22
342
343 // CHECK: vandnps 512(%rdx){1to16}, %zmm17, %zmm22
344 // CHECK:  encoding: [0x62,0xe1,0x74,0x50,0x55,0xb2,0x00,0x02,0x00,0x00]
345           vandnps 512(%rdx){1to16}, %zmm17, %zmm22
346
347 // CHECK: vandnps -512(%rdx){1to16}, %zmm17, %zmm22
348 // CHECK:  encoding: [0x62,0xe1,0x74,0x50,0x55,0x72,0x80]
349           vandnps -512(%rdx){1to16}, %zmm17, %zmm22
350
351 // CHECK: vandnps -516(%rdx){1to16}, %zmm17, %zmm22
352 // CHECK:  encoding: [0x62,0xe1,0x74,0x50,0x55,0xb2,0xfc,0xfd,0xff,0xff]
353           vandnps -516(%rdx){1to16}, %zmm17, %zmm22
354
355 // CHECK: vorpd  %zmm21, %zmm22, %zmm30
356 // CHECK:  encoding: [0x62,0x21,0xcd,0x40,0x56,0xf5]
357           vorpd  %zmm21, %zmm22, %zmm30
358
359 // CHECK: vorpd  %zmm21, %zmm22, %zmm30 {%k6}
360 // CHECK:  encoding: [0x62,0x21,0xcd,0x46,0x56,0xf5]
361           vorpd  %zmm21, %zmm22, %zmm30 {%k6}
362
363 // CHECK: vorpd  %zmm21, %zmm22, %zmm30 {%k6} {z}
364 // CHECK:  encoding: [0x62,0x21,0xcd,0xc6,0x56,0xf5]
365           vorpd  %zmm21, %zmm22, %zmm30 {%k6} {z}
366
367 // CHECK: vorpd  (%rcx), %zmm22, %zmm30
368 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x56,0x31]
369           vorpd  (%rcx), %zmm22, %zmm30
370
371 // CHECK: vorpd  291(%rax,%r14,8), %zmm22, %zmm30
372 // CHECK:  encoding: [0x62,0x21,0xcd,0x40,0x56,0xb4,0xf0,0x23,0x01,0x00,0x00]
373           vorpd  291(%rax,%r14,8), %zmm22, %zmm30
374
375 // CHECK: vorpd  (%rcx){1to8}, %zmm22, %zmm30
376 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x56,0x31]
377           vorpd  (%rcx){1to8}, %zmm22, %zmm30
378
379 // CHECK: vorpd  8128(%rdx), %zmm22, %zmm30
380 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x56,0x72,0x7f]
381           vorpd  8128(%rdx), %zmm22, %zmm30
382
383 // CHECK: vorpd  8192(%rdx), %zmm22, %zmm30
384 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x56,0xb2,0x00,0x20,0x00,0x00]
385           vorpd  8192(%rdx), %zmm22, %zmm30
386
387 // CHECK: vorpd  -8192(%rdx), %zmm22, %zmm30
388 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x56,0x72,0x80]
389           vorpd  -8192(%rdx), %zmm22, %zmm30
390
391 // CHECK: vorpd  -8256(%rdx), %zmm22, %zmm30
392 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x56,0xb2,0xc0,0xdf,0xff,0xff]
393           vorpd  -8256(%rdx), %zmm22, %zmm30
394
395 // CHECK: vorpd  1016(%rdx){1to8}, %zmm22, %zmm30
396 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x56,0x72,0x7f]
397           vorpd  1016(%rdx){1to8}, %zmm22, %zmm30
398
399 // CHECK: vorpd  1024(%rdx){1to8}, %zmm22, %zmm30
400 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x56,0xb2,0x00,0x04,0x00,0x00]
401           vorpd  1024(%rdx){1to8}, %zmm22, %zmm30
402
403 // CHECK: vorpd  -1024(%rdx){1to8}, %zmm22, %zmm30
404 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x56,0x72,0x80]
405           vorpd  -1024(%rdx){1to8}, %zmm22, %zmm30
406
407 // CHECK: vorpd  -1032(%rdx){1to8}, %zmm22, %zmm30
408 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x56,0xb2,0xf8,0xfb,0xff,0xff]
409           vorpd  -1032(%rdx){1to8}, %zmm22, %zmm30
410
411 // CHECK: vorps  %zmm26, %zmm21, %zmm22
412 // CHECK:  encoding: [0x62,0x81,0x54,0x40,0x56,0xf2]
413           vorps  %zmm26, %zmm21, %zmm22
414
415 // CHECK: vorps  %zmm26, %zmm21, %zmm22 {%k7}
416 // CHECK:  encoding: [0x62,0x81,0x54,0x47,0x56,0xf2]
417           vorps  %zmm26, %zmm21, %zmm22 {%k7}
418
419 // CHECK: vorps  %zmm26, %zmm21, %zmm22 {%k7} {z}
420 // CHECK:  encoding: [0x62,0x81,0x54,0xc7,0x56,0xf2]
421           vorps  %zmm26, %zmm21, %zmm22 {%k7} {z}
422
423 // CHECK: vorps  (%rcx), %zmm21, %zmm22
424 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x56,0x31]
425           vorps  (%rcx), %zmm21, %zmm22
426
427 // CHECK: vorps  291(%rax,%r14,8), %zmm21, %zmm22
428 // CHECK:  encoding: [0x62,0xa1,0x54,0x40,0x56,0xb4,0xf0,0x23,0x01,0x00,0x00]
429           vorps  291(%rax,%r14,8), %zmm21, %zmm22
430
431 // CHECK: vorps  (%rcx){1to16}, %zmm21, %zmm22
432 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x56,0x31]
433           vorps  (%rcx){1to16}, %zmm21, %zmm22
434
435 // CHECK: vorps  8128(%rdx), %zmm21, %zmm22
436 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x56,0x72,0x7f]
437           vorps  8128(%rdx), %zmm21, %zmm22
438
439 // CHECK: vorps  8192(%rdx), %zmm21, %zmm22
440 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x56,0xb2,0x00,0x20,0x00,0x00]
441           vorps  8192(%rdx), %zmm21, %zmm22
442
443 // CHECK: vorps  -8192(%rdx), %zmm21, %zmm22
444 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x56,0x72,0x80]
445           vorps  -8192(%rdx), %zmm21, %zmm22
446
447 // CHECK: vorps  -8256(%rdx), %zmm21, %zmm22
448 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x56,0xb2,0xc0,0xdf,0xff,0xff]
449           vorps  -8256(%rdx), %zmm21, %zmm22
450
451 // CHECK: vorps  508(%rdx){1to16}, %zmm21, %zmm22
452 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x56,0x72,0x7f]
453           vorps  508(%rdx){1to16}, %zmm21, %zmm22
454
455 // CHECK: vorps  512(%rdx){1to16}, %zmm21, %zmm22
456 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x56,0xb2,0x00,0x02,0x00,0x00]
457           vorps  512(%rdx){1to16}, %zmm21, %zmm22
458
459 // CHECK: vorps  -512(%rdx){1to16}, %zmm21, %zmm22
460 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x56,0x72,0x80]
461           vorps  -512(%rdx){1to16}, %zmm21, %zmm22
462
463 // CHECK: vorps  -516(%rdx){1to16}, %zmm21, %zmm22
464 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x56,0xb2,0xfc,0xfd,0xff,0xff]
465           vorps  -516(%rdx){1to16}, %zmm21, %zmm22
466
467 // CHECK: vxorpd %zmm24, %zmm24, %zmm27
468 // CHECK:  encoding: [0x62,0x01,0xbd,0x40,0x57,0xd8]
469           vxorpd %zmm24, %zmm24, %zmm27
470
471 // CHECK: vxorpd %zmm24, %zmm24, %zmm27 {%k5}
472 // CHECK:  encoding: [0x62,0x01,0xbd,0x45,0x57,0xd8]
473           vxorpd %zmm24, %zmm24, %zmm27 {%k5}
474
475 // CHECK: vxorpd %zmm24, %zmm24, %zmm27 {%k5} {z}
476 // CHECK:  encoding: [0x62,0x01,0xbd,0xc5,0x57,0xd8]
477           vxorpd %zmm24, %zmm24, %zmm27 {%k5} {z}
478
479 // CHECK: vxorpd (%rcx), %zmm24, %zmm27
480 // CHECK:  encoding: [0x62,0x61,0xbd,0x40,0x57,0x19]
481           vxorpd (%rcx), %zmm24, %zmm27
482
483 // CHECK: vxorpd 291(%rax,%r14,8), %zmm24, %zmm27
484 // CHECK:  encoding: [0x62,0x21,0xbd,0x40,0x57,0x9c,0xf0,0x23,0x01,0x00,0x00]
485           vxorpd 291(%rax,%r14,8), %zmm24, %zmm27
486
487 // CHECK: vxorpd (%rcx){1to8}, %zmm24, %zmm27
488 // CHECK:  encoding: [0x62,0x61,0xbd,0x50,0x57,0x19]
489           vxorpd (%rcx){1to8}, %zmm24, %zmm27
490
491 // CHECK: vxorpd 8128(%rdx), %zmm24, %zmm27
492 // CHECK:  encoding: [0x62,0x61,0xbd,0x40,0x57,0x5a,0x7f]
493           vxorpd 8128(%rdx), %zmm24, %zmm27
494
495 // CHECK: vxorpd 8192(%rdx), %zmm24, %zmm27
496 // CHECK:  encoding: [0x62,0x61,0xbd,0x40,0x57,0x9a,0x00,0x20,0x00,0x00]
497           vxorpd 8192(%rdx), %zmm24, %zmm27
498
499 // CHECK: vxorpd -8192(%rdx), %zmm24, %zmm27
500 // CHECK:  encoding: [0x62,0x61,0xbd,0x40,0x57,0x5a,0x80]
501           vxorpd -8192(%rdx), %zmm24, %zmm27
502
503 // CHECK: vxorpd -8256(%rdx), %zmm24, %zmm27
504 // CHECK:  encoding: [0x62,0x61,0xbd,0x40,0x57,0x9a,0xc0,0xdf,0xff,0xff]
505           vxorpd -8256(%rdx), %zmm24, %zmm27
506
507 // CHECK: vxorpd 1016(%rdx){1to8}, %zmm24, %zmm27
508 // CHECK:  encoding: [0x62,0x61,0xbd,0x50,0x57,0x5a,0x7f]
509           vxorpd 1016(%rdx){1to8}, %zmm24, %zmm27
510
511 // CHECK: vxorpd 1024(%rdx){1to8}, %zmm24, %zmm27
512 // CHECK:  encoding: [0x62,0x61,0xbd,0x50,0x57,0x9a,0x00,0x04,0x00,0x00]
513           vxorpd 1024(%rdx){1to8}, %zmm24, %zmm27
514
515 // CHECK: vxorpd -1024(%rdx){1to8}, %zmm24, %zmm27
516 // CHECK:  encoding: [0x62,0x61,0xbd,0x50,0x57,0x5a,0x80]
517           vxorpd -1024(%rdx){1to8}, %zmm24, %zmm27
518
519 // CHECK: vxorpd -1032(%rdx){1to8}, %zmm24, %zmm27
520 // CHECK:  encoding: [0x62,0x61,0xbd,0x50,0x57,0x9a,0xf8,0xfb,0xff,0xff]
521           vxorpd -1032(%rdx){1to8}, %zmm24, %zmm27
522
523 // CHECK: vxorps %zmm19, %zmm18, %zmm18
524 // CHECK:  encoding: [0x62,0xa1,0x6c,0x40,0x57,0xd3]
525           vxorps %zmm19, %zmm18, %zmm18
526
527 // CHECK: vxorps %zmm19, %zmm18, %zmm18 {%k2}
528 // CHECK:  encoding: [0x62,0xa1,0x6c,0x42,0x57,0xd3]
529           vxorps %zmm19, %zmm18, %zmm18 {%k2}
530
531 // CHECK: vxorps %zmm19, %zmm18, %zmm18 {%k2} {z}
532 // CHECK:  encoding: [0x62,0xa1,0x6c,0xc2,0x57,0xd3]
533           vxorps %zmm19, %zmm18, %zmm18 {%k2} {z}
534
535 // CHECK: vxorps (%rcx), %zmm18, %zmm18
536 // CHECK:  encoding: [0x62,0xe1,0x6c,0x40,0x57,0x11]
537           vxorps (%rcx), %zmm18, %zmm18
538
539 // CHECK: vxorps 291(%rax,%r14,8), %zmm18, %zmm18
540 // CHECK:  encoding: [0x62,0xa1,0x6c,0x40,0x57,0x94,0xf0,0x23,0x01,0x00,0x00]
541           vxorps 291(%rax,%r14,8), %zmm18, %zmm18
542
543 // CHECK: vxorps (%rcx){1to16}, %zmm18, %zmm18
544 // CHECK:  encoding: [0x62,0xe1,0x6c,0x50,0x57,0x11]
545           vxorps (%rcx){1to16}, %zmm18, %zmm18
546
547 // CHECK: vxorps 8128(%rdx), %zmm18, %zmm18
548 // CHECK:  encoding: [0x62,0xe1,0x6c,0x40,0x57,0x52,0x7f]
549           vxorps 8128(%rdx), %zmm18, %zmm18
550
551 // CHECK: vxorps 8192(%rdx), %zmm18, %zmm18
552 // CHECK:  encoding: [0x62,0xe1,0x6c,0x40,0x57,0x92,0x00,0x20,0x00,0x00]
553           vxorps 8192(%rdx), %zmm18, %zmm18
554
555 // CHECK: vxorps -8192(%rdx), %zmm18, %zmm18
556 // CHECK:  encoding: [0x62,0xe1,0x6c,0x40,0x57,0x52,0x80]
557           vxorps -8192(%rdx), %zmm18, %zmm18
558
559 // CHECK: vxorps -8256(%rdx), %zmm18, %zmm18
560 // CHECK:  encoding: [0x62,0xe1,0x6c,0x40,0x57,0x92,0xc0,0xdf,0xff,0xff]
561           vxorps -8256(%rdx), %zmm18, %zmm18
562
563 // CHECK: vxorps 508(%rdx){1to16}, %zmm18, %zmm18
564 // CHECK:  encoding: [0x62,0xe1,0x6c,0x50,0x57,0x52,0x7f]
565           vxorps 508(%rdx){1to16}, %zmm18, %zmm18
566
567 // CHECK: vxorps 512(%rdx){1to16}, %zmm18, %zmm18
568 // CHECK:  encoding: [0x62,0xe1,0x6c,0x50,0x57,0x92,0x00,0x02,0x00,0x00]
569           vxorps 512(%rdx){1to16}, %zmm18, %zmm18
570
571 // CHECK: vxorps -512(%rdx){1to16}, %zmm18, %zmm18
572 // CHECK:  encoding: [0x62,0xe1,0x6c,0x50,0x57,0x52,0x80]
573           vxorps -512(%rdx){1to16}, %zmm18, %zmm18
574
575 // CHECK: vxorps -516(%rdx){1to16}, %zmm18, %zmm18
576 // CHECK:  encoding: [0x62,0xe1,0x6c,0x50,0x57,0x92,0xfc,0xfd,0xff,0xff]
577           vxorps -516(%rdx){1to16}, %zmm18, %zmm18
578 // CHECK: vandpd %zmm22, %zmm22, %zmm24
579 // CHECK:  encoding: [0x62,0x21,0xcd,0x40,0x54,0xc6]
580           vandpd %zmm22, %zmm22, %zmm24
581
582 // CHECK: vandpd %zmm22, %zmm22, %zmm24 {%k4}
583 // CHECK:  encoding: [0x62,0x21,0xcd,0x44,0x54,0xc6]
584           vandpd %zmm22, %zmm22, %zmm24 {%k4}
585
586 // CHECK: vandpd %zmm22, %zmm22, %zmm24 {%k4} {z}
587 // CHECK:  encoding: [0x62,0x21,0xcd,0xc4,0x54,0xc6]
588           vandpd %zmm22, %zmm22, %zmm24 {%k4} {z}
589
590 // CHECK: vandpd (%rcx), %zmm22, %zmm24
591 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x54,0x01]
592           vandpd (%rcx), %zmm22, %zmm24
593
594 // CHECK: vandpd 4660(%rax,%r14,8), %zmm22, %zmm24
595 // CHECK:  encoding: [0x62,0x21,0xcd,0x40,0x54,0x84,0xf0,0x34,0x12,0x00,0x00]
596           vandpd 4660(%rax,%r14,8), %zmm22, %zmm24
597
598 // CHECK: vandpd (%rcx){1to8}, %zmm22, %zmm24
599 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x54,0x01]
600           vandpd (%rcx){1to8}, %zmm22, %zmm24
601
602 // CHECK: vandpd 8128(%rdx), %zmm22, %zmm24
603 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x54,0x42,0x7f]
604           vandpd 8128(%rdx), %zmm22, %zmm24
605
606 // CHECK: vandpd 8192(%rdx), %zmm22, %zmm24
607 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x54,0x82,0x00,0x20,0x00,0x00]
608           vandpd 8192(%rdx), %zmm22, %zmm24
609
610 // CHECK: vandpd -8192(%rdx), %zmm22, %zmm24
611 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x54,0x42,0x80]
612           vandpd -8192(%rdx), %zmm22, %zmm24
613
614 // CHECK: vandpd -8256(%rdx), %zmm22, %zmm24
615 // CHECK:  encoding: [0x62,0x61,0xcd,0x40,0x54,0x82,0xc0,0xdf,0xff,0xff]
616           vandpd -8256(%rdx), %zmm22, %zmm24
617
618 // CHECK: vandpd 1016(%rdx){1to8}, %zmm22, %zmm24
619 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x54,0x42,0x7f]
620           vandpd 1016(%rdx){1to8}, %zmm22, %zmm24
621
622 // CHECK: vandpd 1024(%rdx){1to8}, %zmm22, %zmm24
623 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x54,0x82,0x00,0x04,0x00,0x00]
624           vandpd 1024(%rdx){1to8}, %zmm22, %zmm24
625
626 // CHECK: vandpd -1024(%rdx){1to8}, %zmm22, %zmm24
627 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x54,0x42,0x80]
628           vandpd -1024(%rdx){1to8}, %zmm22, %zmm24
629
630 // CHECK: vandpd -1032(%rdx){1to8}, %zmm22, %zmm24
631 // CHECK:  encoding: [0x62,0x61,0xcd,0x50,0x54,0x82,0xf8,0xfb,0xff,0xff]
632           vandpd -1032(%rdx){1to8}, %zmm22, %zmm24
633
634 // CHECK: vandps %zmm23, %zmm23, %zmm30
635 // CHECK:  encoding: [0x62,0x21,0x44,0x40,0x54,0xf7]
636           vandps %zmm23, %zmm23, %zmm30
637
638 // CHECK: vandps %zmm23, %zmm23, %zmm30 {%k5}
639 // CHECK:  encoding: [0x62,0x21,0x44,0x45,0x54,0xf7]
640           vandps %zmm23, %zmm23, %zmm30 {%k5}
641
642 // CHECK: vandps %zmm23, %zmm23, %zmm30 {%k5} {z}
643 // CHECK:  encoding: [0x62,0x21,0x44,0xc5,0x54,0xf7]
644           vandps %zmm23, %zmm23, %zmm30 {%k5} {z}
645
646 // CHECK: vandps (%rcx), %zmm23, %zmm30
647 // CHECK:  encoding: [0x62,0x61,0x44,0x40,0x54,0x31]
648           vandps (%rcx), %zmm23, %zmm30
649
650 // CHECK: vandps 4660(%rax,%r14,8), %zmm23, %zmm30
651 // CHECK:  encoding: [0x62,0x21,0x44,0x40,0x54,0xb4,0xf0,0x34,0x12,0x00,0x00]
652           vandps 4660(%rax,%r14,8), %zmm23, %zmm30
653
654 // CHECK: vandps (%rcx){1to16}, %zmm23, %zmm30
655 // CHECK:  encoding: [0x62,0x61,0x44,0x50,0x54,0x31]
656           vandps (%rcx){1to16}, %zmm23, %zmm30
657
658 // CHECK: vandps 8128(%rdx), %zmm23, %zmm30
659 // CHECK:  encoding: [0x62,0x61,0x44,0x40,0x54,0x72,0x7f]
660           vandps 8128(%rdx), %zmm23, %zmm30
661
662 // CHECK: vandps 8192(%rdx), %zmm23, %zmm30
663 // CHECK:  encoding: [0x62,0x61,0x44,0x40,0x54,0xb2,0x00,0x20,0x00,0x00]
664           vandps 8192(%rdx), %zmm23, %zmm30
665
666 // CHECK: vandps -8192(%rdx), %zmm23, %zmm30
667 // CHECK:  encoding: [0x62,0x61,0x44,0x40,0x54,0x72,0x80]
668           vandps -8192(%rdx), %zmm23, %zmm30
669
670 // CHECK: vandps -8256(%rdx), %zmm23, %zmm30
671 // CHECK:  encoding: [0x62,0x61,0x44,0x40,0x54,0xb2,0xc0,0xdf,0xff,0xff]
672           vandps -8256(%rdx), %zmm23, %zmm30
673
674 // CHECK: vandps 508(%rdx){1to16}, %zmm23, %zmm30
675 // CHECK:  encoding: [0x62,0x61,0x44,0x50,0x54,0x72,0x7f]
676           vandps 508(%rdx){1to16}, %zmm23, %zmm30
677
678 // CHECK: vandps 512(%rdx){1to16}, %zmm23, %zmm30
679 // CHECK:  encoding: [0x62,0x61,0x44,0x50,0x54,0xb2,0x00,0x02,0x00,0x00]
680           vandps 512(%rdx){1to16}, %zmm23, %zmm30
681
682 // CHECK: vandps -512(%rdx){1to16}, %zmm23, %zmm30
683 // CHECK:  encoding: [0x62,0x61,0x44,0x50,0x54,0x72,0x80]
684           vandps -512(%rdx){1to16}, %zmm23, %zmm30
685
686 // CHECK: vandps -516(%rdx){1to16}, %zmm23, %zmm30
687 // CHECK:  encoding: [0x62,0x61,0x44,0x50,0x54,0xb2,0xfc,0xfd,0xff,0xff]
688           vandps -516(%rdx){1to16}, %zmm23, %zmm30
689
690 // CHECK: vandnpd %zmm21, %zmm21, %zmm25
691 // CHECK:  encoding: [0x62,0x21,0xd5,0x40,0x55,0xcd]
692           vandnpd %zmm21, %zmm21, %zmm25
693
694 // CHECK: vandnpd %zmm21, %zmm21, %zmm25 {%k2}
695 // CHECK:  encoding: [0x62,0x21,0xd5,0x42,0x55,0xcd]
696           vandnpd %zmm21, %zmm21, %zmm25 {%k2}
697
698 // CHECK: vandnpd %zmm21, %zmm21, %zmm25 {%k2} {z}
699 // CHECK:  encoding: [0x62,0x21,0xd5,0xc2,0x55,0xcd]
700           vandnpd %zmm21, %zmm21, %zmm25 {%k2} {z}
701
702 // CHECK: vandnpd (%rcx), %zmm21, %zmm25
703 // CHECK:  encoding: [0x62,0x61,0xd5,0x40,0x55,0x09]
704           vandnpd (%rcx), %zmm21, %zmm25
705
706 // CHECK: vandnpd 4660(%rax,%r14,8), %zmm21, %zmm25
707 // CHECK:  encoding: [0x62,0x21,0xd5,0x40,0x55,0x8c,0xf0,0x34,0x12,0x00,0x00]
708           vandnpd 4660(%rax,%r14,8), %zmm21, %zmm25
709
710 // CHECK: vandnpd (%rcx){1to8}, %zmm21, %zmm25
711 // CHECK:  encoding: [0x62,0x61,0xd5,0x50,0x55,0x09]
712           vandnpd (%rcx){1to8}, %zmm21, %zmm25
713
714 // CHECK: vandnpd 8128(%rdx), %zmm21, %zmm25
715 // CHECK:  encoding: [0x62,0x61,0xd5,0x40,0x55,0x4a,0x7f]
716           vandnpd 8128(%rdx), %zmm21, %zmm25
717
718 // CHECK: vandnpd 8192(%rdx), %zmm21, %zmm25
719 // CHECK:  encoding: [0x62,0x61,0xd5,0x40,0x55,0x8a,0x00,0x20,0x00,0x00]
720           vandnpd 8192(%rdx), %zmm21, %zmm25
721
722 // CHECK: vandnpd -8192(%rdx), %zmm21, %zmm25
723 // CHECK:  encoding: [0x62,0x61,0xd5,0x40,0x55,0x4a,0x80]
724           vandnpd -8192(%rdx), %zmm21, %zmm25
725
726 // CHECK: vandnpd -8256(%rdx), %zmm21, %zmm25
727 // CHECK:  encoding: [0x62,0x61,0xd5,0x40,0x55,0x8a,0xc0,0xdf,0xff,0xff]
728           vandnpd -8256(%rdx), %zmm21, %zmm25
729
730 // CHECK: vandnpd 1016(%rdx){1to8}, %zmm21, %zmm25
731 // CHECK:  encoding: [0x62,0x61,0xd5,0x50,0x55,0x4a,0x7f]
732           vandnpd 1016(%rdx){1to8}, %zmm21, %zmm25
733
734 // CHECK: vandnpd 1024(%rdx){1to8}, %zmm21, %zmm25
735 // CHECK:  encoding: [0x62,0x61,0xd5,0x50,0x55,0x8a,0x00,0x04,0x00,0x00]
736           vandnpd 1024(%rdx){1to8}, %zmm21, %zmm25
737
738 // CHECK: vandnpd -1024(%rdx){1to8}, %zmm21, %zmm25
739 // CHECK:  encoding: [0x62,0x61,0xd5,0x50,0x55,0x4a,0x80]
740           vandnpd -1024(%rdx){1to8}, %zmm21, %zmm25
741
742 // CHECK: vandnpd -1032(%rdx){1to8}, %zmm21, %zmm25
743 // CHECK:  encoding: [0x62,0x61,0xd5,0x50,0x55,0x8a,0xf8,0xfb,0xff,0xff]
744           vandnpd -1032(%rdx){1to8}, %zmm21, %zmm25
745
746 // CHECK: vandnps %zmm18, %zmm21, %zmm17
747 // CHECK:  encoding: [0x62,0xa1,0x54,0x40,0x55,0xca]
748           vandnps %zmm18, %zmm21, %zmm17
749
750 // CHECK: vandnps %zmm18, %zmm21, %zmm17 {%k1}
751 // CHECK:  encoding: [0x62,0xa1,0x54,0x41,0x55,0xca]
752           vandnps %zmm18, %zmm21, %zmm17 {%k1}
753
754 // CHECK: vandnps %zmm18, %zmm21, %zmm17 {%k1} {z}
755 // CHECK:  encoding: [0x62,0xa1,0x54,0xc1,0x55,0xca]
756           vandnps %zmm18, %zmm21, %zmm17 {%k1} {z}
757
758 // CHECK: vandnps (%rcx), %zmm21, %zmm17
759 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x55,0x09]
760           vandnps (%rcx), %zmm21, %zmm17
761
762 // CHECK: vandnps 4660(%rax,%r14,8), %zmm21, %zmm17
763 // CHECK:  encoding: [0x62,0xa1,0x54,0x40,0x55,0x8c,0xf0,0x34,0x12,0x00,0x00]
764           vandnps 4660(%rax,%r14,8), %zmm21, %zmm17
765
766 // CHECK: vandnps (%rcx){1to16}, %zmm21, %zmm17
767 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x55,0x09]
768           vandnps (%rcx){1to16}, %zmm21, %zmm17
769
770 // CHECK: vandnps 8128(%rdx), %zmm21, %zmm17
771 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x55,0x4a,0x7f]
772           vandnps 8128(%rdx), %zmm21, %zmm17
773
774 // CHECK: vandnps 8192(%rdx), %zmm21, %zmm17
775 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x55,0x8a,0x00,0x20,0x00,0x00]
776           vandnps 8192(%rdx), %zmm21, %zmm17
777
778 // CHECK: vandnps -8192(%rdx), %zmm21, %zmm17
779 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x55,0x4a,0x80]
780           vandnps -8192(%rdx), %zmm21, %zmm17
781
782 // CHECK: vandnps -8256(%rdx), %zmm21, %zmm17
783 // CHECK:  encoding: [0x62,0xe1,0x54,0x40,0x55,0x8a,0xc0,0xdf,0xff,0xff]
784           vandnps -8256(%rdx), %zmm21, %zmm17
785
786 // CHECK: vandnps 508(%rdx){1to16}, %zmm21, %zmm17
787 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x55,0x4a,0x7f]
788           vandnps 508(%rdx){1to16}, %zmm21, %zmm17
789
790 // CHECK: vandnps 512(%rdx){1to16}, %zmm21, %zmm17
791 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x55,0x8a,0x00,0x02,0x00,0x00]
792           vandnps 512(%rdx){1to16}, %zmm21, %zmm17
793
794 // CHECK: vandnps -512(%rdx){1to16}, %zmm21, %zmm17
795 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x55,0x4a,0x80]
796           vandnps -512(%rdx){1to16}, %zmm21, %zmm17
797
798 // CHECK: vandnps -516(%rdx){1to16}, %zmm21, %zmm17
799 // CHECK:  encoding: [0x62,0xe1,0x54,0x50,0x55,0x8a,0xfc,0xfd,0xff,0xff]
800           vandnps -516(%rdx){1to16}, %zmm21, %zmm17
801
802 // CHECK: vorpd  %zmm24, %zmm28, %zmm18
803 // CHECK:  encoding: [0x62,0x81,0x9d,0x40,0x56,0xd0]
804           vorpd  %zmm24, %zmm28, %zmm18
805
806 // CHECK: vorpd  %zmm24, %zmm28, %zmm18 {%k1}
807 // CHECK:  encoding: [0x62,0x81,0x9d,0x41,0x56,0xd0]
808           vorpd  %zmm24, %zmm28, %zmm18 {%k1}
809
810 // CHECK: vorpd  %zmm24, %zmm28, %zmm18 {%k1} {z}
811 // CHECK:  encoding: [0x62,0x81,0x9d,0xc1,0x56,0xd0]
812           vorpd  %zmm24, %zmm28, %zmm18 {%k1} {z}
813
814 // CHECK: vorpd  (%rcx), %zmm28, %zmm18
815 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x56,0x11]
816           vorpd  (%rcx), %zmm28, %zmm18
817
818 // CHECK: vorpd  4660(%rax,%r14,8), %zmm28, %zmm18
819 // CHECK:  encoding: [0x62,0xa1,0x9d,0x40,0x56,0x94,0xf0,0x34,0x12,0x00,0x00]
820           vorpd  4660(%rax,%r14,8), %zmm28, %zmm18
821
822 // CHECK: vorpd  (%rcx){1to8}, %zmm28, %zmm18
823 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x56,0x11]
824           vorpd  (%rcx){1to8}, %zmm28, %zmm18
825
826 // CHECK: vorpd  8128(%rdx), %zmm28, %zmm18
827 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x56,0x52,0x7f]
828           vorpd  8128(%rdx), %zmm28, %zmm18
829
830 // CHECK: vorpd  8192(%rdx), %zmm28, %zmm18
831 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x56,0x92,0x00,0x20,0x00,0x00]
832           vorpd  8192(%rdx), %zmm28, %zmm18
833
834 // CHECK: vorpd  -8192(%rdx), %zmm28, %zmm18
835 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x56,0x52,0x80]
836           vorpd  -8192(%rdx), %zmm28, %zmm18
837
838 // CHECK: vorpd  -8256(%rdx), %zmm28, %zmm18
839 // CHECK:  encoding: [0x62,0xe1,0x9d,0x40,0x56,0x92,0xc0,0xdf,0xff,0xff]
840           vorpd  -8256(%rdx), %zmm28, %zmm18
841
842 // CHECK: vorpd  1016(%rdx){1to8}, %zmm28, %zmm18
843 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x56,0x52,0x7f]
844           vorpd  1016(%rdx){1to8}, %zmm28, %zmm18
845
846 // CHECK: vorpd  1024(%rdx){1to8}, %zmm28, %zmm18
847 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x56,0x92,0x00,0x04,0x00,0x00]
848           vorpd  1024(%rdx){1to8}, %zmm28, %zmm18
849
850 // CHECK: vorpd  -1024(%rdx){1to8}, %zmm28, %zmm18
851 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x56,0x52,0x80]
852           vorpd  -1024(%rdx){1to8}, %zmm28, %zmm18
853
854 // CHECK: vorpd  -1032(%rdx){1to8}, %zmm28, %zmm18
855 // CHECK:  encoding: [0x62,0xe1,0x9d,0x50,0x56,0x92,0xf8,0xfb,0xff,0xff]
856           vorpd  -1032(%rdx){1to8}, %zmm28, %zmm18
857
858 // CHECK: vorps  %zmm23, %zmm17, %zmm28
859 // CHECK:  encoding: [0x62,0x21,0x74,0x40,0x56,0xe7]
860           vorps  %zmm23, %zmm17, %zmm28
861
862 // CHECK: vorps  %zmm23, %zmm17, %zmm28 {%k7}
863 // CHECK:  encoding: [0x62,0x21,0x74,0x47,0x56,0xe7]
864           vorps  %zmm23, %zmm17, %zmm28 {%k7}
865
866 // CHECK: vorps  %zmm23, %zmm17, %zmm28 {%k7} {z}
867 // CHECK:  encoding: [0x62,0x21,0x74,0xc7,0x56,0xe7]
868           vorps  %zmm23, %zmm17, %zmm28 {%k7} {z}
869
870 // CHECK: vorps  (%rcx), %zmm17, %zmm28
871 // CHECK:  encoding: [0x62,0x61,0x74,0x40,0x56,0x21]
872           vorps  (%rcx), %zmm17, %zmm28
873
874 // CHECK: vorps  4660(%rax,%r14,8), %zmm17, %zmm28
875 // CHECK:  encoding: [0x62,0x21,0x74,0x40,0x56,0xa4,0xf0,0x34,0x12,0x00,0x00]
876           vorps  4660(%rax,%r14,8), %zmm17, %zmm28
877
878 // CHECK: vorps  (%rcx){1to16}, %zmm17, %zmm28
879 // CHECK:  encoding: [0x62,0x61,0x74,0x50,0x56,0x21]
880           vorps  (%rcx){1to16}, %zmm17, %zmm28
881
882 // CHECK: vorps  8128(%rdx), %zmm17, %zmm28
883 // CHECK:  encoding: [0x62,0x61,0x74,0x40,0x56,0x62,0x7f]
884           vorps  8128(%rdx), %zmm17, %zmm28
885
886 // CHECK: vorps  8192(%rdx), %zmm17, %zmm28
887 // CHECK:  encoding: [0x62,0x61,0x74,0x40,0x56,0xa2,0x00,0x20,0x00,0x00]
888           vorps  8192(%rdx), %zmm17, %zmm28
889
890 // CHECK: vorps  -8192(%rdx), %zmm17, %zmm28
891 // CHECK:  encoding: [0x62,0x61,0x74,0x40,0x56,0x62,0x80]
892           vorps  -8192(%rdx), %zmm17, %zmm28
893
894 // CHECK: vorps  -8256(%rdx), %zmm17, %zmm28
895 // CHECK:  encoding: [0x62,0x61,0x74,0x40,0x56,0xa2,0xc0,0xdf,0xff,0xff]
896           vorps  -8256(%rdx), %zmm17, %zmm28
897
898 // CHECK: vorps  508(%rdx){1to16}, %zmm17, %zmm28
899 // CHECK:  encoding: [0x62,0x61,0x74,0x50,0x56,0x62,0x7f]
900           vorps  508(%rdx){1to16}, %zmm17, %zmm28
901
902 // CHECK: vorps  512(%rdx){1to16}, %zmm17, %zmm28
903 // CHECK:  encoding: [0x62,0x61,0x74,0x50,0x56,0xa2,0x00,0x02,0x00,0x00]
904           vorps  512(%rdx){1to16}, %zmm17, %zmm28
905
906 // CHECK: vorps  -512(%rdx){1to16}, %zmm17, %zmm28
907 // CHECK:  encoding: [0x62,0x61,0x74,0x50,0x56,0x62,0x80]
908           vorps  -512(%rdx){1to16}, %zmm17, %zmm28
909
910 // CHECK: vorps  -516(%rdx){1to16}, %zmm17, %zmm28
911 // CHECK:  encoding: [0x62,0x61,0x74,0x50,0x56,0xa2,0xfc,0xfd,0xff,0xff]
912           vorps  -516(%rdx){1to16}, %zmm17, %zmm28
913
914 // CHECK: vxorpd %zmm27, %zmm18, %zmm28
915 // CHECK:  encoding: [0x62,0x01,0xed,0x40,0x57,0xe3]
916           vxorpd %zmm27, %zmm18, %zmm28
917
918 // CHECK: vxorpd %zmm27, %zmm18, %zmm28 {%k4}
919 // CHECK:  encoding: [0x62,0x01,0xed,0x44,0x57,0xe3]
920           vxorpd %zmm27, %zmm18, %zmm28 {%k4}
921
922 // CHECK: vxorpd %zmm27, %zmm18, %zmm28 {%k4} {z}
923 // CHECK:  encoding: [0x62,0x01,0xed,0xc4,0x57,0xe3]
924           vxorpd %zmm27, %zmm18, %zmm28 {%k4} {z}
925
926 // CHECK: vxorpd (%rcx), %zmm18, %zmm28
927 // CHECK:  encoding: [0x62,0x61,0xed,0x40,0x57,0x21]
928           vxorpd (%rcx), %zmm18, %zmm28
929
930 // CHECK: vxorpd 4660(%rax,%r14,8), %zmm18, %zmm28
931 // CHECK:  encoding: [0x62,0x21,0xed,0x40,0x57,0xa4,0xf0,0x34,0x12,0x00,0x00]
932           vxorpd 4660(%rax,%r14,8), %zmm18, %zmm28
933
934 // CHECK: vxorpd (%rcx){1to8}, %zmm18, %zmm28
935 // CHECK:  encoding: [0x62,0x61,0xed,0x50,0x57,0x21]
936           vxorpd (%rcx){1to8}, %zmm18, %zmm28
937
938 // CHECK: vxorpd 8128(%rdx), %zmm18, %zmm28
939 // CHECK:  encoding: [0x62,0x61,0xed,0x40,0x57,0x62,0x7f]
940           vxorpd 8128(%rdx), %zmm18, %zmm28
941
942 // CHECK: vxorpd 8192(%rdx), %zmm18, %zmm28
943 // CHECK:  encoding: [0x62,0x61,0xed,0x40,0x57,0xa2,0x00,0x20,0x00,0x00]
944           vxorpd 8192(%rdx), %zmm18, %zmm28
945
946 // CHECK: vxorpd -8192(%rdx), %zmm18, %zmm28
947 // CHECK:  encoding: [0x62,0x61,0xed,0x40,0x57,0x62,0x80]
948           vxorpd -8192(%rdx), %zmm18, %zmm28
949
950 // CHECK: vxorpd -8256(%rdx), %zmm18, %zmm28
951 // CHECK:  encoding: [0x62,0x61,0xed,0x40,0x57,0xa2,0xc0,0xdf,0xff,0xff]
952           vxorpd -8256(%rdx), %zmm18, %zmm28
953
954 // CHECK: vxorpd 1016(%rdx){1to8}, %zmm18, %zmm28
955 // CHECK:  encoding: [0x62,0x61,0xed,0x50,0x57,0x62,0x7f]
956           vxorpd 1016(%rdx){1to8}, %zmm18, %zmm28
957
958 // CHECK: vxorpd 1024(%rdx){1to8}, %zmm18, %zmm28
959 // CHECK:  encoding: [0x62,0x61,0xed,0x50,0x57,0xa2,0x00,0x04,0x00,0x00]
960           vxorpd 1024(%rdx){1to8}, %zmm18, %zmm28
961
962 // CHECK: vxorpd -1024(%rdx){1to8}, %zmm18, %zmm28
963 // CHECK:  encoding: [0x62,0x61,0xed,0x50,0x57,0x62,0x80]
964           vxorpd -1024(%rdx){1to8}, %zmm18, %zmm28
965
966 // CHECK: vxorpd -1032(%rdx){1to8}, %zmm18, %zmm28
967 // CHECK:  encoding: [0x62,0x61,0xed,0x50,0x57,0xa2,0xf8,0xfb,0xff,0xff]
968           vxorpd -1032(%rdx){1to8}, %zmm18, %zmm28
969
970 // CHECK: vxorps %zmm18, %zmm28, %zmm24
971 // CHECK:  encoding: [0x62,0x21,0x1c,0x40,0x57,0xc2]
972           vxorps %zmm18, %zmm28, %zmm24
973
974 // CHECK: vxorps %zmm18, %zmm28, %zmm24 {%k4}
975 // CHECK:  encoding: [0x62,0x21,0x1c,0x44,0x57,0xc2]
976           vxorps %zmm18, %zmm28, %zmm24 {%k4}
977
978 // CHECK: vxorps %zmm18, %zmm28, %zmm24 {%k4} {z}
979 // CHECK:  encoding: [0x62,0x21,0x1c,0xc4,0x57,0xc2]
980           vxorps %zmm18, %zmm28, %zmm24 {%k4} {z}
981
982 // CHECK: vxorps (%rcx), %zmm28, %zmm24
983 // CHECK:  encoding: [0x62,0x61,0x1c,0x40,0x57,0x01]
984           vxorps (%rcx), %zmm28, %zmm24
985
986 // CHECK: vxorps 4660(%rax,%r14,8), %zmm28, %zmm24
987 // CHECK:  encoding: [0x62,0x21,0x1c,0x40,0x57,0x84,0xf0,0x34,0x12,0x00,0x00]
988           vxorps 4660(%rax,%r14,8), %zmm28, %zmm24
989
990 // CHECK: vxorps (%rcx){1to16}, %zmm28, %zmm24
991 // CHECK:  encoding: [0x62,0x61,0x1c,0x50,0x57,0x01]
992           vxorps (%rcx){1to16}, %zmm28, %zmm24
993
994 // CHECK: vxorps 8128(%rdx), %zmm28, %zmm24
995 // CHECK:  encoding: [0x62,0x61,0x1c,0x40,0x57,0x42,0x7f]
996           vxorps 8128(%rdx), %zmm28, %zmm24
997
998 // CHECK: vxorps 8192(%rdx), %zmm28, %zmm24
999 // CHECK:  encoding: [0x62,0x61,0x1c,0x40,0x57,0x82,0x00,0x20,0x00,0x00]
1000           vxorps 8192(%rdx), %zmm28, %zmm24
1001
1002 // CHECK: vxorps -8192(%rdx), %zmm28, %zmm24
1003 // CHECK:  encoding: [0x62,0x61,0x1c,0x40,0x57,0x42,0x80]
1004           vxorps -8192(%rdx), %zmm28, %zmm24
1005
1006 // CHECK: vxorps -8256(%rdx), %zmm28, %zmm24
1007 // CHECK:  encoding: [0x62,0x61,0x1c,0x40,0x57,0x82,0xc0,0xdf,0xff,0xff]
1008           vxorps -8256(%rdx), %zmm28, %zmm24
1009
1010 // CHECK: vxorps 508(%rdx){1to16}, %zmm28, %zmm24
1011 // CHECK:  encoding: [0x62,0x61,0x1c,0x50,0x57,0x42,0x7f]
1012           vxorps 508(%rdx){1to16}, %zmm28, %zmm24
1013
1014 // CHECK: vxorps 512(%rdx){1to16}, %zmm28, %zmm24
1015 // CHECK:  encoding: [0x62,0x61,0x1c,0x50,0x57,0x82,0x00,0x02,0x00,0x00]
1016           vxorps 512(%rdx){1to16}, %zmm28, %zmm24
1017
1018 // CHECK: vxorps -512(%rdx){1to16}, %zmm28, %zmm24
1019 // CHECK:  encoding: [0x62,0x61,0x1c,0x50,0x57,0x42,0x80]
1020           vxorps -512(%rdx){1to16}, %zmm28, %zmm24
1021
1022 // CHECK: vxorps -516(%rdx){1to16}, %zmm28, %zmm24
1023 // CHECK:  encoding: [0x62,0x61,0x1c,0x50,0x57,0x82,0xfc,0xfd,0xff,0xff]
1024           vxorps -516(%rdx){1to16}, %zmm28, %zmm24
1025
1026 // CHECK: vinserti32x8
1027 // CHECK: encoding: [0x62,0xd3,0x4d,0x40,0x3a,0xdb,0x01]
1028           vinserti32x8  $1, %ymm11, %zmm22, %zmm3
1029
1030 // CHECK: vinsertf64x2
1031 // CHECK: encoding: [0x62,0xf3,0xed,0x48,0x18,0x4f,0x10,0x01]
1032           vinsertf64x2  $1, 256(%rdi), %zmm2, %zmm1
1033
1034 // CHECK: vbroadcastf32x8 (%rcx), %zmm30
1035 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x1b,0x31]
1036           vbroadcastf32x8 (%rcx), %zmm30
1037
1038 // CHECK: vbroadcastf32x8 (%rcx), %zmm30 {%k3}
1039 // CHECK:  encoding: [0x62,0x62,0x7d,0x4b,0x1b,0x31]
1040           vbroadcastf32x8 (%rcx), %zmm30 {%k3}
1041
1042 // CHECK: vbroadcastf32x8 (%rcx), %zmm30 {%k3} {z}
1043 // CHECK:  encoding: [0x62,0x62,0x7d,0xcb,0x1b,0x31]
1044           vbroadcastf32x8 (%rcx), %zmm30 {%k3} {z}
1045
1046 // CHECK: vbroadcastf32x8 291(%rax,%r14,8), %zmm30
1047 // CHECK:  encoding: [0x62,0x22,0x7d,0x48,0x1b,0xb4,0xf0,0x23,0x01,0x00,0x00]
1048           vbroadcastf32x8 291(%rax,%r14,8), %zmm30
1049
1050 // CHECK: vbroadcastf32x8 4064(%rdx), %zmm30
1051 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x1b,0x72,0x7f]
1052           vbroadcastf32x8 4064(%rdx), %zmm30
1053
1054 // CHECK: vbroadcastf32x8 4096(%rdx), %zmm30
1055 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x1b,0xb2,0x00,0x10,0x00,0x00]
1056           vbroadcastf32x8 4096(%rdx), %zmm30
1057
1058 // CHECK: vbroadcastf32x8 -4096(%rdx), %zmm30
1059 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x1b,0x72,0x80]
1060           vbroadcastf32x8 -4096(%rdx), %zmm30
1061
1062 // CHECK: vbroadcastf32x8 -4128(%rdx), %zmm30
1063 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x1b,0xb2,0xe0,0xef,0xff,0xff]
1064           vbroadcastf32x8 -4128(%rdx), %zmm30
1065
1066 // CHECK: vbroadcastf64x2 (%rcx), %zmm28
1067 // CHECK:  encoding: [0x62,0x62,0xfd,0x48,0x1a,0x21]
1068           vbroadcastf64x2 (%rcx), %zmm28
1069
1070 // CHECK: vbroadcastf64x2 (%rcx), %zmm28 {%k4}
1071 // CHECK:  encoding: [0x62,0x62,0xfd,0x4c,0x1a,0x21]
1072           vbroadcastf64x2 (%rcx), %zmm28 {%k4}
1073
1074 // CHECK: vbroadcastf64x2 (%rcx), %zmm28 {%k4} {z}
1075 // CHECK:  encoding: [0x62,0x62,0xfd,0xcc,0x1a,0x21]
1076           vbroadcastf64x2 (%rcx), %zmm28 {%k4} {z}
1077
1078 // CHECK: vbroadcastf64x2 291(%rax,%r14,8), %zmm28
1079 // CHECK:  encoding: [0x62,0x22,0xfd,0x48,0x1a,0xa4,0xf0,0x23,0x01,0x00,0x00]
1080           vbroadcastf64x2 291(%rax,%r14,8), %zmm28
1081
1082 // CHECK: vbroadcastf64x2 2032(%rdx), %zmm28
1083 // CHECK:  encoding: [0x62,0x62,0xfd,0x48,0x1a,0x62,0x7f]
1084           vbroadcastf64x2 2032(%rdx), %zmm28
1085
1086 // CHECK: vbroadcastf64x2 2048(%rdx), %zmm28
1087 // CHECK:  encoding: [0x62,0x62,0xfd,0x48,0x1a,0xa2,0x00,0x08,0x00,0x00]
1088           vbroadcastf64x2 2048(%rdx), %zmm28
1089
1090 // CHECK: vbroadcastf64x2 -2048(%rdx), %zmm28
1091 // CHECK:  encoding: [0x62,0x62,0xfd,0x48,0x1a,0x62,0x80]
1092           vbroadcastf64x2 -2048(%rdx), %zmm28
1093
1094 // CHECK: vbroadcastf64x2 -2064(%rdx), %zmm28
1095 // CHECK:  encoding: [0x62,0x62,0xfd,0x48,0x1a,0xa2,0xf0,0xf7,0xff,0xff]
1096           vbroadcastf64x2 -2064(%rdx), %zmm28
1097
1098 // CHECK: vbroadcasti32x8 (%rcx), %zmm29
1099 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x5b,0x29]
1100           vbroadcasti32x8 (%rcx), %zmm29
1101
1102 // CHECK: vbroadcasti32x8 (%rcx), %zmm29 {%k5}
1103 // CHECK:  encoding: [0x62,0x62,0x7d,0x4d,0x5b,0x29]
1104           vbroadcasti32x8 (%rcx), %zmm29 {%k5}
1105
1106 // CHECK: vbroadcasti32x8 (%rcx), %zmm29 {%k5} {z}
1107 // CHECK:  encoding: [0x62,0x62,0x7d,0xcd,0x5b,0x29]
1108           vbroadcasti32x8 (%rcx), %zmm29 {%k5} {z}
1109
1110 // CHECK: vbroadcasti32x8 291(%rax,%r14,8), %zmm29
1111 // CHECK:  encoding: [0x62,0x22,0x7d,0x48,0x5b,0xac,0xf0,0x23,0x01,0x00,0x00]
1112           vbroadcasti32x8 291(%rax,%r14,8), %zmm29
1113
1114 // CHECK: vbroadcasti32x8 4064(%rdx), %zmm29
1115 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x5b,0x6a,0x7f]
1116           vbroadcasti32x8 4064(%rdx), %zmm29
1117
1118 // CHECK: vbroadcasti32x8 4096(%rdx), %zmm29
1119 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x5b,0xaa,0x00,0x10,0x00,0x00]
1120           vbroadcasti32x8 4096(%rdx), %zmm29
1121
1122 // CHECK: vbroadcasti32x8 -4096(%rdx), %zmm29
1123 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x5b,0x6a,0x80]
1124           vbroadcasti32x8 -4096(%rdx), %zmm29
1125
1126 // CHECK: vbroadcasti32x8 -4128(%rdx), %zmm29
1127 // CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x5b,0xaa,0xe0,0xef,0xff,0xff]
1128           vbroadcasti32x8 -4128(%rdx), %zmm29
1129
1130 // CHECK: vbroadcasti64x2 (%rcx), %zmm20
1131 // CHECK:  encoding: [0x62,0xe2,0xfd,0x48,0x5a,0x21]
1132           vbroadcasti64x2 (%rcx), %zmm20
1133
1134 // CHECK: vbroadcasti64x2 (%rcx), %zmm20 {%k3}
1135 // CHECK:  encoding: [0x62,0xe2,0xfd,0x4b,0x5a,0x21]
1136           vbroadcasti64x2 (%rcx), %zmm20 {%k3}
1137
1138 // CHECK: vbroadcasti64x2 (%rcx), %zmm20 {%k3} {z}
1139 // CHECK:  encoding: [0x62,0xe2,0xfd,0xcb,0x5a,0x21]
1140           vbroadcasti64x2 (%rcx), %zmm20 {%k3} {z}
1141
1142 // CHECK: vbroadcasti64x2 291(%rax,%r14,8), %zmm20
1143 // CHECK:  encoding: [0x62,0xa2,0xfd,0x48,0x5a,0xa4,0xf0,0x23,0x01,0x00,0x00]
1144           vbroadcasti64x2 291(%rax,%r14,8), %zmm20
1145
1146 // CHECK: vbroadcasti64x2 2032(%rdx), %zmm20
1147 // CHECK:  encoding: [0x62,0xe2,0xfd,0x48,0x5a,0x62,0x7f]
1148           vbroadcasti64x2 2032(%rdx), %zmm20
1149
1150 // CHECK: vbroadcasti64x2 2048(%rdx), %zmm20
1151 // CHECK:  encoding: [0x62,0xe2,0xfd,0x48,0x5a,0xa2,0x00,0x08,0x00,0x00]
1152           vbroadcasti64x2 2048(%rdx), %zmm20
1153
1154 // CHECK: vbroadcasti64x2 -2048(%rdx), %zmm20
1155 // CHECK:  encoding: [0x62,0xe2,0xfd,0x48,0x5a,0x62,0x80]
1156           vbroadcasti64x2 -2048(%rdx), %zmm20
1157
1158 // CHECK: vbroadcasti64x2 -2064(%rdx), %zmm20
1159 // CHECK:  encoding: [0x62,0xe2,0xfd,0x48,0x5a,0xa2,0xf0,0xf7,0xff,0xff]
1160           vbroadcasti64x2 -2064(%rdx), %zmm20
1161
1162 // CHECK: vrangepd $171, %zmm17, %zmm19, %zmm17
1163 // CHECK:  encoding: [0x62,0xa3,0xe5,0x40,0x50,0xc9,0xab]
1164           vrangepd $0xab, %zmm17, %zmm19, %zmm17
1165
1166 // CHECK: vrangepd $171, %zmm17, %zmm19, %zmm17 {%k6}
1167 // CHECK:  encoding: [0x62,0xa3,0xe5,0x46,0x50,0xc9,0xab]
1168           vrangepd $0xab, %zmm17, %zmm19, %zmm17 {%k6}
1169
1170 // CHECK: vrangepd $171, %zmm17, %zmm19, %zmm17 {%k6} {z}
1171 // CHECK:  encoding: [0x62,0xa3,0xe5,0xc6,0x50,0xc9,0xab]
1172           vrangepd $0xab, %zmm17, %zmm19, %zmm17 {%k6} {z}
1173
1174 // CHECK: vrangepd $171,{sae}, %zmm17, %zmm19, %zmm17
1175 // CHECK:  encoding: [0x62,0xa3,0xe5,0x10,0x50,0xc9,0xab]
1176           vrangepd $0xab,{sae}, %zmm17, %zmm19, %zmm17
1177
1178 // CHECK: vrangepd $123, %zmm17, %zmm19, %zmm17
1179 // CHECK:  encoding: [0x62,0xa3,0xe5,0x40,0x50,0xc9,0x7b]
1180           vrangepd $0x7b, %zmm17, %zmm19, %zmm17
1181
1182 // CHECK: vrangepd $123,{sae}, %zmm17, %zmm19, %zmm17
1183 // CHECK:  encoding: [0x62,0xa3,0xe5,0x10,0x50,0xc9,0x7b]
1184           vrangepd $0x7b,{sae}, %zmm17, %zmm19, %zmm17
1185
1186 // CHECK: vrangepd $123, (%rcx), %zmm19, %zmm17
1187 // CHECK:  encoding: [0x62,0xe3,0xe5,0x40,0x50,0x09,0x7b]
1188           vrangepd $0x7b,(%rcx), %zmm19, %zmm17
1189
1190 // CHECK: vrangepd $123, 291(%rax,%r14,8), %zmm19, %zmm17
1191 // CHECK:  encoding: [0x62,0xa3,0xe5,0x40,0x50,0x8c,0xf0,0x23,0x01,0x00,0x00,0x7b]
1192           vrangepd $0x7b,291(%rax,%r14,8), %zmm19, %zmm17
1193
1194 // CHECK: vrangepd $123, (%rcx){1to8}, %zmm19, %zmm17
1195 // CHECK:  encoding: [0x62,0xe3,0xe5,0x50,0x50,0x09,0x7b]
1196           vrangepd $0x7b,(%rcx){1to8}, %zmm19, %zmm17
1197
1198 // CHECK: vrangepd $123, 8128(%rdx), %zmm19, %zmm17
1199 // CHECK:  encoding: [0x62,0xe3,0xe5,0x40,0x50,0x4a,0x7f,0x7b]
1200           vrangepd $0x7b,8128(%rdx), %zmm19, %zmm17
1201
1202 // CHECK: vrangepd $123, 8192(%rdx), %zmm19, %zmm17
1203 // CHECK:  encoding: [0x62,0xe3,0xe5,0x40,0x50,0x8a,0x00,0x20,0x00,0x00,0x7b]
1204           vrangepd $0x7b,8192(%rdx), %zmm19, %zmm17
1205
1206 // CHECK: vrangepd $123, -8192(%rdx), %zmm19, %zmm17
1207 // CHECK:  encoding: [0x62,0xe3,0xe5,0x40,0x50,0x4a,0x80,0x7b]
1208           vrangepd $0x7b,-8192(%rdx), %zmm19, %zmm17
1209
1210 // CHECK: vrangepd $123, -8256(%rdx), %zmm19, %zmm17
1211 // CHECK:  encoding: [0x62,0xe3,0xe5,0x40,0x50,0x8a,0xc0,0xdf,0xff,0xff,0x7b]
1212           vrangepd $0x7b,-8256(%rdx), %zmm19, %zmm17
1213
1214 // CHECK: vrangepd $123, 1016(%rdx){1to8}, %zmm19, %zmm17
1215 // CHECK:  encoding: [0x62,0xe3,0xe5,0x50,0x50,0x4a,0x7f,0x7b]
1216           vrangepd $0x7b,1016(%rdx){1to8}, %zmm19, %zmm17
1217
1218 // CHECK: vrangepd $123, 1024(%rdx){1to8}, %zmm19, %zmm17
1219 // CHECK:  encoding: [0x62,0xe3,0xe5,0x50,0x50,0x8a,0x00,0x04,0x00,0x00,0x7b]
1220           vrangepd $0x7b,1024(%rdx){1to8}, %zmm19, %zmm17
1221
1222 // CHECK: vrangepd $123, -1024(%rdx){1to8}, %zmm19, %zmm17
1223 // CHECK:  encoding: [0x62,0xe3,0xe5,0x50,0x50,0x4a,0x80,0x7b]
1224           vrangepd $0x7b,-1024(%rdx){1to8}, %zmm19, %zmm17
1225
1226 // CHECK: vrangepd $123, -1032(%rdx){1to8}, %zmm19, %zmm17
1227 // CHECK:  encoding: [0x62,0xe3,0xe5,0x50,0x50,0x8a,0xf8,0xfb,0xff,0xff,0x7b]
1228           vrangepd $0x7b,-1032(%rdx){1to8}, %zmm19, %zmm17
1229
1230 // CHECK: vrangeps $171, %zmm17, %zmm21, %zmm24
1231 // CHECK:  encoding: [0x62,0x23,0x55,0x40,0x50,0xc1,0xab]
1232           vrangeps $0xab, %zmm17, %zmm21, %zmm24
1233
1234 // CHECK: vrangeps $171, %zmm17, %zmm21, %zmm24 {%k6}
1235 // CHECK:  encoding: [0x62,0x23,0x55,0x46,0x50,0xc1,0xab]
1236           vrangeps $0xab, %zmm17, %zmm21, %zmm24 {%k6}
1237
1238 // CHECK: vrangeps $171, %zmm17, %zmm21, %zmm24 {%k6} {z}
1239 // CHECK:  encoding: [0x62,0x23,0x55,0xc6,0x50,0xc1,0xab]
1240           vrangeps $0xab, %zmm17, %zmm21, %zmm24 {%k6} {z}
1241
1242 // CHECK: vrangeps $171,{sae}, %zmm17, %zmm21, %zmm24
1243 // CHECK:  encoding: [0x62,0x23,0x55,0x10,0x50,0xc1,0xab]
1244           vrangeps $0xab,{sae}, %zmm17, %zmm21, %zmm24
1245
1246 // CHECK: vrangeps $123, %zmm17, %zmm21, %zmm24
1247 // CHECK:  encoding: [0x62,0x23,0x55,0x40,0x50,0xc1,0x7b]
1248           vrangeps $0x7b, %zmm17, %zmm21, %zmm24
1249
1250 // CHECK: vrangeps $123,{sae}, %zmm17, %zmm21, %zmm24
1251 // CHECK:  encoding: [0x62,0x23,0x55,0x10,0x50,0xc1,0x7b]
1252           vrangeps $0x7b,{sae}, %zmm17, %zmm21, %zmm24
1253
1254 // CHECK: vrangeps $123, (%rcx), %zmm21, %zmm24
1255 // CHECK:  encoding: [0x62,0x63,0x55,0x40,0x50,0x01,0x7b]
1256           vrangeps $0x7b,(%rcx), %zmm21, %zmm24
1257
1258 // CHECK: vrangeps $123, 291(%rax,%r14,8), %zmm21, %zmm24
1259 // CHECK:  encoding: [0x62,0x23,0x55,0x40,0x50,0x84,0xf0,0x23,0x01,0x00,0x00,0x7b]
1260           vrangeps $0x7b,291(%rax,%r14,8), %zmm21, %zmm24
1261
1262 // CHECK: vrangeps $123, (%rcx){1to16}, %zmm21, %zmm24
1263 // CHECK:  encoding: [0x62,0x63,0x55,0x50,0x50,0x01,0x7b]
1264           vrangeps $0x7b,(%rcx){1to16}, %zmm21, %zmm24
1265
1266 // CHECK: vrangeps $123, 8128(%rdx), %zmm21, %zmm24
1267 // CHECK:  encoding: [0x62,0x63,0x55,0x40,0x50,0x42,0x7f,0x7b]
1268           vrangeps $0x7b,8128(%rdx), %zmm21, %zmm24
1269
1270 // CHECK: vrangeps $123, 8192(%rdx), %zmm21, %zmm24
1271 // CHECK:  encoding: [0x62,0x63,0x55,0x40,0x50,0x82,0x00,0x20,0x00,0x00,0x7b]
1272           vrangeps $0x7b,8192(%rdx), %zmm21, %zmm24
1273
1274 // CHECK: vrangeps $123, -8192(%rdx), %zmm21, %zmm24
1275 // CHECK:  encoding: [0x62,0x63,0x55,0x40,0x50,0x42,0x80,0x7b]
1276           vrangeps $0x7b,-8192(%rdx), %zmm21, %zmm24
1277
1278 // CHECK: vrangeps $123, -8256(%rdx), %zmm21, %zmm24
1279 // CHECK:  encoding: [0x62,0x63,0x55,0x40,0x50,0x82,0xc0,0xdf,0xff,0xff,0x7b]
1280           vrangeps $0x7b,-8256(%rdx), %zmm21, %zmm24
1281
1282 // CHECK: vrangeps $123, 508(%rdx){1to16}, %zmm21, %zmm24
1283 // CHECK:  encoding: [0x62,0x63,0x55,0x50,0x50,0x42,0x7f,0x7b]
1284           vrangeps $0x7b,508(%rdx){1to16}, %zmm21, %zmm24
1285
1286 // CHECK: vrangeps $123, 512(%rdx){1to16}, %zmm21, %zmm24
1287 // CHECK:  encoding: [0x62,0x63,0x55,0x50,0x50,0x82,0x00,0x02,0x00,0x00,0x7b]
1288           vrangeps $0x7b,512(%rdx){1to16}, %zmm21, %zmm24
1289
1290 // CHECK: vrangeps $123, -512(%rdx){1to16}, %zmm21, %zmm24
1291 // CHECK:  encoding: [0x62,0x63,0x55,0x50,0x50,0x42,0x80,0x7b]
1292           vrangeps $0x7b,-512(%rdx){1to16}, %zmm21, %zmm24
1293
1294 // CHECK: vrangeps $123, -516(%rdx){1to16}, %zmm21, %zmm24
1295 // CHECK:  encoding: [0x62,0x63,0x55,0x50,0x50,0x82,0xfc,0xfd,0xff,0xff,0x7b]
1296           vrangeps $0x7b,-516(%rdx){1to16}, %zmm21, %zmm24
1297
1298 // CHECK: vrangesd $171, %xmm21, %xmm17, %xmm17
1299 // CHECK:  encoding: [0x62,0xa3,0xf5,0x00,0x51,0xcd,0xab]
1300           vrangesd $0xab, %xmm21, %xmm17, %xmm17
1301
1302 // CHECK: vrangesd $171, %xmm21, %xmm17, %xmm17 {%k5}
1303 // CHECK:  encoding: [0x62,0xa3,0xf5,0x05,0x51,0xcd,0xab]
1304           vrangesd $0xab, %xmm21, %xmm17, %xmm17 {%k5}
1305
1306 // CHECK: vrangesd $171, %xmm21, %xmm17, %xmm17 {%k5} {z}
1307 // CHECK:  encoding: [0x62,0xa3,0xf5,0x85,0x51,0xcd,0xab]
1308           vrangesd $0xab, %xmm21, %xmm17, %xmm17 {%k5} {z}
1309
1310 // CHECK: vrangesd $171,{sae}, %xmm21, %xmm17, %xmm17
1311 // CHECK:  encoding: [0x62,0xa3,0xf5,0x10,0x51,0xcd,0xab]
1312           vrangesd $0xab,{sae}, %xmm21, %xmm17, %xmm17
1313
1314 // CHECK: vrangesd $123, %xmm21, %xmm17, %xmm17
1315 // CHECK:  encoding: [0x62,0xa3,0xf5,0x00,0x51,0xcd,0x7b]
1316           vrangesd $0x7b, %xmm21, %xmm17, %xmm17
1317
1318 // CHECK: vrangesd $123,{sae}, %xmm21, %xmm17, %xmm17
1319 // CHECK:  encoding: [0x62,0xa3,0xf5,0x10,0x51,0xcd,0x7b]
1320           vrangesd $0x7b,{sae}, %xmm21, %xmm17, %xmm17
1321
1322 // CHECK: vrangesd $123, (%rcx), %xmm17, %xmm17
1323 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x51,0x09,0x7b]
1324           vrangesd $0x7b,(%rcx), %xmm17, %xmm17
1325
1326 // CHECK: vrangesd $123, 291(%rax,%r14,8), %xmm17, %xmm17
1327 // CHECK:  encoding: [0x62,0xa3,0xf5,0x00,0x51,0x8c,0xf0,0x23,0x01,0x00,0x00,0x7b]
1328           vrangesd $0x7b,291(%rax,%r14,8), %xmm17, %xmm17
1329
1330 // CHECK: vrangesd $123, 1016(%rdx), %xmm17, %xmm17
1331 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x51,0x4a,0x7f,0x7b]
1332           vrangesd $0x7b,1016(%rdx), %xmm17, %xmm17
1333
1334 // CHECK: vrangesd $123, 1024(%rdx), %xmm17, %xmm17
1335 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x51,0x8a,0x00,0x04,0x00,0x00,0x7b]
1336           vrangesd $0x7b,1024(%rdx), %xmm17, %xmm17
1337
1338 // CHECK: vrangesd $123, -1024(%rdx), %xmm17, %xmm17
1339 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x51,0x4a,0x80,0x7b]
1340           vrangesd $0x7b,-1024(%rdx), %xmm17, %xmm17
1341
1342 // CHECK: vrangesd $123, -1032(%rdx), %xmm17, %xmm17
1343 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x51,0x8a,0xf8,0xfb,0xff,0xff,0x7b]
1344           vrangesd $0x7b,-1032(%rdx), %xmm17, %xmm17
1345
1346 // CHECK: vrangess $171, %xmm20, %xmm24, %xmm25
1347 // CHECK:  encoding: [0x62,0x23,0x3d,0x00,0x51,0xcc,0xab]
1348           vrangess $0xab, %xmm20, %xmm24, %xmm25
1349
1350 // CHECK: vrangess $171, %xmm20, %xmm24, %xmm25 {%k5}
1351 // CHECK:  encoding: [0x62,0x23,0x3d,0x05,0x51,0xcc,0xab]
1352           vrangess $0xab, %xmm20, %xmm24, %xmm25 {%k5}
1353
1354 // CHECK: vrangess $171, %xmm20, %xmm24, %xmm25 {%k5} {z}
1355 // CHECK:  encoding: [0x62,0x23,0x3d,0x85,0x51,0xcc,0xab]
1356           vrangess $0xab, %xmm20, %xmm24, %xmm25 {%k5} {z}
1357
1358 // CHECK: vrangess $171,{sae}, %xmm20, %xmm24, %xmm25
1359 // CHECK:  encoding: [0x62,0x23,0x3d,0x10,0x51,0xcc,0xab]
1360           vrangess $0xab,{sae}, %xmm20, %xmm24, %xmm25
1361
1362 // CHECK: vrangess $123, %xmm20, %xmm24, %xmm25
1363 // CHECK:  encoding: [0x62,0x23,0x3d,0x00,0x51,0xcc,0x7b]
1364           vrangess $0x7b, %xmm20, %xmm24, %xmm25
1365
1366 // CHECK: vrangess $123,{sae}, %xmm20, %xmm24, %xmm25
1367 // CHECK:  encoding: [0x62,0x23,0x3d,0x10,0x51,0xcc,0x7b]
1368           vrangess $0x7b,{sae}, %xmm20, %xmm24, %xmm25
1369
1370 // CHECK: vrangess $123, (%rcx), %xmm24, %xmm25
1371 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x51,0x09,0x7b]
1372           vrangess $0x7b,(%rcx), %xmm24, %xmm25
1373
1374 // CHECK: vrangess $123, 291(%rax,%r14,8), %xmm24, %xmm25
1375 // CHECK:  encoding: [0x62,0x23,0x3d,0x00,0x51,0x8c,0xf0,0x23,0x01,0x00,0x00,0x7b]
1376           vrangess $0x7b,291(%rax,%r14,8), %xmm24, %xmm25
1377
1378 // CHECK: vrangess $123, 508(%rdx), %xmm24, %xmm25
1379 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x51,0x4a,0x7f,0x7b]
1380           vrangess $0x7b,508(%rdx), %xmm24, %xmm25
1381
1382 // CHECK: vrangess $123, 512(%rdx), %xmm24, %xmm25
1383 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x51,0x8a,0x00,0x02,0x00,0x00,0x7b]
1384           vrangess $0x7b,512(%rdx), %xmm24, %xmm25
1385
1386 // CHECK: vrangess $123, -512(%rdx), %xmm24, %xmm25
1387 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x51,0x4a,0x80,0x7b]
1388           vrangess $0x7b,-512(%rdx), %xmm24, %xmm25
1389
1390 // CHECK: vrangess $123, -516(%rdx), %xmm24, %xmm25
1391 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x51,0x8a,0xfc,0xfd,0xff,0xff,0x7b]
1392           vrangess $0x7b,-516(%rdx), %xmm24, %xmm25
1393
1394 // CHECK: vreducepd $171, %zmm19, %zmm19
1395 // CHECK:  encoding: [0x62,0xa3,0xfd,0x48,0x56,0xdb,0xab]
1396           vreducepd $0xab, %zmm19, %zmm19
1397
1398 // CHECK: vreducepd $171, %zmm19, %zmm19 {%k6}
1399 // CHECK:  encoding: [0x62,0xa3,0xfd,0x4e,0x56,0xdb,0xab]
1400           vreducepd $0xab, %zmm19, %zmm19 {%k6}
1401
1402 // CHECK: vreducepd $171, %zmm19, %zmm19 {%k6} {z}
1403 // CHECK:  encoding: [0x62,0xa3,0xfd,0xce,0x56,0xdb,0xab]
1404           vreducepd $0xab, %zmm19, %zmm19 {%k6} {z}
1405
1406 // CHECK: vreducepd $171,{sae}, %zmm19, %zmm19
1407 // CHECK:  encoding: [0x62,0xa3,0xfd,0x18,0x56,0xdb,0xab]
1408           vreducepd $0xab,{sae}, %zmm19, %zmm19
1409
1410 // CHECK: vreducepd $123, %zmm19, %zmm19
1411 // CHECK:  encoding: [0x62,0xa3,0xfd,0x48,0x56,0xdb,0x7b]
1412           vreducepd $0x7b, %zmm19, %zmm19
1413
1414 // CHECK: vreducepd $123,{sae}, %zmm19, %zmm19
1415 // CHECK:  encoding: [0x62,0xa3,0xfd,0x18,0x56,0xdb,0x7b]
1416           vreducepd $0x7b,{sae}, %zmm19, %zmm19
1417
1418 // CHECK: vreducepd $123, (%rcx), %zmm19
1419 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x19,0x7b]
1420           vreducepd $0x7b,(%rcx), %zmm19
1421
1422 // CHECK: vreducepd $123, 291(%rax,%r14,8), %zmm19
1423 // CHECK:  encoding: [0x62,0xa3,0xfd,0x48,0x56,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
1424           vreducepd $0x7b,291(%rax,%r14,8), %zmm19
1425
1426 // CHECK: vreducepd $123, (%rcx){1to8}, %zmm19
1427 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x19,0x7b]
1428           vreducepd $0x7b,(%rcx){1to8}, %zmm19
1429
1430 // CHECK: vreducepd $123, 8128(%rdx), %zmm19
1431 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x5a,0x7f,0x7b]
1432           vreducepd $0x7b,8128(%rdx), %zmm19
1433
1434 // CHECK: vreducepd $123, 8192(%rdx), %zmm19
1435 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x9a,0x00,0x20,0x00,0x00,0x7b]
1436           vreducepd $0x7b,8192(%rdx), %zmm19
1437
1438 // CHECK: vreducepd $123, -8192(%rdx), %zmm19
1439 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x5a,0x80,0x7b]
1440           vreducepd $0x7b,-8192(%rdx), %zmm19
1441
1442 // CHECK: vreducepd $123, -8256(%rdx), %zmm19
1443 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x9a,0xc0,0xdf,0xff,0xff,0x7b]
1444           vreducepd $0x7b,-8256(%rdx), %zmm19
1445
1446 // CHECK: vreducepd $123, 1016(%rdx){1to8}, %zmm19
1447 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x5a,0x7f,0x7b]
1448           vreducepd $0x7b,1016(%rdx){1to8}, %zmm19
1449
1450 // CHECK: vreducepd $123, 1024(%rdx){1to8}, %zmm19
1451 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x9a,0x00,0x04,0x00,0x00,0x7b]
1452           vreducepd $0x7b,1024(%rdx){1to8}, %zmm19
1453
1454 // CHECK: vreducepd $123, -1024(%rdx){1to8}, %zmm19
1455 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x5a,0x80,0x7b]
1456           vreducepd $0x7b,-1024(%rdx){1to8}, %zmm19
1457
1458 // CHECK: vreducepd $123, -1032(%rdx){1to8}, %zmm19
1459 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x9a,0xf8,0xfb,0xff,0xff,0x7b]
1460           vreducepd $0x7b,-1032(%rdx){1to8}, %zmm19
1461
1462 // CHECK: vreduceps $171, %zmm29, %zmm19
1463 // CHECK:  encoding: [0x62,0x83,0x7d,0x48,0x56,0xdd,0xab]
1464           vreduceps $0xab, %zmm29, %zmm19
1465
1466 // CHECK: vreduceps $171, %zmm29, %zmm19 {%k3}
1467 // CHECK:  encoding: [0x62,0x83,0x7d,0x4b,0x56,0xdd,0xab]
1468           vreduceps $0xab, %zmm29, %zmm19 {%k3}
1469
1470 // CHECK: vreduceps $171, %zmm29, %zmm19 {%k3} {z}
1471 // CHECK:  encoding: [0x62,0x83,0x7d,0xcb,0x56,0xdd,0xab]
1472           vreduceps $0xab, %zmm29, %zmm19 {%k3} {z}
1473
1474 // CHECK: vreduceps $171,{sae}, %zmm29, %zmm19
1475 // CHECK:  encoding: [0x62,0x83,0x7d,0x18,0x56,0xdd,0xab]
1476           vreduceps $0xab,{sae}, %zmm29, %zmm19
1477
1478 // CHECK: vreduceps $123, %zmm29, %zmm19
1479 // CHECK:  encoding: [0x62,0x83,0x7d,0x48,0x56,0xdd,0x7b]
1480           vreduceps $0x7b, %zmm29, %zmm19
1481
1482 // CHECK: vreduceps $123,{sae}, %zmm29, %zmm19
1483 // CHECK:  encoding: [0x62,0x83,0x7d,0x18,0x56,0xdd,0x7b]
1484           vreduceps $0x7b,{sae}, %zmm29, %zmm19
1485
1486 // CHECK: vreduceps $123, (%rcx), %zmm19
1487 // CHECK:  encoding: [0x62,0xe3,0x7d,0x48,0x56,0x19,0x7b]
1488           vreduceps $0x7b,(%rcx), %zmm19
1489
1490 // CHECK: vreduceps $123, 291(%rax,%r14,8), %zmm19
1491 // CHECK:  encoding: [0x62,0xa3,0x7d,0x48,0x56,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
1492           vreduceps $0x7b,291(%rax,%r14,8), %zmm19
1493
1494 // CHECK: vreduceps $123, (%rcx){1to16}, %zmm19
1495 // CHECK:  encoding: [0x62,0xe3,0x7d,0x58,0x56,0x19,0x7b]
1496           vreduceps $0x7b,(%rcx){1to16}, %zmm19
1497
1498 // CHECK: vreduceps $123, 8128(%rdx), %zmm19
1499 // CHECK:  encoding: [0x62,0xe3,0x7d,0x48,0x56,0x5a,0x7f,0x7b]
1500           vreduceps $0x7b,8128(%rdx), %zmm19
1501
1502 // CHECK: vreduceps $123, 8192(%rdx), %zmm19
1503 // CHECK:  encoding: [0x62,0xe3,0x7d,0x48,0x56,0x9a,0x00,0x20,0x00,0x00,0x7b]
1504           vreduceps $0x7b,8192(%rdx), %zmm19
1505
1506 // CHECK: vreduceps $123, -8192(%rdx), %zmm19
1507 // CHECK:  encoding: [0x62,0xe3,0x7d,0x48,0x56,0x5a,0x80,0x7b]
1508           vreduceps $0x7b,-8192(%rdx), %zmm19
1509
1510 // CHECK: vreduceps $123, -8256(%rdx), %zmm19
1511 // CHECK:  encoding: [0x62,0xe3,0x7d,0x48,0x56,0x9a,0xc0,0xdf,0xff,0xff,0x7b]
1512           vreduceps $0x7b,-8256(%rdx), %zmm19
1513
1514 // CHECK: vreduceps $123, 508(%rdx){1to16}, %zmm19
1515 // CHECK:  encoding: [0x62,0xe3,0x7d,0x58,0x56,0x5a,0x7f,0x7b]
1516           vreduceps $0x7b,508(%rdx){1to16}, %zmm19
1517
1518 // CHECK: vreduceps $123, 512(%rdx){1to16}, %zmm19
1519 // CHECK:  encoding: [0x62,0xe3,0x7d,0x58,0x56,0x9a,0x00,0x02,0x00,0x00,0x7b]
1520           vreduceps $0x7b,512(%rdx){1to16}, %zmm19
1521
1522 // CHECK: vreduceps $123, -512(%rdx){1to16}, %zmm19
1523 // CHECK:  encoding: [0x62,0xe3,0x7d,0x58,0x56,0x5a,0x80,0x7b]
1524           vreduceps $0x7b,-512(%rdx){1to16}, %zmm19
1525
1526 // CHECK: vreduceps $123, -516(%rdx){1to16}, %zmm19
1527 // CHECK:  encoding: [0x62,0xe3,0x7d,0x58,0x56,0x9a,0xfc,0xfd,0xff,0xff,0x7b]
1528           vreduceps $0x7b,-516(%rdx){1to16}, %zmm19
1529
1530 // CHECK: vreducesd $171, %xmm25, %xmm17, %xmm17
1531 // CHECK:  encoding: [0x62,0x83,0xf5,0x00,0x57,0xc9,0xab]
1532           vreducesd $0xab, %xmm25, %xmm17, %xmm17
1533
1534 // CHECK: vreducesd $171, %xmm25, %xmm17, %xmm17 {%k6}
1535 // CHECK:  encoding: [0x62,0x83,0xf5,0x06,0x57,0xc9,0xab]
1536           vreducesd $0xab, %xmm25, %xmm17, %xmm17 {%k6}
1537
1538 // CHECK: vreducesd $171, %xmm25, %xmm17, %xmm17 {%k6} {z}
1539 // CHECK:  encoding: [0x62,0x83,0xf5,0x86,0x57,0xc9,0xab]
1540           vreducesd $0xab, %xmm25, %xmm17, %xmm17 {%k6} {z}
1541
1542 // CHECK: vreducesd $171,{sae}, %xmm25, %xmm17, %xmm17
1543 // CHECK:  encoding: [0x62,0x83,0xf5,0x10,0x57,0xc9,0xab]
1544           vreducesd $0xab,{sae}, %xmm25, %xmm17, %xmm17
1545
1546 // CHECK: vreducesd $123, %xmm25, %xmm17, %xmm17
1547 // CHECK:  encoding: [0x62,0x83,0xf5,0x00,0x57,0xc9,0x7b]
1548           vreducesd $0x7b, %xmm25, %xmm17, %xmm17
1549
1550 // CHECK: vreducesd $123,{sae}, %xmm25, %xmm17, %xmm17
1551 // CHECK:  encoding: [0x62,0x83,0xf5,0x10,0x57,0xc9,0x7b]
1552           vreducesd $0x7b,{sae}, %xmm25, %xmm17, %xmm17
1553
1554 // CHECK: vreducesd $123, (%rcx), %xmm17, %xmm17
1555 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x57,0x09,0x7b]
1556           vreducesd $0x7b,(%rcx), %xmm17, %xmm17
1557
1558 // CHECK: vreducesd $123, 291(%rax,%r14,8), %xmm17, %xmm17
1559 // CHECK:  encoding: [0x62,0xa3,0xf5,0x00,0x57,0x8c,0xf0,0x23,0x01,0x00,0x00,0x7b]
1560           vreducesd $0x7b,291(%rax,%r14,8), %xmm17, %xmm17
1561
1562 // CHECK: vreducesd $123, 1016(%rdx), %xmm17, %xmm17
1563 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x57,0x4a,0x7f,0x7b]
1564           vreducesd $0x7b,1016(%rdx), %xmm17, %xmm17
1565
1566 // CHECK: vreducesd $123, 1024(%rdx), %xmm17, %xmm17
1567 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x57,0x8a,0x00,0x04,0x00,0x00,0x7b]
1568           vreducesd $0x7b,1024(%rdx), %xmm17, %xmm17
1569
1570 // CHECK: vreducesd $123, -1024(%rdx), %xmm17, %xmm17
1571 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x57,0x4a,0x80,0x7b]
1572           vreducesd $0x7b,-1024(%rdx), %xmm17, %xmm17
1573
1574 // CHECK: vreducesd $123, -1032(%rdx), %xmm17, %xmm17
1575 // CHECK:  encoding: [0x62,0xe3,0xf5,0x00,0x57,0x8a,0xf8,0xfb,0xff,0xff,0x7b]
1576           vreducesd $0x7b,-1032(%rdx), %xmm17, %xmm17
1577
1578 // CHECK: vreducess $171, %xmm21, %xmm29, %xmm30
1579 // CHECK:  encoding: [0x62,0x23,0x15,0x00,0x57,0xf5,0xab]
1580           vreducess $0xab, %xmm21, %xmm29, %xmm30
1581
1582 // CHECK: vreducess $171, %xmm21, %xmm29, %xmm30 {%k1}
1583 // CHECK:  encoding: [0x62,0x23,0x15,0x01,0x57,0xf5,0xab]
1584           vreducess $0xab, %xmm21, %xmm29, %xmm30 {%k1}
1585
1586 // CHECK: vreducess $171, %xmm21, %xmm29, %xmm30 {%k1} {z}
1587 // CHECK:  encoding: [0x62,0x23,0x15,0x81,0x57,0xf5,0xab]
1588           vreducess $0xab, %xmm21, %xmm29, %xmm30 {%k1} {z}
1589
1590 // CHECK: vreducess $171,{sae}, %xmm21, %xmm29, %xmm30
1591 // CHECK:  encoding: [0x62,0x23,0x15,0x10,0x57,0xf5,0xab]
1592           vreducess $0xab,{sae}, %xmm21, %xmm29, %xmm30
1593
1594 // CHECK: vreducess $123, %xmm21, %xmm29, %xmm30
1595 // CHECK:  encoding: [0x62,0x23,0x15,0x00,0x57,0xf5,0x7b]
1596           vreducess $0x7b, %xmm21, %xmm29, %xmm30
1597
1598 // CHECK: vreducess $123,{sae}, %xmm21, %xmm29, %xmm30
1599 // CHECK:  encoding: [0x62,0x23,0x15,0x10,0x57,0xf5,0x7b]
1600           vreducess $0x7b,{sae}, %xmm21, %xmm29, %xmm30
1601
1602 // CHECK: vreducess $123, (%rcx), %xmm29, %xmm30
1603 // CHECK:  encoding: [0x62,0x63,0x15,0x00,0x57,0x31,0x7b]
1604           vreducess $0x7b,(%rcx), %xmm29, %xmm30
1605
1606 // CHECK: vreducess $123, 291(%rax,%r14,8), %xmm29, %xmm30
1607 // CHECK:  encoding: [0x62,0x23,0x15,0x00,0x57,0xb4,0xf0,0x23,0x01,0x00,0x00,0x7b]
1608           vreducess $0x7b,291(%rax,%r14,8), %xmm29, %xmm30
1609
1610 // CHECK: vreducess $123, 508(%rdx), %xmm29, %xmm30
1611 // CHECK:  encoding: [0x62,0x63,0x15,0x00,0x57,0x72,0x7f,0x7b]
1612           vreducess $0x7b,508(%rdx), %xmm29, %xmm30
1613
1614 // CHECK: vreducess $123, 512(%rdx), %xmm29, %xmm30
1615 // CHECK:  encoding: [0x62,0x63,0x15,0x00,0x57,0xb2,0x00,0x02,0x00,0x00,0x7b]
1616           vreducess $0x7b,512(%rdx), %xmm29, %xmm30
1617
1618 // CHECK: vreducess $123, -512(%rdx), %xmm29, %xmm30
1619 // CHECK:  encoding: [0x62,0x63,0x15,0x00,0x57,0x72,0x80,0x7b]
1620           vreducess $0x7b,-512(%rdx), %xmm29, %xmm30
1621
1622 // CHECK: vreducess $123, -516(%rdx), %xmm29, %xmm30
1623 // CHECK:  encoding: [0x62,0x63,0x15,0x00,0x57,0xb2,0xfc,0xfd,0xff,0xff,0x7b]
1624           vreducess $0x7b,-516(%rdx), %xmm29, %xmm30
1625
1626 // CHECK: vreducepd $171, %zmm28, %zmm18
1627 // CHECK:  encoding: [0x62,0x83,0xfd,0x48,0x56,0xd4,0xab]
1628           vreducepd $0xab, %zmm28, %zmm18
1629
1630 // CHECK: vreducepd $171, %zmm28, %zmm18 {%k5}
1631 // CHECK:  encoding: [0x62,0x83,0xfd,0x4d,0x56,0xd4,0xab]
1632           vreducepd $0xab, %zmm28, %zmm18 {%k5}
1633
1634 // CHECK: vreducepd $171, %zmm28, %zmm18 {%k5} {z}
1635 // CHECK:  encoding: [0x62,0x83,0xfd,0xcd,0x56,0xd4,0xab]
1636           vreducepd $0xab, %zmm28, %zmm18 {%k5} {z}
1637
1638 // CHECK: vreducepd $171,{sae}, %zmm28, %zmm18
1639 // CHECK:  encoding: [0x62,0x83,0xfd,0x18,0x56,0xd4,0xab]
1640           vreducepd $0xab,{sae}, %zmm28, %zmm18
1641
1642 // CHECK: vreducepd $123, %zmm28, %zmm18
1643 // CHECK:  encoding: [0x62,0x83,0xfd,0x48,0x56,0xd4,0x7b]
1644           vreducepd $0x7b, %zmm28, %zmm18
1645
1646 // CHECK: vreducepd $123,{sae}, %zmm28, %zmm18
1647 // CHECK:  encoding: [0x62,0x83,0xfd,0x18,0x56,0xd4,0x7b]
1648           vreducepd $0x7b,{sae}, %zmm28, %zmm18
1649
1650 // CHECK: vreducepd $123, (%rcx), %zmm18
1651 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x11,0x7b]
1652           vreducepd $0x7b,(%rcx), %zmm18
1653
1654 // CHECK: vreducepd $123, 4660(%rax,%r14,8), %zmm18
1655 // CHECK:  encoding: [0x62,0xa3,0xfd,0x48,0x56,0x94,0xf0,0x34,0x12,0x00,0x00,0x7b]
1656           vreducepd $0x7b,4660(%rax,%r14,8), %zmm18
1657
1658 // CHECK: vreducepd $123, (%rcx){1to8}, %zmm18
1659 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x11,0x7b]
1660           vreducepd $0x7b,(%rcx){1to8}, %zmm18
1661
1662 // CHECK: vreducepd $123, 8128(%rdx), %zmm18
1663 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x52,0x7f,0x7b]
1664           vreducepd $0x7b,8128(%rdx), %zmm18
1665
1666 // CHECK: vreducepd $123, 8192(%rdx), %zmm18
1667 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x92,0x00,0x20,0x00,0x00,0x7b]
1668           vreducepd $0x7b,8192(%rdx), %zmm18
1669
1670 // CHECK: vreducepd $123, -8192(%rdx), %zmm18
1671 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x52,0x80,0x7b]
1672           vreducepd $0x7b,-8192(%rdx), %zmm18
1673
1674 // CHECK: vreducepd $123, -8256(%rdx), %zmm18
1675 // CHECK:  encoding: [0x62,0xe3,0xfd,0x48,0x56,0x92,0xc0,0xdf,0xff,0xff,0x7b]
1676           vreducepd $0x7b,-8256(%rdx), %zmm18
1677
1678 // CHECK: vreducepd $123, 1016(%rdx){1to8}, %zmm18
1679 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x52,0x7f,0x7b]
1680           vreducepd $0x7b,1016(%rdx){1to8}, %zmm18
1681
1682 // CHECK: vreducepd $123, 1024(%rdx){1to8}, %zmm18
1683 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x92,0x00,0x04,0x00,0x00,0x7b]
1684           vreducepd $0x7b,1024(%rdx){1to8}, %zmm18
1685
1686 // CHECK: vreducepd $123, -1024(%rdx){1to8}, %zmm18
1687 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x52,0x80,0x7b]
1688           vreducepd $0x7b,-1024(%rdx){1to8}, %zmm18
1689
1690 // CHECK: vreducepd $123, -1032(%rdx){1to8}, %zmm18
1691 // CHECK:  encoding: [0x62,0xe3,0xfd,0x58,0x56,0x92,0xf8,0xfb,0xff,0xff,0x7b]
1692           vreducepd $0x7b,-1032(%rdx){1to8}, %zmm18
1693
1694 // CHECK: vreduceps $171, %zmm25, %zmm26
1695 // CHECK:  encoding: [0x62,0x03,0x7d,0x48,0x56,0xd1,0xab]
1696           vreduceps $0xab, %zmm25, %zmm26
1697
1698 // CHECK: vreduceps $171, %zmm25, %zmm26 {%k3}
1699 // CHECK:  encoding: [0x62,0x03,0x7d,0x4b,0x56,0xd1,0xab]
1700           vreduceps $0xab, %zmm25, %zmm26 {%k3}
1701
1702 // CHECK: vreduceps $171, %zmm25, %zmm26 {%k3} {z}
1703 // CHECK:  encoding: [0x62,0x03,0x7d,0xcb,0x56,0xd1,0xab]
1704           vreduceps $0xab, %zmm25, %zmm26 {%k3} {z}
1705
1706 // CHECK: vreduceps $171,{sae}, %zmm25, %zmm26
1707 // CHECK:  encoding: [0x62,0x03,0x7d,0x18,0x56,0xd1,0xab]
1708           vreduceps $0xab,{sae}, %zmm25, %zmm26
1709
1710 // CHECK: vreduceps $123, %zmm25, %zmm26
1711 // CHECK:  encoding: [0x62,0x03,0x7d,0x48,0x56,0xd1,0x7b]
1712           vreduceps $0x7b, %zmm25, %zmm26
1713
1714 // CHECK: vreduceps $123,{sae}, %zmm25, %zmm26
1715 // CHECK:  encoding: [0x62,0x03,0x7d,0x18,0x56,0xd1,0x7b]
1716           vreduceps $0x7b,{sae}, %zmm25, %zmm26
1717
1718 // CHECK: vreduceps $123, (%rcx), %zmm26
1719 // CHECK:  encoding: [0x62,0x63,0x7d,0x48,0x56,0x11,0x7b]
1720           vreduceps $0x7b,(%rcx), %zmm26
1721
1722 // CHECK: vreduceps $123, 4660(%rax,%r14,8), %zmm26
1723 // CHECK:  encoding: [0x62,0x23,0x7d,0x48,0x56,0x94,0xf0,0x34,0x12,0x00,0x00,0x7b]
1724           vreduceps $0x7b,4660(%rax,%r14,8), %zmm26
1725
1726 // CHECK: vreduceps $123, (%rcx){1to16}, %zmm26
1727 // CHECK:  encoding: [0x62,0x63,0x7d,0x58,0x56,0x11,0x7b]
1728           vreduceps $0x7b,(%rcx){1to16}, %zmm26
1729
1730 // CHECK: vreduceps $123, 8128(%rdx), %zmm26
1731 // CHECK:  encoding: [0x62,0x63,0x7d,0x48,0x56,0x52,0x7f,0x7b]
1732           vreduceps $0x7b,8128(%rdx), %zmm26
1733
1734 // CHECK: vreduceps $123, 8192(%rdx), %zmm26
1735 // CHECK:  encoding: [0x62,0x63,0x7d,0x48,0x56,0x92,0x00,0x20,0x00,0x00,0x7b]
1736           vreduceps $0x7b,8192(%rdx), %zmm26
1737
1738 // CHECK: vreduceps $123, -8192(%rdx), %zmm26
1739 // CHECK:  encoding: [0x62,0x63,0x7d,0x48,0x56,0x52,0x80,0x7b]
1740           vreduceps $0x7b,-8192(%rdx), %zmm26
1741
1742 // CHECK: vreduceps $123, -8256(%rdx), %zmm26
1743 // CHECK:  encoding: [0x62,0x63,0x7d,0x48,0x56,0x92,0xc0,0xdf,0xff,0xff,0x7b]
1744           vreduceps $0x7b,-8256(%rdx), %zmm26
1745
1746 // CHECK: vreduceps $123, 508(%rdx){1to16}, %zmm26
1747 // CHECK:  encoding: [0x62,0x63,0x7d,0x58,0x56,0x52,0x7f,0x7b]
1748           vreduceps $0x7b,508(%rdx){1to16}, %zmm26
1749
1750 // CHECK: vreduceps $123, 512(%rdx){1to16}, %zmm26
1751 // CHECK:  encoding: [0x62,0x63,0x7d,0x58,0x56,0x92,0x00,0x02,0x00,0x00,0x7b]
1752           vreduceps $0x7b,512(%rdx){1to16}, %zmm26
1753
1754 // CHECK: vreduceps $123, -512(%rdx){1to16}, %zmm26
1755 // CHECK:  encoding: [0x62,0x63,0x7d,0x58,0x56,0x52,0x80,0x7b]
1756           vreduceps $0x7b,-512(%rdx){1to16}, %zmm26
1757
1758 // CHECK: vreduceps $123, -516(%rdx){1to16}, %zmm26
1759 // CHECK:  encoding: [0x62,0x63,0x7d,0x58,0x56,0x92,0xfc,0xfd,0xff,0xff,0x7b]
1760           vreduceps $0x7b,-516(%rdx){1to16}, %zmm26
1761
1762 // CHECK: vreducesd $171, %xmm24, %xmm19, %xmm25
1763 // CHECK:  encoding: [0x62,0x03,0xe5,0x00,0x57,0xc8,0xab]
1764           vreducesd $0xab, %xmm24, %xmm19, %xmm25
1765
1766 // CHECK: vreducesd $171, %xmm24, %xmm19, %xmm25 {%k3}
1767 // CHECK:  encoding: [0x62,0x03,0xe5,0x03,0x57,0xc8,0xab]
1768           vreducesd $0xab, %xmm24, %xmm19, %xmm25 {%k3}
1769
1770 // CHECK: vreducesd $171, %xmm24, %xmm19, %xmm25 {%k3} {z}
1771 // CHECK:  encoding: [0x62,0x03,0xe5,0x83,0x57,0xc8,0xab]
1772           vreducesd $0xab, %xmm24, %xmm19, %xmm25 {%k3} {z}
1773
1774 // CHECK: vreducesd $171,{sae}, %xmm24, %xmm19, %xmm25
1775 // CHECK:  encoding: [0x62,0x03,0xe5,0x10,0x57,0xc8,0xab]
1776           vreducesd $0xab,{sae}, %xmm24, %xmm19, %xmm25
1777
1778 // CHECK: vreducesd $123, %xmm24, %xmm19, %xmm25
1779 // CHECK:  encoding: [0x62,0x03,0xe5,0x00,0x57,0xc8,0x7b]
1780           vreducesd $0x7b, %xmm24, %xmm19, %xmm25
1781
1782 // CHECK: vreducesd $123,{sae}, %xmm24, %xmm19, %xmm25
1783 // CHECK:  encoding: [0x62,0x03,0xe5,0x10,0x57,0xc8,0x7b]
1784           vreducesd $0x7b,{sae}, %xmm24, %xmm19, %xmm25
1785
1786 // CHECK: vreducesd $123, (%rcx), %xmm19, %xmm25
1787 // CHECK:  encoding: [0x62,0x63,0xe5,0x00,0x57,0x09,0x7b]
1788           vreducesd $0x7b,(%rcx), %xmm19, %xmm25
1789
1790 // CHECK: vreducesd $123, 4660(%rax,%r14,8), %xmm19, %xmm25
1791 // CHECK:  encoding: [0x62,0x23,0xe5,0x00,0x57,0x8c,0xf0,0x34,0x12,0x00,0x00,0x7b]
1792           vreducesd $0x7b,4660(%rax,%r14,8), %xmm19, %xmm25
1793
1794 // CHECK: vreducesd $123, 1016(%rdx), %xmm19, %xmm25
1795 // CHECK:  encoding: [0x62,0x63,0xe5,0x00,0x57,0x4a,0x7f,0x7b]
1796           vreducesd $0x7b,1016(%rdx), %xmm19, %xmm25
1797
1798 // CHECK: vreducesd $123, 1024(%rdx), %xmm19, %xmm25
1799 // CHECK:  encoding: [0x62,0x63,0xe5,0x00,0x57,0x8a,0x00,0x04,0x00,0x00,0x7b]
1800           vreducesd $0x7b,1024(%rdx), %xmm19, %xmm25
1801
1802 // CHECK: vreducesd $123, -1024(%rdx), %xmm19, %xmm25
1803 // CHECK:  encoding: [0x62,0x63,0xe5,0x00,0x57,0x4a,0x80,0x7b]
1804           vreducesd $0x7b,-1024(%rdx), %xmm19, %xmm25
1805
1806 // CHECK: vreducesd $123, -1032(%rdx), %xmm19, %xmm25
1807 // CHECK:  encoding: [0x62,0x63,0xe5,0x00,0x57,0x8a,0xf8,0xfb,0xff,0xff,0x7b]
1808           vreducesd $0x7b,-1032(%rdx), %xmm19, %xmm25
1809
1810 // CHECK: vreducess $171, %xmm21, %xmm24, %xmm30
1811 // CHECK:  encoding: [0x62,0x23,0x3d,0x00,0x57,0xf5,0xab]
1812           vreducess $0xab, %xmm21, %xmm24, %xmm30
1813
1814 // CHECK: vreducess $171, %xmm21, %xmm24, %xmm30 {%k2}
1815 // CHECK:  encoding: [0x62,0x23,0x3d,0x02,0x57,0xf5,0xab]
1816           vreducess $0xab, %xmm21, %xmm24, %xmm30 {%k2}
1817
1818 // CHECK: vreducess $171, %xmm21, %xmm24, %xmm30 {%k2} {z}
1819 // CHECK:  encoding: [0x62,0x23,0x3d,0x82,0x57,0xf5,0xab]
1820           vreducess $0xab, %xmm21, %xmm24, %xmm30 {%k2} {z}
1821
1822 // CHECK: vreducess $171,{sae}, %xmm21, %xmm24, %xmm30
1823 // CHECK:  encoding: [0x62,0x23,0x3d,0x10,0x57,0xf5,0xab]
1824           vreducess $0xab,{sae}, %xmm21, %xmm24, %xmm30
1825
1826 // CHECK: vreducess $123, %xmm21, %xmm24, %xmm30
1827 // CHECK:  encoding: [0x62,0x23,0x3d,0x00,0x57,0xf5,0x7b]
1828           vreducess $0x7b, %xmm21, %xmm24, %xmm30
1829
1830 // CHECK: vreducess $123,{sae}, %xmm21, %xmm24, %xmm30
1831 // CHECK:  encoding: [0x62,0x23,0x3d,0x10,0x57,0xf5,0x7b]
1832           vreducess $0x7b,{sae}, %xmm21, %xmm24, %xmm30
1833
1834 // CHECK: vreducess $123, (%rcx), %xmm24, %xmm30
1835 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x57,0x31,0x7b]
1836           vreducess $0x7b,(%rcx), %xmm24, %xmm30
1837
1838 // CHECK: vreducess $123, 4660(%rax,%r14,8), %xmm24, %xmm30
1839 // CHECK:  encoding: [0x62,0x23,0x3d,0x00,0x57,0xb4,0xf0,0x34,0x12,0x00,0x00,0x7b]
1840           vreducess $0x7b,4660(%rax,%r14,8), %xmm24, %xmm30
1841
1842 // CHECK: vreducess $123, 508(%rdx), %xmm24, %xmm30
1843 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x57,0x72,0x7f,0x7b]
1844           vreducess $0x7b,508(%rdx), %xmm24, %xmm30
1845
1846 // CHECK: vreducess $123, 512(%rdx), %xmm24, %xmm30
1847 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x57,0xb2,0x00,0x02,0x00,0x00,0x7b]
1848           vreducess $0x7b,512(%rdx), %xmm24, %xmm30
1849
1850 // CHECK: vreducess $123, -512(%rdx), %xmm24, %xmm30
1851 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x57,0x72,0x80,0x7b]
1852           vreducess $0x7b,-512(%rdx), %xmm24, %xmm30
1853
1854 // CHECK: vreducess $123, -516(%rdx), %xmm24, %xmm30
1855 // CHECK:  encoding: [0x62,0x63,0x3d,0x00,0x57,0xb2,0xfc,0xfd,0xff,0xff,0x7b]
1856           vreducess $0x7b,-516(%rdx), %xmm24, %xmm30
1857
1858 // CHECK: vcvtpd2qq %zmm29, %zmm18
1859 // CHECK:  encoding: [0x62,0x81,0xfd,0x48,0x7b,0xd5]
1860           vcvtpd2qq %zmm29, %zmm18
1861
1862 // CHECK: vcvtpd2qq %zmm29, %zmm18 {%k6}
1863 // CHECK:  encoding: [0x62,0x81,0xfd,0x4e,0x7b,0xd5]
1864           vcvtpd2qq %zmm29, %zmm18 {%k6}
1865
1866 // CHECK: vcvtpd2qq %zmm29, %zmm18 {%k6} {z}
1867 // CHECK:  encoding: [0x62,0x81,0xfd,0xce,0x7b,0xd5]
1868           vcvtpd2qq %zmm29, %zmm18 {%k6} {z}
1869
1870 // CHECK: vcvtpd2qq {rn-sae}, %zmm29, %zmm18
1871 // CHECK:  encoding: [0x62,0x81,0xfd,0x18,0x7b,0xd5]
1872           vcvtpd2qq {rn-sae}, %zmm29, %zmm18
1873
1874 // CHECK: vcvtpd2qq {ru-sae}, %zmm29, %zmm18
1875 // CHECK:  encoding: [0x62,0x81,0xfd,0x58,0x7b,0xd5]
1876           vcvtpd2qq {ru-sae}, %zmm29, %zmm18
1877
1878 // CHECK: vcvtpd2qq {rd-sae}, %zmm29, %zmm18
1879 // CHECK:  encoding: [0x62,0x81,0xfd,0x38,0x7b,0xd5]
1880           vcvtpd2qq {rd-sae}, %zmm29, %zmm18
1881
1882 // CHECK: vcvtpd2qq {rz-sae}, %zmm29, %zmm18
1883 // CHECK:  encoding: [0x62,0x81,0xfd,0x78,0x7b,0xd5]
1884           vcvtpd2qq {rz-sae}, %zmm29, %zmm18
1885
1886 // CHECK: vcvtpd2qq (%rcx), %zmm18
1887 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x7b,0x11]
1888           vcvtpd2qq (%rcx), %zmm18
1889
1890 // CHECK: vcvtpd2qq 291(%rax,%r14,8), %zmm18
1891 // CHECK:  encoding: [0x62,0xa1,0xfd,0x48,0x7b,0x94,0xf0,0x23,0x01,0x00,0x00]
1892           vcvtpd2qq 291(%rax,%r14,8), %zmm18
1893
1894 // CHECK: vcvtpd2qq (%rcx){1to8}, %zmm18
1895 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x7b,0x11]
1896           vcvtpd2qq (%rcx){1to8}, %zmm18
1897
1898 // CHECK: vcvtpd2qq 8128(%rdx), %zmm18
1899 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x7b,0x52,0x7f]
1900           vcvtpd2qq 8128(%rdx), %zmm18
1901
1902 // CHECK: vcvtpd2qq 8192(%rdx), %zmm18
1903 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x7b,0x92,0x00,0x20,0x00,0x00]
1904           vcvtpd2qq 8192(%rdx), %zmm18
1905
1906 // CHECK: vcvtpd2qq -8192(%rdx), %zmm18
1907 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x7b,0x52,0x80]
1908           vcvtpd2qq -8192(%rdx), %zmm18
1909
1910 // CHECK: vcvtpd2qq -8256(%rdx), %zmm18
1911 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x7b,0x92,0xc0,0xdf,0xff,0xff]
1912           vcvtpd2qq -8256(%rdx), %zmm18
1913
1914 // CHECK: vcvtpd2qq 1016(%rdx){1to8}, %zmm18
1915 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x7b,0x52,0x7f]
1916           vcvtpd2qq 1016(%rdx){1to8}, %zmm18
1917
1918 // CHECK: vcvtpd2qq 1024(%rdx){1to8}, %zmm18
1919 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x7b,0x92,0x00,0x04,0x00,0x00]
1920           vcvtpd2qq 1024(%rdx){1to8}, %zmm18
1921
1922 // CHECK: vcvtpd2qq -1024(%rdx){1to8}, %zmm18
1923 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x7b,0x52,0x80]
1924           vcvtpd2qq -1024(%rdx){1to8}, %zmm18
1925
1926 // CHECK: vcvtpd2qq -1032(%rdx){1to8}, %zmm18
1927 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x7b,0x92,0xf8,0xfb,0xff,0xff]
1928           vcvtpd2qq -1032(%rdx){1to8}, %zmm18
1929
1930 // CHECK: vcvtpd2uqq %zmm21, %zmm22
1931 // CHECK:  encoding: [0x62,0xa1,0xfd,0x48,0x79,0xf5]
1932           vcvtpd2uqq %zmm21, %zmm22
1933
1934 // CHECK: vcvtpd2uqq %zmm21, %zmm22 {%k5}
1935 // CHECK:  encoding: [0x62,0xa1,0xfd,0x4d,0x79,0xf5]
1936           vcvtpd2uqq %zmm21, %zmm22 {%k5}
1937
1938 // CHECK: vcvtpd2uqq %zmm21, %zmm22 {%k5} {z}
1939 // CHECK:  encoding: [0x62,0xa1,0xfd,0xcd,0x79,0xf5]
1940           vcvtpd2uqq %zmm21, %zmm22 {%k5} {z}
1941
1942 // CHECK: vcvtpd2uqq {rn-sae}, %zmm21, %zmm22
1943 // CHECK:  encoding: [0x62,0xa1,0xfd,0x18,0x79,0xf5]
1944           vcvtpd2uqq {rn-sae}, %zmm21, %zmm22
1945
1946 // CHECK: vcvtpd2uqq {ru-sae}, %zmm21, %zmm22
1947 // CHECK:  encoding: [0x62,0xa1,0xfd,0x58,0x79,0xf5]
1948           vcvtpd2uqq {ru-sae}, %zmm21, %zmm22
1949
1950 // CHECK: vcvtpd2uqq {rd-sae}, %zmm21, %zmm22
1951 // CHECK:  encoding: [0x62,0xa1,0xfd,0x38,0x79,0xf5]
1952           vcvtpd2uqq {rd-sae}, %zmm21, %zmm22
1953
1954 // CHECK: vcvtpd2uqq {rz-sae}, %zmm21, %zmm22
1955 // CHECK:  encoding: [0x62,0xa1,0xfd,0x78,0x79,0xf5]
1956           vcvtpd2uqq {rz-sae}, %zmm21, %zmm22
1957
1958 // CHECK: vcvtpd2uqq (%rcx), %zmm22
1959 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x79,0x31]
1960           vcvtpd2uqq (%rcx), %zmm22
1961
1962 // CHECK: vcvtpd2uqq 291(%rax,%r14,8), %zmm22
1963 // CHECK:  encoding: [0x62,0xa1,0xfd,0x48,0x79,0xb4,0xf0,0x23,0x01,0x00,0x00]
1964           vcvtpd2uqq 291(%rax,%r14,8), %zmm22
1965
1966 // CHECK: vcvtpd2uqq (%rcx){1to8}, %zmm22
1967 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x79,0x31]
1968           vcvtpd2uqq (%rcx){1to8}, %zmm22
1969
1970 // CHECK: vcvtpd2uqq 8128(%rdx), %zmm22
1971 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x79,0x72,0x7f]
1972           vcvtpd2uqq 8128(%rdx), %zmm22
1973
1974 // CHECK: vcvtpd2uqq 8192(%rdx), %zmm22
1975 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x79,0xb2,0x00,0x20,0x00,0x00]
1976           vcvtpd2uqq 8192(%rdx), %zmm22
1977
1978 // CHECK: vcvtpd2uqq -8192(%rdx), %zmm22
1979 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x79,0x72,0x80]
1980           vcvtpd2uqq -8192(%rdx), %zmm22
1981
1982 // CHECK: vcvtpd2uqq -8256(%rdx), %zmm22
1983 // CHECK:  encoding: [0x62,0xe1,0xfd,0x48,0x79,0xb2,0xc0,0xdf,0xff,0xff]
1984           vcvtpd2uqq -8256(%rdx), %zmm22
1985
1986 // CHECK: vcvtpd2uqq 1016(%rdx){1to8}, %zmm22
1987 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x79,0x72,0x7f]
1988           vcvtpd2uqq 1016(%rdx){1to8}, %zmm22
1989
1990 // CHECK: vcvtpd2uqq 1024(%rdx){1to8}, %zmm22
1991 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x79,0xb2,0x00,0x04,0x00,0x00]
1992           vcvtpd2uqq 1024(%rdx){1to8}, %zmm22
1993
1994 // CHECK: vcvtpd2uqq -1024(%rdx){1to8}, %zmm22
1995 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x79,0x72,0x80]
1996           vcvtpd2uqq -1024(%rdx){1to8}, %zmm22
1997
1998 // CHECK: vcvtpd2uqq -1032(%rdx){1to8}, %zmm22
1999 // CHECK:  encoding: [0x62,0xe1,0xfd,0x58,0x79,0xb2,0xf8,0xfb,0xff,0xff]
2000           vcvtpd2uqq -1032(%rdx){1to8}, %zmm22
2001
2002 // CHECK: vcvtps2qq %ymm18, %zmm20
2003 // CHECK:  encoding: [0x62,0xa1,0x7d,0x48,0x7b,0xe2]
2004           vcvtps2qq %ymm18, %zmm20
2005
2006 // CHECK: vcvtps2qq %ymm18, %zmm20 {%k2}
2007 // CHECK:  encoding: [0x62,0xa1,0x7d,0x4a,0x7b,0xe2]
2008           vcvtps2qq %ymm18, %zmm20 {%k2}
2009
2010 // CHECK: vcvtps2qq %ymm18, %zmm20 {%k2} {z}
2011 // CHECK:  encoding: [0x62,0xa1,0x7d,0xca,0x7b,0xe2]
2012           vcvtps2qq %ymm18, %zmm20 {%k2} {z}
2013
2014 // CHECK: vcvtps2qq {rn-sae}, %ymm18, %zmm20
2015 // CHECK:  encoding: [0x62,0xa1,0x7d,0x18,0x7b,0xe2]
2016           vcvtps2qq {rn-sae}, %ymm18, %zmm20
2017
2018 // CHECK: vcvtps2qq {ru-sae}, %ymm18, %zmm20
2019 // CHECK:  encoding: [0x62,0xa1,0x7d,0x58,0x7b,0xe2]
2020           vcvtps2qq {ru-sae}, %ymm18, %zmm20
2021
2022 // CHECK: vcvtps2qq {rd-sae}, %ymm18, %zmm20
2023 // CHECK:  encoding: [0x62,0xa1,0x7d,0x38,0x7b,0xe2]
2024           vcvtps2qq {rd-sae}, %ymm18, %zmm20
2025
2026 // CHECK: vcvtps2qq {rz-sae}, %ymm18, %zmm20
2027 // CHECK:  encoding: [0x62,0xa1,0x7d,0x78,0x7b,0xe2]
2028           vcvtps2qq {rz-sae}, %ymm18, %zmm20
2029
2030 // CHECK: vcvtps2qq (%rcx), %zmm20
2031 // CHECK:  encoding: [0x62,0xe1,0x7d,0x48,0x7b,0x21]
2032           vcvtps2qq (%rcx), %zmm20
2033
2034 // CHECK: vcvtps2qq 291(%rax,%r14,8), %zmm20
2035 // CHECK:  encoding: [0x62,0xa1,0x7d,0x48,0x7b,0xa4,0xf0,0x23,0x01,0x00,0x00]
2036           vcvtps2qq 291(%rax,%r14,8), %zmm20
2037
2038 // CHECK: vcvtps2qq (%rcx){1to8}, %zmm20
2039 // CHECK:  encoding: [0x62,0xe1,0x7d,0x58,0x7b,0x21]
2040           vcvtps2qq (%rcx){1to8}, %zmm20
2041
2042 // CHECK: vcvtps2qq 4064(%rdx), %zmm20
2043 // CHECK:  encoding: [0x62,0xe1,0x7d,0x48,0x7b,0x62,0x7f]
2044           vcvtps2qq 4064(%rdx), %zmm20
2045
2046 // CHECK: vcvtps2qq 4096(%rdx), %zmm20
2047 // CHECK:  encoding: [0x62,0xe1,0x7d,0x48,0x7b,0xa2,0x00,0x10,0x00,0x00]
2048           vcvtps2qq 4096(%rdx), %zmm20
2049
2050 // CHECK: vcvtps2qq -4096(%rdx), %zmm20
2051 // CHECK:  encoding: [0x62,0xe1,0x7d,0x48,0x7b,0x62,0x80]
2052           vcvtps2qq -4096(%rdx), %zmm20
2053
2054 // CHECK: vcvtps2qq -4128(%rdx), %zmm20
2055 // CHECK:  encoding: [0x62,0xe1,0x7d,0x48,0x7b,0xa2,0xe0,0xef,0xff,0xff]
2056           vcvtps2qq -4128(%rdx), %zmm20
2057
2058 // CHECK: vcvtps2qq 508(%rdx){1to8}, %zmm20
2059 // CHECK:  encoding: [0x62,0xe1,0x7d,0x58,0x7b,0x62,0x7f]
2060           vcvtps2qq 508(%rdx){1to8}, %zmm20
2061
2062 // CHECK: vcvtps2qq 512(%rdx){1to8}, %zmm20
2063 // CHECK:  encoding: [0x62,0xe1,0x7d,0x58,0x7b,0xa2,0x00,0x02,0x00,0x00]
2064           vcvtps2qq 512(%rdx){1to8}, %zmm20
2065
2066 // CHECK: vcvtps2qq -512(%rdx){1to8}, %zmm20
2067 // CHECK:  encoding: [0x62,0xe1,0x7d,0x58,0x7b,0x62,0x80]
2068           vcvtps2qq -512(%rdx){1to8}, %zmm20
2069
2070 // CHECK: vcvtps2qq -516(%rdx){1to8}, %zmm20
2071 // CHECK:  encoding: [0x62,0xe1,0x7d,0x58,0x7b,0xa2,0xfc,0xfd,0xff,0xff]
2072           vcvtps2qq -516(%rdx){1to8}, %zmm20
2073
2074 // CHECK: vcvtps2uqq %ymm27, %zmm25
2075 // CHECK:  encoding: [0x62,0x01,0x7d,0x48,0x79,0xcb]
2076           vcvtps2uqq %ymm27, %zmm25
2077
2078 // CHECK: vcvtps2uqq %ymm27, %zmm25 {%k5}
2079 // CHECK:  encoding: [0x62,0x01,0x7d,0x4d,0x79,0xcb]
2080           vcvtps2uqq %ymm27, %zmm25 {%k5}
2081
2082 // CHECK: vcvtps2uqq %ymm27, %zmm25 {%k5} {z}
2083 // CHECK:  encoding: [0x62,0x01,0x7d,0xcd,0x79,0xcb]
2084           vcvtps2uqq %ymm27, %zmm25 {%k5} {z}
2085
2086 // CHECK: vcvtps2uqq {rn-sae}, %ymm27, %zmm25
2087 // CHECK:  encoding: [0x62,0x01,0x7d,0x18,0x79,0xcb]
2088           vcvtps2uqq {rn-sae}, %ymm27, %zmm25
2089
2090 // CHECK: vcvtps2uqq {ru-sae}, %ymm27, %zmm25
2091 // CHECK:  encoding: [0x62,0x01,0x7d,0x58,0x79,0xcb]
2092           vcvtps2uqq {ru-sae}, %ymm27, %zmm25
2093
2094 // CHECK: vcvtps2uqq {rd-sae}, %ymm27, %zmm25
2095 // CHECK:  encoding: [0x62,0x01,0x7d,0x38,0x79,0xcb]
2096           vcvtps2uqq {rd-sae}, %ymm27, %zmm25
2097
2098 // CHECK: vcvtps2uqq {rz-sae}, %ymm27, %zmm25
2099 // CHECK:  encoding: [0x62,0x01,0x7d,0x78,0x79,0xcb]
2100           vcvtps2uqq {rz-sae}, %ymm27, %zmm25
2101
2102 // CHECK: vcvtps2uqq (%rcx), %zmm25
2103 // CHECK:  encoding: [0x62,0x61,0x7d,0x48,0x79,0x09]
2104           vcvtps2uqq (%rcx), %zmm25
2105
2106 // CHECK: vcvtps2uqq 291(%rax,%r14,8), %zmm25
2107 // CHECK:  encoding: [0x62,0x21,0x7d,0x48,0x79,0x8c,0xf0,0x23,0x01,0x00,0x00]
2108           vcvtps2uqq 291(%rax,%r14,8), %zmm25
2109
2110 // CHECK: vcvtps2uqq (%rcx){1to8}, %zmm25
2111 // CHECK:  encoding: [0x62,0x61,0x7d,0x58,0x79,0x09]
2112           vcvtps2uqq (%rcx){1to8}, %zmm25
2113
2114 // CHECK: vcvtps2uqq 4064(%rdx), %zmm25
2115 // CHECK:  encoding: [0x62,0x61,0x7d,0x48,0x79,0x4a,0x7f]
2116           vcvtps2uqq 4064(%rdx), %zmm25
2117
2118 // CHECK: vcvtps2uqq 4096(%rdx), %zmm25
2119 // CHECK:  encoding: [0x62,0x61,0x7d,0x48,0x79,0x8a,0x00,0x10,0x00,0x00]
2120           vcvtps2uqq 4096(%rdx), %zmm25
2121
2122 // CHECK: vcvtps2uqq -4096(%rdx), %zmm25
2123 // CHECK:  encoding: [0x62,0x61,0x7d,0x48,0x79,0x4a,0x80]
2124           vcvtps2uqq -4096(%rdx), %zmm25
2125
2126 // CHECK: vcvtps2uqq -4128(%rdx), %zmm25
2127 // CHECK:  encoding: [0x62,0x61,0x7d,0x48,0x79,0x8a,0xe0,0xef,0xff,0xff]
2128           vcvtps2uqq -4128(%rdx), %zmm25
2129
2130 // CHECK: vcvtps2uqq 508(%rdx){1to8}, %zmm25
2131 // CHECK:  encoding: [0x62,0x61,0x7d,0x58,0x79,0x4a,0x7f]
2132           vcvtps2uqq 508(%rdx){1to8}, %zmm25
2133
2134 // CHECK: vcvtps2uqq 512(%rdx){1to8}, %zmm25
2135 // CHECK:  encoding: [0x62,0x61,0x7d,0x58,0x79,0x8a,0x00,0x02,0x00,0x00]
2136           vcvtps2uqq 512(%rdx){1to8}, %zmm25
2137
2138 // CHECK: vcvtps2uqq -512(%rdx){1to8}, %zmm25
2139 // CHECK:  encoding: [0x62,0x61,0x7d,0x58,0x79,0x4a,0x80]
2140           vcvtps2uqq -512(%rdx){1to8}, %zmm25
2141
2142 // CHECK: vcvtps2uqq -516(%rdx){1to8}, %zmm25
2143 // CHECK:  encoding: [0x62,0x61,0x7d,0x58,0x79,0x8a,0xfc,0xfd,0xff,0xff]
2144           vcvtps2uqq -516(%rdx){1to8}, %zmm25
2145
2146 // CHECK: vcvtqq2pd %zmm25, %zmm17
2147 // CHECK:  encoding: [0x62,0x81,0xfe,0x48,0xe6,0xc9]
2148           vcvtqq2pd %zmm25, %zmm17
2149
2150 // CHECK: vcvtqq2pd %zmm25, %zmm17 {%k4}
2151 // CHECK:  encoding: [0x62,0x81,0xfe,0x4c,0xe6,0xc9]
2152           vcvtqq2pd %zmm25, %zmm17 {%k4}
2153
2154 // CHECK: vcvtqq2pd %zmm25, %zmm17 {%k4} {z}
2155 // CHECK:  encoding: [0x62,0x81,0xfe,0xcc,0xe6,0xc9]
2156           vcvtqq2pd %zmm25, %zmm17 {%k4} {z}
2157
2158 // CHECK: vcvtqq2pd {rn-sae}, %zmm25, %zmm17
2159 // CHECK:  encoding: [0x62,0x81,0xfe,0x18,0xe6,0xc9]
2160           vcvtqq2pd {rn-sae}, %zmm25, %zmm17
2161
2162 // CHECK: vcvtqq2pd {ru-sae}, %zmm25, %zmm17
2163 // CHECK:  encoding: [0x62,0x81,0xfe,0x58,0xe6,0xc9]
2164           vcvtqq2pd {ru-sae}, %zmm25, %zmm17
2165
2166 // CHECK: vcvtqq2pd {rd-sae}, %zmm25, %zmm17
2167 // CHECK:  encoding: [0x62,0x81,0xfe,0x38,0xe6,0xc9]
2168           vcvtqq2pd {rd-sae}, %zmm25, %zmm17
2169
2170 // CHECK: vcvtqq2pd {rz-sae}, %zmm25, %zmm17
2171 // CHECK:  encoding: [0x62,0x81,0xfe,0x78,0xe6,0xc9]
2172           vcvtqq2pd {rz-sae}, %zmm25, %zmm17
2173
2174 // CHECK: vcvtqq2pd (%rcx), %zmm17
2175 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0xe6,0x09]
2176           vcvtqq2pd (%rcx), %zmm17
2177
2178 // CHECK: vcvtqq2pd 291(%rax,%r14,8), %zmm17
2179 // CHECK:  encoding: [0x62,0xa1,0xfe,0x48,0xe6,0x8c,0xf0,0x23,0x01,0x00,0x00]
2180           vcvtqq2pd 291(%rax,%r14,8), %zmm17
2181
2182 // CHECK: vcvtqq2pd (%rcx){1to8}, %zmm17
2183 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0xe6,0x09]
2184           vcvtqq2pd (%rcx){1to8}, %zmm17
2185
2186 // CHECK: vcvtqq2pd 8128(%rdx), %zmm17
2187 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0xe6,0x4a,0x7f]
2188           vcvtqq2pd 8128(%rdx), %zmm17
2189
2190 // CHECK: vcvtqq2pd 8192(%rdx), %zmm17
2191 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0xe6,0x8a,0x00,0x20,0x00,0x00]
2192           vcvtqq2pd 8192(%rdx), %zmm17
2193
2194 // CHECK: vcvtqq2pd -8192(%rdx), %zmm17
2195 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0xe6,0x4a,0x80]
2196           vcvtqq2pd -8192(%rdx), %zmm17
2197
2198 // CHECK: vcvtqq2pd -8256(%rdx), %zmm17
2199 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0xe6,0x8a,0xc0,0xdf,0xff,0xff]
2200           vcvtqq2pd -8256(%rdx), %zmm17
2201
2202 // CHECK: vcvtqq2pd 1016(%rdx){1to8}, %zmm17
2203 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0xe6,0x4a,0x7f]
2204           vcvtqq2pd 1016(%rdx){1to8}, %zmm17
2205
2206 // CHECK: vcvtqq2pd 1024(%rdx){1to8}, %zmm17
2207 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0xe6,0x8a,0x00,0x04,0x00,0x00]
2208           vcvtqq2pd 1024(%rdx){1to8}, %zmm17
2209
2210 // CHECK: vcvtqq2pd -1024(%rdx){1to8}, %zmm17
2211 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0xe6,0x4a,0x80]
2212           vcvtqq2pd -1024(%rdx){1to8}, %zmm17
2213
2214 // CHECK: vcvtqq2pd -1032(%rdx){1to8}, %zmm17
2215 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0xe6,0x8a,0xf8,0xfb,0xff,0xff]
2216           vcvtqq2pd -1032(%rdx){1to8}, %zmm17
2217
2218 // CHECK: vcvtqq2ps %zmm27, %ymm20
2219 // CHECK:  encoding: [0x62,0x81,0xfc,0x48,0x5b,0xe3]
2220           vcvtqq2ps %zmm27, %ymm20
2221
2222 // CHECK: vcvtqq2ps %zmm27, %ymm20 {%k5}
2223 // CHECK:  encoding: [0x62,0x81,0xfc,0x4d,0x5b,0xe3]
2224           vcvtqq2ps %zmm27, %ymm20 {%k5}
2225
2226 // CHECK: vcvtqq2ps %zmm27, %ymm20 {%k5} {z}
2227 // CHECK:  encoding: [0x62,0x81,0xfc,0xcd,0x5b,0xe3]
2228           vcvtqq2ps %zmm27, %ymm20 {%k5} {z}
2229
2230 // CHECK: vcvtqq2ps {rn-sae}, %zmm27, %ymm20
2231 // CHECK:  encoding: [0x62,0x81,0xfc,0x18,0x5b,0xe3]
2232           vcvtqq2ps {rn-sae}, %zmm27, %ymm20
2233
2234 // CHECK: vcvtqq2ps {ru-sae}, %zmm27, %ymm20
2235 // CHECK:  encoding: [0x62,0x81,0xfc,0x58,0x5b,0xe3]
2236           vcvtqq2ps {ru-sae}, %zmm27, %ymm20
2237
2238 // CHECK: vcvtqq2ps {rd-sae}, %zmm27, %ymm20
2239 // CHECK:  encoding: [0x62,0x81,0xfc,0x38,0x5b,0xe3]
2240           vcvtqq2ps {rd-sae}, %zmm27, %ymm20
2241
2242 // CHECK: vcvtqq2ps {rz-sae}, %zmm27, %ymm20
2243 // CHECK:  encoding: [0x62,0x81,0xfc,0x78,0x5b,0xe3]
2244           vcvtqq2ps {rz-sae}, %zmm27, %ymm20
2245
2246 // CHECK: vcvtqq2ps (%rcx), %ymm20
2247 // CHECK:  encoding: [0x62,0xe1,0xfc,0x48,0x5b,0x21]
2248           vcvtqq2ps (%rcx), %ymm20
2249
2250 // CHECK: vcvtqq2ps 291(%rax,%r14,8), %ymm20
2251 // CHECK:  encoding: [0x62,0xa1,0xfc,0x48,0x5b,0xa4,0xf0,0x23,0x01,0x00,0x00]
2252           vcvtqq2ps 291(%rax,%r14,8), %ymm20
2253
2254 // CHECK: vcvtqq2ps (%rcx){1to8}, %ymm20
2255 // CHECK:  encoding: [0x62,0xe1,0xfc,0x58,0x5b,0x21]
2256           vcvtqq2ps (%rcx){1to8}, %ymm20
2257
2258 // CHECK: vcvtqq2ps 8128(%rdx), %ymm20
2259 // CHECK:  encoding: [0x62,0xe1,0xfc,0x48,0x5b,0x62,0x7f]
2260           vcvtqq2ps 8128(%rdx), %ymm20
2261
2262 // CHECK: vcvtqq2ps 8192(%rdx), %ymm20
2263 // CHECK:  encoding: [0x62,0xe1,0xfc,0x48,0x5b,0xa2,0x00,0x20,0x00,0x00]
2264           vcvtqq2ps 8192(%rdx), %ymm20
2265
2266 // CHECK: vcvtqq2ps -8192(%rdx), %ymm20
2267 // CHECK:  encoding: [0x62,0xe1,0xfc,0x48,0x5b,0x62,0x80]
2268           vcvtqq2ps -8192(%rdx), %ymm20
2269
2270 // CHECK: vcvtqq2ps -8256(%rdx), %ymm20
2271 // CHECK:  encoding: [0x62,0xe1,0xfc,0x48,0x5b,0xa2,0xc0,0xdf,0xff,0xff]
2272           vcvtqq2ps -8256(%rdx), %ymm20
2273
2274 // CHECK: vcvtqq2ps 1016(%rdx){1to8}, %ymm20
2275 // CHECK:  encoding: [0x62,0xe1,0xfc,0x58,0x5b,0x62,0x7f]
2276           vcvtqq2ps 1016(%rdx){1to8}, %ymm20
2277
2278 // CHECK: vcvtqq2ps 1024(%rdx){1to8}, %ymm20
2279 // CHECK:  encoding: [0x62,0xe1,0xfc,0x58,0x5b,0xa2,0x00,0x04,0x00,0x00]
2280           vcvtqq2ps 1024(%rdx){1to8}, %ymm20
2281
2282 // CHECK: vcvtqq2ps -1024(%rdx){1to8}, %ymm20
2283 // CHECK:  encoding: [0x62,0xe1,0xfc,0x58,0x5b,0x62,0x80]
2284           vcvtqq2ps -1024(%rdx){1to8}, %ymm20
2285
2286 // CHECK: vcvtqq2ps -1032(%rdx){1to8}, %ymm20
2287 // CHECK:  encoding: [0x62,0xe1,0xfc,0x58,0x5b,0xa2,0xf8,0xfb,0xff,0xff]
2288           vcvtqq2ps -1032(%rdx){1to8}, %ymm20
2289
2290 // CHECK: vcvtuqq2pd %zmm29, %zmm21
2291 // CHECK:  encoding: [0x62,0x81,0xfe,0x48,0x7a,0xed]
2292           vcvtuqq2pd %zmm29, %zmm21
2293
2294 // CHECK: vcvtuqq2pd %zmm29, %zmm21 {%k6}
2295 // CHECK:  encoding: [0x62,0x81,0xfe,0x4e,0x7a,0xed]
2296           vcvtuqq2pd %zmm29, %zmm21 {%k6}
2297
2298 // CHECK: vcvtuqq2pd %zmm29, %zmm21 {%k6} {z}
2299 // CHECK:  encoding: [0x62,0x81,0xfe,0xce,0x7a,0xed]
2300           vcvtuqq2pd %zmm29, %zmm21 {%k6} {z}
2301
2302 // CHECK: vcvtuqq2pd {rn-sae}, %zmm29, %zmm21
2303 // CHECK:  encoding: [0x62,0x81,0xfe,0x18,0x7a,0xed]
2304           vcvtuqq2pd {rn-sae}, %zmm29, %zmm21
2305
2306 // CHECK: vcvtuqq2pd {ru-sae}, %zmm29, %zmm21
2307 // CHECK:  encoding: [0x62,0x81,0xfe,0x58,0x7a,0xed]
2308           vcvtuqq2pd {ru-sae}, %zmm29, %zmm21
2309
2310 // CHECK: vcvtuqq2pd {rd-sae}, %zmm29, %zmm21
2311 // CHECK:  encoding: [0x62,0x81,0xfe,0x38,0x7a,0xed]
2312           vcvtuqq2pd {rd-sae}, %zmm29, %zmm21
2313
2314 // CHECK: vcvtuqq2pd {rz-sae}, %zmm29, %zmm21
2315 // CHECK:  encoding: [0x62,0x81,0xfe,0x78,0x7a,0xed]
2316           vcvtuqq2pd {rz-sae}, %zmm29, %zmm21
2317
2318 // CHECK: vcvtuqq2pd (%rcx), %zmm21
2319 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0x7a,0x29]
2320           vcvtuqq2pd (%rcx), %zmm21
2321
2322 // CHECK: vcvtuqq2pd 291(%rax,%r14,8), %zmm21
2323 // CHECK:  encoding: [0x62,0xa1,0xfe,0x48,0x7a,0xac,0xf0,0x23,0x01,0x00,0x00]
2324           vcvtuqq2pd 291(%rax,%r14,8), %zmm21
2325
2326 // CHECK: vcvtuqq2pd (%rcx){1to8}, %zmm21
2327 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0x7a,0x29]
2328           vcvtuqq2pd (%rcx){1to8}, %zmm21
2329
2330 // CHECK: vcvtuqq2pd 8128(%rdx), %zmm21
2331 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0x7a,0x6a,0x7f]
2332           vcvtuqq2pd 8128(%rdx), %zmm21
2333
2334 // CHECK: vcvtuqq2pd 8192(%rdx), %zmm21
2335 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0x7a,0xaa,0x00,0x20,0x00,0x00]
2336           vcvtuqq2pd 8192(%rdx), %zmm21
2337
2338 // CHECK: vcvtuqq2pd -8192(%rdx), %zmm21
2339 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0x7a,0x6a,0x80]
2340           vcvtuqq2pd -8192(%rdx), %zmm21
2341
2342 // CHECK: vcvtuqq2pd -8256(%rdx), %zmm21
2343 // CHECK:  encoding: [0x62,0xe1,0xfe,0x48,0x7a,0xaa,0xc0,0xdf,0xff,0xff]
2344           vcvtuqq2pd -8256(%rdx), %zmm21
2345
2346 // CHECK: vcvtuqq2pd 1016(%rdx){1to8}, %zmm21
2347 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0x7a,0x6a,0x7f]
2348           vcvtuqq2pd 1016(%rdx){1to8}, %zmm21
2349
2350 // CHECK: vcvtuqq2pd 1024(%rdx){1to8}, %zmm21
2351 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0x7a,0xaa,0x00,0x04,0x00,0x00]
2352           vcvtuqq2pd 1024(%rdx){1to8}, %zmm21
2353
2354 // CHECK: vcvtuqq2pd -1024(%rdx){1to8}, %zmm21
2355 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0x7a,0x6a,0x80]
2356           vcvtuqq2pd -1024(%rdx){1to8}, %zmm21
2357
2358 // CHECK: vcvtuqq2pd -1032(%rdx){1to8}, %zmm21
2359 // CHECK:  encoding: [0x62,0xe1,0xfe,0x58,0x7a,0xaa,0xf8,0xfb,0xff,0xff]
2360           vcvtuqq2pd -1032(%rdx){1to8}, %zmm21
2361
2362 // CHECK: vcvtuqq2ps %zmm21, %ymm18
2363 // CHECK:  encoding: [0x62,0xa1,0xff,0x48,0x7a,0xd5]
2364           vcvtuqq2ps %zmm21, %ymm18
2365
2366 // CHECK: vcvtuqq2ps %zmm21, %ymm18 {%k2}
2367 // CHECK:  encoding: [0x62,0xa1,0xff,0x4a,0x7a,0xd5]
2368           vcvtuqq2ps %zmm21, %ymm18 {%k2}
2369
2370 // CHECK: vcvtuqq2ps %zmm21, %ymm18 {%k2} {z}
2371 // CHECK:  encoding: [0x62,0xa1,0xff,0xca,0x7a,0xd5]
2372           vcvtuqq2ps %zmm21, %ymm18 {%k2} {z}
2373
2374 // CHECK: ktestb %k6, %k4
2375 // CHECK:  encoding: [0xc5,0xf9,0x99,0xe6]
2376           ktestb %k6, %k4
2377
2378 // CHECK: ktestb %k4, %k5
2379 // CHECK:  encoding: [0xc5,0xf9,0x99,0xec]
2380           ktestb %k4, %k5
2381
2382 // CHECK: ktestw %k4, %k5
2383 // CHECK:  encoding: [0xc5,0xf8,0x99,0xec]
2384           ktestw %k4, %k5
2385
2386 // CHECK: ktestw %k6, %k2
2387 // CHECK:  encoding: [0xc5,0xf8,0x99,0xd6]
2388           ktestw %k6, %k2
2389
2390 // CHECK: kortestb %k3, %k2
2391 // CHECK:  encoding: [0xc5,0xf9,0x98,0xd3]
2392           kortestb %k3, %k2
2393
2394 // CHECK: kortestb %k6, %k2
2395 // CHECK:  encoding: [0xc5,0xf9,0x98,0xd6]
2396           kortestb %k6, %k2
2397
2398 // CHECK: kaddb  %k7, %k4, %k5
2399 // CHECK:  encoding: [0xc5,0xdd,0x4a,0xef]
2400           kaddb  %k7, %k4, %k5
2401
2402 // CHECK: kaddb  %k4, %k6, %k5
2403 // CHECK:  encoding: [0xc5,0xcd,0x4a,0xec]
2404           kaddb  %k4, %k6, %k5
2405
2406 // CHECK: kaddw  %k4, %k3, %k2
2407 // CHECK:  encoding: [0xc5,0xe4,0x4a,0xd4]
2408           kaddw  %k4, %k3, %k2
2409
2410 // CHECK: kaddw  %k6, %k6, %k2
2411 // CHECK:  encoding: [0xc5,0xcc,0x4a,0xd6]
2412           kaddw  %k6, %k6, %k2
2413