1// RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=knl -mattr=+avx512bw  --show-encoding %s | FileCheck %s
2
3// CHECK: vpaddb %zmm23, %zmm24, %zmm19
4// CHECK:  encoding: [0x62,0xa1,0x3d,0x40,0xfc,0xdf]
5          vpaddb %zmm23, %zmm24, %zmm19
6
7// CHECK: vpaddb %zmm23, %zmm24, %zmm19 {%k3}
8// CHECK:  encoding: [0x62,0xa1,0x3d,0x43,0xfc,0xdf]
9          vpaddb %zmm23, %zmm24, %zmm19 {%k3}
10
11// CHECK: vpaddb %zmm23, %zmm24, %zmm19 {%k3} {z}
12// CHECK:  encoding: [0x62,0xa1,0x3d,0xc3,0xfc,0xdf]
13          vpaddb %zmm23, %zmm24, %zmm19 {%k3} {z}
14
15// CHECK: vpaddb (%rcx), %zmm24, %zmm19
16// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfc,0x19]
17          vpaddb (%rcx), %zmm24, %zmm19
18
19// CHECK: vpaddb 291(%rax,%r14,8), %zmm24, %zmm19
20// CHECK:  encoding: [0x62,0xa1,0x3d,0x40,0xfc,0x9c,0xf0,0x23,0x01,0x00,0x00]
21          vpaddb 291(%rax,%r14,8), %zmm24, %zmm19
22
23// CHECK: vpaddb 8128(%rdx), %zmm24, %zmm19
24// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfc,0x5a,0x7f]
25          vpaddb 8128(%rdx), %zmm24, %zmm19
26
27// CHECK: vpaddb 8192(%rdx), %zmm24, %zmm19
28// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfc,0x9a,0x00,0x20,0x00,0x00]
29          vpaddb 8192(%rdx), %zmm24, %zmm19
30
31// CHECK: vpaddb -8192(%rdx), %zmm24, %zmm19
32// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfc,0x5a,0x80]
33          vpaddb -8192(%rdx), %zmm24, %zmm19
34
35// CHECK: vpaddb -8256(%rdx), %zmm24, %zmm19
36// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfc,0x9a,0xc0,0xdf,0xff,0xff]
37          vpaddb -8256(%rdx), %zmm24, %zmm19
38
39// CHECK: vpaddw %zmm19, %zmm24, %zmm17
40// CHECK:  encoding: [0x62,0xa1,0x3d,0x40,0xfd,0xcb]
41          vpaddw %zmm19, %zmm24, %zmm17
42
43// CHECK: vpaddw %zmm19, %zmm24, %zmm17 {%k3}
44// CHECK:  encoding: [0x62,0xa1,0x3d,0x43,0xfd,0xcb]
45          vpaddw %zmm19, %zmm24, %zmm17 {%k3}
46
47// CHECK: vpaddw %zmm19, %zmm24, %zmm17 {%k3} {z}
48// CHECK:  encoding: [0x62,0xa1,0x3d,0xc3,0xfd,0xcb]
49          vpaddw %zmm19, %zmm24, %zmm17 {%k3} {z}
50
51// CHECK: vpaddw (%rcx), %zmm24, %zmm17
52// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfd,0x09]
53          vpaddw (%rcx), %zmm24, %zmm17
54
55// CHECK: vpaddw 291(%rax,%r14,8), %zmm24, %zmm17
56// CHECK:  encoding: [0x62,0xa1,0x3d,0x40,0xfd,0x8c,0xf0,0x23,0x01,0x00,0x00]
57          vpaddw 291(%rax,%r14,8), %zmm24, %zmm17
58
59// CHECK: vpaddw 8128(%rdx), %zmm24, %zmm17
60// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfd,0x4a,0x7f]
61          vpaddw 8128(%rdx), %zmm24, %zmm17
62
63// CHECK: vpaddw 8192(%rdx), %zmm24, %zmm17
64// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfd,0x8a,0x00,0x20,0x00,0x00]
65          vpaddw 8192(%rdx), %zmm24, %zmm17
66
67// CHECK: vpaddw -8192(%rdx), %zmm24, %zmm17
68// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfd,0x4a,0x80]
69          vpaddw -8192(%rdx), %zmm24, %zmm17
70
71// CHECK: vpaddw -8256(%rdx), %zmm24, %zmm17
72// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xfd,0x8a,0xc0,0xdf,0xff,0xff]
73          vpaddw -8256(%rdx), %zmm24, %zmm17
74
75// CHECK: vpbroadcastb %eax, %zmm19
76// CHECK:  encoding: [0x62,0xe2,0x7d,0x48,0x7a,0xd8]
77          vpbroadcastb %eax, %zmm19
78
79// CHECK: vpbroadcastb %eax, %zmm19 {%k7}
80// CHECK:  encoding: [0x62,0xe2,0x7d,0x4f,0x7a,0xd8]
81          vpbroadcastb %eax, %zmm19 {%k7}
82
83// CHECK: vpbroadcastb %eax, %zmm19 {%k7} {z}
84// CHECK:  encoding: [0x62,0xe2,0x7d,0xcf,0x7a,0xd8]
85          vpbroadcastb %eax, %zmm19 {%k7} {z}
86
87// CHECK: vpbroadcastw %eax, %zmm24
88// CHECK:  encoding: [0x62,0x62,0x7d,0x48,0x7b,0xc0]
89          vpbroadcastw %eax, %zmm24
90
91// CHECK: vpbroadcastw %eax, %zmm24 {%k1}
92// CHECK:  encoding: [0x62,0x62,0x7d,0x49,0x7b,0xc0]
93          vpbroadcastw %eax, %zmm24 {%k1}
94
95// CHECK: vpbroadcastw %eax, %zmm24 {%k1} {z}
96// CHECK:  encoding: [0x62,0x62,0x7d,0xc9,0x7b,0xc0]
97          vpbroadcastw %eax, %zmm24 {%k1} {z}
98// CHECK: vpcmpeqb %zmm26, %zmm26, %k4
99// CHECK:  encoding: [0x62,0x91,0x2d,0x40,0x74,0xe2]
100          vpcmpeqb %zmm26, %zmm26, %k4
101
102// CHECK: vpcmpeqb %zmm26, %zmm26, %k4 {%k6}
103// CHECK:  encoding: [0x62,0x91,0x2d,0x46,0x74,0xe2]
104          vpcmpeqb %zmm26, %zmm26, %k4 {%k6}
105
106// CHECK: vpcmpeqb (%rcx), %zmm26, %k4
107// CHECK:  encoding: [0x62,0xf1,0x2d,0x40,0x74,0x21]
108          vpcmpeqb (%rcx), %zmm26, %k4
109
110// CHECK: vpcmpeqb 291(%rax,%r14,8), %zmm26, %k4
111// CHECK:  encoding: [0x62,0xb1,0x2d,0x40,0x74,0xa4,0xf0,0x23,0x01,0x00,0x00]
112          vpcmpeqb 291(%rax,%r14,8), %zmm26, %k4
113
114// CHECK: vpcmpeqb 8128(%rdx), %zmm26, %k4
115// CHECK:  encoding: [0x62,0xf1,0x2d,0x40,0x74,0x62,0x7f]
116          vpcmpeqb 8128(%rdx), %zmm26, %k4
117
118// CHECK: vpcmpeqb 8192(%rdx), %zmm26, %k4
119// CHECK:  encoding: [0x62,0xf1,0x2d,0x40,0x74,0xa2,0x00,0x20,0x00,0x00]
120          vpcmpeqb 8192(%rdx), %zmm26, %k4
121
122// CHECK: vpcmpeqb -8192(%rdx), %zmm26, %k4
123// CHECK:  encoding: [0x62,0xf1,0x2d,0x40,0x74,0x62,0x80]
124          vpcmpeqb -8192(%rdx), %zmm26, %k4
125
126// CHECK: vpcmpeqb -8256(%rdx), %zmm26, %k4
127// CHECK:  encoding: [0x62,0xf1,0x2d,0x40,0x74,0xa2,0xc0,0xdf,0xff,0xff]
128          vpcmpeqb -8256(%rdx), %zmm26, %k4
129
130// CHECK: vpcmpeqw %zmm19, %zmm23, %k5
131// CHECK:  encoding: [0x62,0xb1,0x45,0x40,0x75,0xeb]
132          vpcmpeqw %zmm19, %zmm23, %k5
133
134// CHECK: vpcmpeqw %zmm19, %zmm23, %k5 {%k7}
135// CHECK:  encoding: [0x62,0xb1,0x45,0x47,0x75,0xeb]
136          vpcmpeqw %zmm19, %zmm23, %k5 {%k7}
137
138// CHECK: vpcmpeqw (%rcx), %zmm23, %k5
139// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x75,0x29]
140          vpcmpeqw (%rcx), %zmm23, %k5
141
142// CHECK: vpcmpeqw 291(%rax,%r14,8), %zmm23, %k5
143// CHECK:  encoding: [0x62,0xb1,0x45,0x40,0x75,0xac,0xf0,0x23,0x01,0x00,0x00]
144          vpcmpeqw 291(%rax,%r14,8), %zmm23, %k5
145
146// CHECK: vpcmpeqw 8128(%rdx), %zmm23, %k5
147// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x75,0x6a,0x7f]
148          vpcmpeqw 8128(%rdx), %zmm23, %k5
149
150// CHECK: vpcmpeqw 8192(%rdx), %zmm23, %k5
151// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x75,0xaa,0x00,0x20,0x00,0x00]
152          vpcmpeqw 8192(%rdx), %zmm23, %k5
153
154// CHECK: vpcmpeqw -8192(%rdx), %zmm23, %k5
155// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x75,0x6a,0x80]
156          vpcmpeqw -8192(%rdx), %zmm23, %k5
157
158// CHECK: vpcmpeqw -8256(%rdx), %zmm23, %k5
159// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x75,0xaa,0xc0,0xdf,0xff,0xff]
160          vpcmpeqw -8256(%rdx), %zmm23, %k5
161
162// CHECK: vpcmpgtb %zmm20, %zmm30, %k4
163// CHECK:  encoding: [0x62,0xb1,0x0d,0x40,0x64,0xe4]
164          vpcmpgtb %zmm20, %zmm30, %k4
165
166// CHECK: vpcmpgtb %zmm20, %zmm30, %k4 {%k1}
167// CHECK:  encoding: [0x62,0xb1,0x0d,0x41,0x64,0xe4]
168          vpcmpgtb %zmm20, %zmm30, %k4 {%k1}
169
170// CHECK: vpcmpgtb (%rcx), %zmm30, %k4
171// CHECK:  encoding: [0x62,0xf1,0x0d,0x40,0x64,0x21]
172          vpcmpgtb (%rcx), %zmm30, %k4
173
174// CHECK: vpcmpgtb 291(%rax,%r14,8), %zmm30, %k4
175// CHECK:  encoding: [0x62,0xb1,0x0d,0x40,0x64,0xa4,0xf0,0x23,0x01,0x00,0x00]
176          vpcmpgtb 291(%rax,%r14,8), %zmm30, %k4
177
178// CHECK: vpcmpgtb 8128(%rdx), %zmm30, %k4
179// CHECK:  encoding: [0x62,0xf1,0x0d,0x40,0x64,0x62,0x7f]
180          vpcmpgtb 8128(%rdx), %zmm30, %k4
181
182// CHECK: vpcmpgtb 8192(%rdx), %zmm30, %k4
183// CHECK:  encoding: [0x62,0xf1,0x0d,0x40,0x64,0xa2,0x00,0x20,0x00,0x00]
184          vpcmpgtb 8192(%rdx), %zmm30, %k4
185
186// CHECK: vpcmpgtb -8192(%rdx), %zmm30, %k4
187// CHECK:  encoding: [0x62,0xf1,0x0d,0x40,0x64,0x62,0x80]
188          vpcmpgtb -8192(%rdx), %zmm30, %k4
189
190// CHECK: vpcmpgtb -8256(%rdx), %zmm30, %k4
191// CHECK:  encoding: [0x62,0xf1,0x0d,0x40,0x64,0xa2,0xc0,0xdf,0xff,0xff]
192          vpcmpgtb -8256(%rdx), %zmm30, %k4
193
194// CHECK: vpcmpgtw %zmm21, %zmm23, %k5
195// CHECK:  encoding: [0x62,0xb1,0x45,0x40,0x65,0xed]
196          vpcmpgtw %zmm21, %zmm23, %k5
197
198// CHECK: vpcmpgtw %zmm21, %zmm23, %k5 {%k7}
199// CHECK:  encoding: [0x62,0xb1,0x45,0x47,0x65,0xed]
200          vpcmpgtw %zmm21, %zmm23, %k5 {%k7}
201
202// CHECK: vpcmpgtw (%rcx), %zmm23, %k5
203// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x65,0x29]
204          vpcmpgtw (%rcx), %zmm23, %k5
205
206// CHECK: vpcmpgtw 291(%rax,%r14,8), %zmm23, %k5
207// CHECK:  encoding: [0x62,0xb1,0x45,0x40,0x65,0xac,0xf0,0x23,0x01,0x00,0x00]
208          vpcmpgtw 291(%rax,%r14,8), %zmm23, %k5
209
210// CHECK: vpcmpgtw 8128(%rdx), %zmm23, %k5
211// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x65,0x6a,0x7f]
212          vpcmpgtw 8128(%rdx), %zmm23, %k5
213
214// CHECK: vpcmpgtw 8192(%rdx), %zmm23, %k5
215// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x65,0xaa,0x00,0x20,0x00,0x00]
216          vpcmpgtw 8192(%rdx), %zmm23, %k5
217
218// CHECK: vpcmpgtw -8192(%rdx), %zmm23, %k5
219// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x65,0x6a,0x80]
220          vpcmpgtw -8192(%rdx), %zmm23, %k5
221
222// CHECK: vpcmpgtw -8256(%rdx), %zmm23, %k5
223// CHECK:  encoding: [0x62,0xf1,0x45,0x40,0x65,0xaa,0xc0,0xdf,0xff,0xff]
224          vpcmpgtw -8256(%rdx), %zmm23, %k5
225
226// CHECK: vpmaxsb %zmm26, %zmm29, %zmm23
227// CHECK:  encoding: [0x62,0x82,0x15,0x40,0x3c,0xfa]
228          vpmaxsb %zmm26, %zmm29, %zmm23
229
230// CHECK: vpmaxsb %zmm26, %zmm29, %zmm23 {%k4}
231// CHECK:  encoding: [0x62,0x82,0x15,0x44,0x3c,0xfa]
232          vpmaxsb %zmm26, %zmm29, %zmm23 {%k4}
233
234// CHECK: vpmaxsb %zmm26, %zmm29, %zmm23 {%k4} {z}
235// CHECK:  encoding: [0x62,0x82,0x15,0xc4,0x3c,0xfa]
236          vpmaxsb %zmm26, %zmm29, %zmm23 {%k4} {z}
237
238// CHECK: vpmaxsb (%rcx), %zmm29, %zmm23
239// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3c,0x39]
240          vpmaxsb (%rcx), %zmm29, %zmm23
241
242// CHECK: vpmaxsb 291(%rax,%r14,8), %zmm29, %zmm23
243// CHECK:  encoding: [0x62,0xa2,0x15,0x40,0x3c,0xbc,0xf0,0x23,0x01,0x00,0x00]
244          vpmaxsb 291(%rax,%r14,8), %zmm29, %zmm23
245
246// CHECK: vpmaxsb 8128(%rdx), %zmm29, %zmm23
247// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3c,0x7a,0x7f]
248          vpmaxsb 8128(%rdx), %zmm29, %zmm23
249
250// CHECK: vpmaxsb 8192(%rdx), %zmm29, %zmm23
251// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3c,0xba,0x00,0x20,0x00,0x00]
252          vpmaxsb 8192(%rdx), %zmm29, %zmm23
253
254// CHECK: vpmaxsb -8192(%rdx), %zmm29, %zmm23
255// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3c,0x7a,0x80]
256          vpmaxsb -8192(%rdx), %zmm29, %zmm23
257
258// CHECK: vpmaxsb -8256(%rdx), %zmm29, %zmm23
259// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3c,0xba,0xc0,0xdf,0xff,0xff]
260          vpmaxsb -8256(%rdx), %zmm29, %zmm23
261
262// CHECK: vpmaxsw %zmm25, %zmm28, %zmm25
263// CHECK:  encoding: [0x62,0x01,0x1d,0x40,0xee,0xc9]
264          vpmaxsw %zmm25, %zmm28, %zmm25
265
266// CHECK: vpmaxsw %zmm25, %zmm28, %zmm25 {%k3}
267// CHECK:  encoding: [0x62,0x01,0x1d,0x43,0xee,0xc9]
268          vpmaxsw %zmm25, %zmm28, %zmm25 {%k3}
269
270// CHECK: vpmaxsw %zmm25, %zmm28, %zmm25 {%k3} {z}
271// CHECK:  encoding: [0x62,0x01,0x1d,0xc3,0xee,0xc9]
272          vpmaxsw %zmm25, %zmm28, %zmm25 {%k3} {z}
273
274// CHECK: vpmaxsw (%rcx), %zmm28, %zmm25
275// CHECK:  encoding: [0x62,0x61,0x1d,0x40,0xee,0x09]
276          vpmaxsw (%rcx), %zmm28, %zmm25
277
278// CHECK: vpmaxsw 291(%rax,%r14,8), %zmm28, %zmm25
279// CHECK:  encoding: [0x62,0x21,0x1d,0x40,0xee,0x8c,0xf0,0x23,0x01,0x00,0x00]
280          vpmaxsw 291(%rax,%r14,8), %zmm28, %zmm25
281
282// CHECK: vpmaxsw 8128(%rdx), %zmm28, %zmm25
283// CHECK:  encoding: [0x62,0x61,0x1d,0x40,0xee,0x4a,0x7f]
284          vpmaxsw 8128(%rdx), %zmm28, %zmm25
285
286// CHECK: vpmaxsw 8192(%rdx), %zmm28, %zmm25
287// CHECK:  encoding: [0x62,0x61,0x1d,0x40,0xee,0x8a,0x00,0x20,0x00,0x00]
288          vpmaxsw 8192(%rdx), %zmm28, %zmm25
289
290// CHECK: vpmaxsw -8192(%rdx), %zmm28, %zmm25
291// CHECK:  encoding: [0x62,0x61,0x1d,0x40,0xee,0x4a,0x80]
292          vpmaxsw -8192(%rdx), %zmm28, %zmm25
293
294// CHECK: vpmaxsw -8256(%rdx), %zmm28, %zmm25
295// CHECK:  encoding: [0x62,0x61,0x1d,0x40,0xee,0x8a,0xc0,0xdf,0xff,0xff]
296          vpmaxsw -8256(%rdx), %zmm28, %zmm25
297
298// CHECK: vpmaxub %zmm25, %zmm18, %zmm29
299// CHECK:  encoding: [0x62,0x01,0x6d,0x40,0xde,0xe9]
300          vpmaxub %zmm25, %zmm18, %zmm29
301
302// CHECK: vpmaxub %zmm25, %zmm18, %zmm29 {%k7}
303// CHECK:  encoding: [0x62,0x01,0x6d,0x47,0xde,0xe9]
304          vpmaxub %zmm25, %zmm18, %zmm29 {%k7}
305
306// CHECK: vpmaxub %zmm25, %zmm18, %zmm29 {%k7} {z}
307// CHECK:  encoding: [0x62,0x01,0x6d,0xc7,0xde,0xe9]
308          vpmaxub %zmm25, %zmm18, %zmm29 {%k7} {z}
309
310// CHECK: vpmaxub (%rcx), %zmm18, %zmm29
311// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xde,0x29]
312          vpmaxub (%rcx), %zmm18, %zmm29
313
314// CHECK: vpmaxub 291(%rax,%r14,8), %zmm18, %zmm29
315// CHECK:  encoding: [0x62,0x21,0x6d,0x40,0xde,0xac,0xf0,0x23,0x01,0x00,0x00]
316          vpmaxub 291(%rax,%r14,8), %zmm18, %zmm29
317
318// CHECK: vpmaxub 8128(%rdx), %zmm18, %zmm29
319// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xde,0x6a,0x7f]
320          vpmaxub 8128(%rdx), %zmm18, %zmm29
321
322// CHECK: vpmaxub 8192(%rdx), %zmm18, %zmm29
323// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xde,0xaa,0x00,0x20,0x00,0x00]
324          vpmaxub 8192(%rdx), %zmm18, %zmm29
325
326// CHECK: vpmaxub -8192(%rdx), %zmm18, %zmm29
327// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xde,0x6a,0x80]
328          vpmaxub -8192(%rdx), %zmm18, %zmm29
329
330// CHECK: vpmaxub -8256(%rdx), %zmm18, %zmm29
331// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xde,0xaa,0xc0,0xdf,0xff,0xff]
332          vpmaxub -8256(%rdx), %zmm18, %zmm29
333
334// CHECK: vpmaxuw %zmm23, %zmm27, %zmm21
335// CHECK:  encoding: [0x62,0xa2,0x25,0x40,0x3e,0xef]
336          vpmaxuw %zmm23, %zmm27, %zmm21
337
338// CHECK: vpmaxuw %zmm23, %zmm27, %zmm21 {%k3}
339// CHECK:  encoding: [0x62,0xa2,0x25,0x43,0x3e,0xef]
340          vpmaxuw %zmm23, %zmm27, %zmm21 {%k3}
341
342// CHECK: vpmaxuw %zmm23, %zmm27, %zmm21 {%k3} {z}
343// CHECK:  encoding: [0x62,0xa2,0x25,0xc3,0x3e,0xef]
344          vpmaxuw %zmm23, %zmm27, %zmm21 {%k3} {z}
345
346// CHECK: vpmaxuw (%rcx), %zmm27, %zmm21
347// CHECK:  encoding: [0x62,0xe2,0x25,0x40,0x3e,0x29]
348          vpmaxuw (%rcx), %zmm27, %zmm21
349
350// CHECK: vpmaxuw 291(%rax,%r14,8), %zmm27, %zmm21
351// CHECK:  encoding: [0x62,0xa2,0x25,0x40,0x3e,0xac,0xf0,0x23,0x01,0x00,0x00]
352          vpmaxuw 291(%rax,%r14,8), %zmm27, %zmm21
353
354// CHECK: vpmaxuw 8128(%rdx), %zmm27, %zmm21
355// CHECK:  encoding: [0x62,0xe2,0x25,0x40,0x3e,0x6a,0x7f]
356          vpmaxuw 8128(%rdx), %zmm27, %zmm21
357
358// CHECK: vpmaxuw 8192(%rdx), %zmm27, %zmm21
359// CHECK:  encoding: [0x62,0xe2,0x25,0x40,0x3e,0xaa,0x00,0x20,0x00,0x00]
360          vpmaxuw 8192(%rdx), %zmm27, %zmm21
361
362// CHECK: vpmaxuw -8192(%rdx), %zmm27, %zmm21
363// CHECK:  encoding: [0x62,0xe2,0x25,0x40,0x3e,0x6a,0x80]
364          vpmaxuw -8192(%rdx), %zmm27, %zmm21
365
366// CHECK: vpmaxuw -8256(%rdx), %zmm27, %zmm21
367// CHECK:  encoding: [0x62,0xe2,0x25,0x40,0x3e,0xaa,0xc0,0xdf,0xff,0xff]
368          vpmaxuw -8256(%rdx), %zmm27, %zmm21
369
370// CHECK: vpminsb %zmm25, %zmm22, %zmm28
371// CHECK:  encoding: [0x62,0x02,0x4d,0x40,0x38,0xe1]
372          vpminsb %zmm25, %zmm22, %zmm28
373
374// CHECK: vpminsb %zmm25, %zmm22, %zmm28 {%k6}
375// CHECK:  encoding: [0x62,0x02,0x4d,0x46,0x38,0xe1]
376          vpminsb %zmm25, %zmm22, %zmm28 {%k6}
377
378// CHECK: vpminsb %zmm25, %zmm22, %zmm28 {%k6} {z}
379// CHECK:  encoding: [0x62,0x02,0x4d,0xc6,0x38,0xe1]
380          vpminsb %zmm25, %zmm22, %zmm28 {%k6} {z}
381
382// CHECK: vpminsb (%rcx), %zmm22, %zmm28
383// CHECK:  encoding: [0x62,0x62,0x4d,0x40,0x38,0x21]
384          vpminsb (%rcx), %zmm22, %zmm28
385
386// CHECK: vpminsb 291(%rax,%r14,8), %zmm22, %zmm28
387// CHECK:  encoding: [0x62,0x22,0x4d,0x40,0x38,0xa4,0xf0,0x23,0x01,0x00,0x00]
388          vpminsb 291(%rax,%r14,8), %zmm22, %zmm28
389
390// CHECK: vpminsb 8128(%rdx), %zmm22, %zmm28
391// CHECK:  encoding: [0x62,0x62,0x4d,0x40,0x38,0x62,0x7f]
392          vpminsb 8128(%rdx), %zmm22, %zmm28
393
394// CHECK: vpminsb 8192(%rdx), %zmm22, %zmm28
395// CHECK:  encoding: [0x62,0x62,0x4d,0x40,0x38,0xa2,0x00,0x20,0x00,0x00]
396          vpminsb 8192(%rdx), %zmm22, %zmm28
397
398// CHECK: vpminsb -8192(%rdx), %zmm22, %zmm28
399// CHECK:  encoding: [0x62,0x62,0x4d,0x40,0x38,0x62,0x80]
400          vpminsb -8192(%rdx), %zmm22, %zmm28
401
402// CHECK: vpminsb -8256(%rdx), %zmm22, %zmm28
403// CHECK:  encoding: [0x62,0x62,0x4d,0x40,0x38,0xa2,0xc0,0xdf,0xff,0xff]
404          vpminsb -8256(%rdx), %zmm22, %zmm28
405
406// CHECK: vpminsw %zmm25, %zmm22, %zmm27
407// CHECK:  encoding: [0x62,0x01,0x4d,0x40,0xea,0xd9]
408          vpminsw %zmm25, %zmm22, %zmm27
409
410// CHECK: vpminsw %zmm25, %zmm22, %zmm27 {%k6}
411// CHECK:  encoding: [0x62,0x01,0x4d,0x46,0xea,0xd9]
412          vpminsw %zmm25, %zmm22, %zmm27 {%k6}
413
414// CHECK: vpminsw %zmm25, %zmm22, %zmm27 {%k6} {z}
415// CHECK:  encoding: [0x62,0x01,0x4d,0xc6,0xea,0xd9]
416          vpminsw %zmm25, %zmm22, %zmm27 {%k6} {z}
417
418// CHECK: vpminsw (%rcx), %zmm22, %zmm27
419// CHECK:  encoding: [0x62,0x61,0x4d,0x40,0xea,0x19]
420          vpminsw (%rcx), %zmm22, %zmm27
421
422// CHECK: vpminsw 291(%rax,%r14,8), %zmm22, %zmm27
423// CHECK:  encoding: [0x62,0x21,0x4d,0x40,0xea,0x9c,0xf0,0x23,0x01,0x00,0x00]
424          vpminsw 291(%rax,%r14,8), %zmm22, %zmm27
425
426// CHECK: vpminsw 8128(%rdx), %zmm22, %zmm27
427// CHECK:  encoding: [0x62,0x61,0x4d,0x40,0xea,0x5a,0x7f]
428          vpminsw 8128(%rdx), %zmm22, %zmm27
429
430// CHECK: vpminsw 8192(%rdx), %zmm22, %zmm27
431// CHECK:  encoding: [0x62,0x61,0x4d,0x40,0xea,0x9a,0x00,0x20,0x00,0x00]
432          vpminsw 8192(%rdx), %zmm22, %zmm27
433
434// CHECK: vpminsw -8192(%rdx), %zmm22, %zmm27
435// CHECK:  encoding: [0x62,0x61,0x4d,0x40,0xea,0x5a,0x80]
436          vpminsw -8192(%rdx), %zmm22, %zmm27
437
438// CHECK: vpminsw -8256(%rdx), %zmm22, %zmm27
439// CHECK:  encoding: [0x62,0x61,0x4d,0x40,0xea,0x9a,0xc0,0xdf,0xff,0xff]
440          vpminsw -8256(%rdx), %zmm22, %zmm27
441
442// CHECK: vpminub %zmm26, %zmm25, %zmm25
443// CHECK:  encoding: [0x62,0x01,0x35,0x40,0xda,0xca]
444          vpminub %zmm26, %zmm25, %zmm25
445
446// CHECK: vpminub %zmm26, %zmm25, %zmm25 {%k6}
447// CHECK:  encoding: [0x62,0x01,0x35,0x46,0xda,0xca]
448          vpminub %zmm26, %zmm25, %zmm25 {%k6}
449
450// CHECK: vpminub %zmm26, %zmm25, %zmm25 {%k6} {z}
451// CHECK:  encoding: [0x62,0x01,0x35,0xc6,0xda,0xca]
452          vpminub %zmm26, %zmm25, %zmm25 {%k6} {z}
453
454// CHECK: vpminub (%rcx), %zmm25, %zmm25
455// CHECK:  encoding: [0x62,0x61,0x35,0x40,0xda,0x09]
456          vpminub (%rcx), %zmm25, %zmm25
457
458// CHECK: vpminub 291(%rax,%r14,8), %zmm25, %zmm25
459// CHECK:  encoding: [0x62,0x21,0x35,0x40,0xda,0x8c,0xf0,0x23,0x01,0x00,0x00]
460          vpminub 291(%rax,%r14,8), %zmm25, %zmm25
461
462// CHECK: vpminub 8128(%rdx), %zmm25, %zmm25
463// CHECK:  encoding: [0x62,0x61,0x35,0x40,0xda,0x4a,0x7f]
464          vpminub 8128(%rdx), %zmm25, %zmm25
465
466// CHECK: vpminub 8192(%rdx), %zmm25, %zmm25
467// CHECK:  encoding: [0x62,0x61,0x35,0x40,0xda,0x8a,0x00,0x20,0x00,0x00]
468          vpminub 8192(%rdx), %zmm25, %zmm25
469
470// CHECK: vpminub -8192(%rdx), %zmm25, %zmm25
471// CHECK:  encoding: [0x62,0x61,0x35,0x40,0xda,0x4a,0x80]
472          vpminub -8192(%rdx), %zmm25, %zmm25
473
474// CHECK: vpminub -8256(%rdx), %zmm25, %zmm25
475// CHECK:  encoding: [0x62,0x61,0x35,0x40,0xda,0x8a,0xc0,0xdf,0xff,0xff]
476          vpminub -8256(%rdx), %zmm25, %zmm25
477
478// CHECK: vpminuw %zmm20, %zmm29, %zmm19
479// CHECK:  encoding: [0x62,0xa2,0x15,0x40,0x3a,0xdc]
480          vpminuw %zmm20, %zmm29, %zmm19
481
482// CHECK: vpminuw %zmm20, %zmm29, %zmm19 {%k7}
483// CHECK:  encoding: [0x62,0xa2,0x15,0x47,0x3a,0xdc]
484          vpminuw %zmm20, %zmm29, %zmm19 {%k7}
485
486// CHECK: vpminuw %zmm20, %zmm29, %zmm19 {%k7} {z}
487// CHECK:  encoding: [0x62,0xa2,0x15,0xc7,0x3a,0xdc]
488          vpminuw %zmm20, %zmm29, %zmm19 {%k7} {z}
489
490// CHECK: vpminuw (%rcx), %zmm29, %zmm19
491// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3a,0x19]
492          vpminuw (%rcx), %zmm29, %zmm19
493
494// CHECK: vpminuw 291(%rax,%r14,8), %zmm29, %zmm19
495// CHECK:  encoding: [0x62,0xa2,0x15,0x40,0x3a,0x9c,0xf0,0x23,0x01,0x00,0x00]
496          vpminuw 291(%rax,%r14,8), %zmm29, %zmm19
497
498// CHECK: vpminuw 8128(%rdx), %zmm29, %zmm19
499// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3a,0x5a,0x7f]
500          vpminuw 8128(%rdx), %zmm29, %zmm19
501
502// CHECK: vpminuw 8192(%rdx), %zmm29, %zmm19
503// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3a,0x9a,0x00,0x20,0x00,0x00]
504          vpminuw 8192(%rdx), %zmm29, %zmm19
505
506// CHECK: vpminuw -8192(%rdx), %zmm29, %zmm19
507// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3a,0x5a,0x80]
508          vpminuw -8192(%rdx), %zmm29, %zmm19
509
510// CHECK: vpminuw -8256(%rdx), %zmm29, %zmm19
511// CHECK:  encoding: [0x62,0xe2,0x15,0x40,0x3a,0x9a,0xc0,0xdf,0xff,0xff]
512          vpminuw -8256(%rdx), %zmm29, %zmm19
513
514// CHECK: vpmullw %zmm19, %zmm28, %zmm19
515// CHECK:  encoding: [0x62,0xa1,0x1d,0x40,0xd5,0xdb]
516          vpmullw %zmm19, %zmm28, %zmm19
517
518// CHECK: vpmullw %zmm19, %zmm28, %zmm19 {%k5}
519// CHECK:  encoding: [0x62,0xa1,0x1d,0x45,0xd5,0xdb]
520          vpmullw %zmm19, %zmm28, %zmm19 {%k5}
521
522// CHECK: vpmullw %zmm19, %zmm28, %zmm19 {%k5} {z}
523// CHECK:  encoding: [0x62,0xa1,0x1d,0xc5,0xd5,0xdb]
524          vpmullw %zmm19, %zmm28, %zmm19 {%k5} {z}
525
526// CHECK: vpmullw (%rcx), %zmm28, %zmm19
527// CHECK:  encoding: [0x62,0xe1,0x1d,0x40,0xd5,0x19]
528          vpmullw (%rcx), %zmm28, %zmm19
529
530// CHECK: vpmullw 291(%rax,%r14,8), %zmm28, %zmm19
531// CHECK:  encoding: [0x62,0xa1,0x1d,0x40,0xd5,0x9c,0xf0,0x23,0x01,0x00,0x00]
532          vpmullw 291(%rax,%r14,8), %zmm28, %zmm19
533
534// CHECK: vpmullw 8128(%rdx), %zmm28, %zmm19
535// CHECK:  encoding: [0x62,0xe1,0x1d,0x40,0xd5,0x5a,0x7f]
536          vpmullw 8128(%rdx), %zmm28, %zmm19
537
538// CHECK: vpmullw 8192(%rdx), %zmm28, %zmm19
539// CHECK:  encoding: [0x62,0xe1,0x1d,0x40,0xd5,0x9a,0x00,0x20,0x00,0x00]
540          vpmullw 8192(%rdx), %zmm28, %zmm19
541
542// CHECK: vpmullw -8192(%rdx), %zmm28, %zmm19
543// CHECK:  encoding: [0x62,0xe1,0x1d,0x40,0xd5,0x5a,0x80]
544          vpmullw -8192(%rdx), %zmm28, %zmm19
545
546// CHECK: vpmullw -8256(%rdx), %zmm28, %zmm19
547// CHECK:  encoding: [0x62,0xe1,0x1d,0x40,0xd5,0x9a,0xc0,0xdf,0xff,0xff]
548          vpmullw -8256(%rdx), %zmm28, %zmm19
549
550// CHECK: vpsubb %zmm26, %zmm18, %zmm25
551// CHECK:  encoding: [0x62,0x01,0x6d,0x40,0xf8,0xca]
552          vpsubb %zmm26, %zmm18, %zmm25
553
554// CHECK: vpsubb %zmm26, %zmm18, %zmm25 {%k4}
555// CHECK:  encoding: [0x62,0x01,0x6d,0x44,0xf8,0xca]
556          vpsubb %zmm26, %zmm18, %zmm25 {%k4}
557
558// CHECK: vpsubb %zmm26, %zmm18, %zmm25 {%k4} {z}
559// CHECK:  encoding: [0x62,0x01,0x6d,0xc4,0xf8,0xca]
560          vpsubb %zmm26, %zmm18, %zmm25 {%k4} {z}
561
562// CHECK: vpsubb (%rcx), %zmm18, %zmm25
563// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xf8,0x09]
564          vpsubb (%rcx), %zmm18, %zmm25
565
566// CHECK: vpsubb 291(%rax,%r14,8), %zmm18, %zmm25
567// CHECK:  encoding: [0x62,0x21,0x6d,0x40,0xf8,0x8c,0xf0,0x23,0x01,0x00,0x00]
568          vpsubb 291(%rax,%r14,8), %zmm18, %zmm25
569
570// CHECK: vpsubb 8128(%rdx), %zmm18, %zmm25
571// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xf8,0x4a,0x7f]
572          vpsubb 8128(%rdx), %zmm18, %zmm25
573
574// CHECK: vpsubb 8192(%rdx), %zmm18, %zmm25
575// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xf8,0x8a,0x00,0x20,0x00,0x00]
576          vpsubb 8192(%rdx), %zmm18, %zmm25
577
578// CHECK: vpsubb -8192(%rdx), %zmm18, %zmm25
579// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xf8,0x4a,0x80]
580          vpsubb -8192(%rdx), %zmm18, %zmm25
581
582// CHECK: vpsubb -8256(%rdx), %zmm18, %zmm25
583// CHECK:  encoding: [0x62,0x61,0x6d,0x40,0xf8,0x8a,0xc0,0xdf,0xff,0xff]
584          vpsubb -8256(%rdx), %zmm18, %zmm25
585
586// CHECK: vpsubw %zmm24, %zmm24, %zmm17
587// CHECK:  encoding: [0x62,0x81,0x3d,0x40,0xf9,0xc8]
588          vpsubw %zmm24, %zmm24, %zmm17
589
590// CHECK: vpsubw %zmm24, %zmm24, %zmm17 {%k4}
591// CHECK:  encoding: [0x62,0x81,0x3d,0x44,0xf9,0xc8]
592          vpsubw %zmm24, %zmm24, %zmm17 {%k4}
593
594// CHECK: vpsubw %zmm24, %zmm24, %zmm17 {%k4} {z}
595// CHECK:  encoding: [0x62,0x81,0x3d,0xc4,0xf9,0xc8]
596          vpsubw %zmm24, %zmm24, %zmm17 {%k4} {z}
597
598// CHECK: vpsubw (%rcx), %zmm24, %zmm17
599// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xf9,0x09]
600          vpsubw (%rcx), %zmm24, %zmm17
601
602// CHECK: vpsubw 291(%rax,%r14,8), %zmm24, %zmm17
603// CHECK:  encoding: [0x62,0xa1,0x3d,0x40,0xf9,0x8c,0xf0,0x23,0x01,0x00,0x00]
604          vpsubw 291(%rax,%r14,8), %zmm24, %zmm17
605
606// CHECK: vpsubw 8128(%rdx), %zmm24, %zmm17
607// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xf9,0x4a,0x7f]
608          vpsubw 8128(%rdx), %zmm24, %zmm17
609
610// CHECK: vpsubw 8192(%rdx), %zmm24, %zmm17
611// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xf9,0x8a,0x00,0x20,0x00,0x00]
612          vpsubw 8192(%rdx), %zmm24, %zmm17
613
614// CHECK: vpsubw -8192(%rdx), %zmm24, %zmm17
615// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xf9,0x4a,0x80]
616          vpsubw -8192(%rdx), %zmm24, %zmm17
617
618// CHECK: vpsubw -8256(%rdx), %zmm24, %zmm17
619// CHECK:  encoding: [0x62,0xe1,0x3d,0x40,0xf9,0x8a,0xc0,0xdf,0xff,0xff]
620          vpsubw -8256(%rdx), %zmm24, %zmm17
621
622// CHECK: vmovdqu8 %zmm19, %zmm29
623// CHECK:  encoding: [0x62,0x21,0x7f,0x48,0x6f,0xeb]
624          vmovdqu8 %zmm19, %zmm29
625
626// CHECK: vmovdqu8 %zmm19, %zmm29 {%k7}
627// CHECK:  encoding: [0x62,0x21,0x7f,0x4f,0x6f,0xeb]
628          vmovdqu8 %zmm19, %zmm29 {%k7}
629
630// CHECK: vmovdqu8 %zmm19, %zmm29 {%k7} {z}
631// CHECK:  encoding: [0x62,0x21,0x7f,0xcf,0x6f,0xeb]
632          vmovdqu8 %zmm19, %zmm29 {%k7} {z}
633
634// CHECK: vmovdqu8 (%rcx), %zmm29
635// CHECK:  encoding: [0x62,0x61,0x7f,0x48,0x6f,0x29]
636          vmovdqu8 (%rcx), %zmm29
637
638// CHECK: vmovdqu8 291(%rax,%r14,8), %zmm29
639// CHECK:  encoding: [0x62,0x21,0x7f,0x48,0x6f,0xac,0xf0,0x23,0x01,0x00,0x00]
640          vmovdqu8 291(%rax,%r14,8), %zmm29
641
642// CHECK: vmovdqu8 8128(%rdx), %zmm29
643// CHECK:  encoding: [0x62,0x61,0x7f,0x48,0x6f,0x6a,0x7f]
644          vmovdqu8 8128(%rdx), %zmm29
645
646// CHECK: vmovdqu8 8192(%rdx), %zmm29
647// CHECK:  encoding: [0x62,0x61,0x7f,0x48,0x6f,0xaa,0x00,0x20,0x00,0x00]
648          vmovdqu8 8192(%rdx), %zmm29
649
650// CHECK: vmovdqu8 -8192(%rdx), %zmm29
651// CHECK:  encoding: [0x62,0x61,0x7f,0x48,0x6f,0x6a,0x80]
652          vmovdqu8 -8192(%rdx), %zmm29
653
654// CHECK: vmovdqu8 -8256(%rdx), %zmm29
655// CHECK:  encoding: [0x62,0x61,0x7f,0x48,0x6f,0xaa,0xc0,0xdf,0xff,0xff]
656          vmovdqu8 -8256(%rdx), %zmm29
657
658// CHECK: vmovdqu16 %zmm18, %zmm17
659// CHECK:  encoding: [0x62,0xa1,0xff,0x48,0x6f,0xca]
660          vmovdqu16 %zmm18, %zmm17
661
662// CHECK: vmovdqu16 %zmm18, %zmm17 {%k3}
663// CHECK:  encoding: [0x62,0xa1,0xff,0x4b,0x6f,0xca]
664          vmovdqu16 %zmm18, %zmm17 {%k3}
665
666// CHECK: vmovdqu16 %zmm18, %zmm17 {%k3} {z}
667// CHECK:  encoding: [0x62,0xa1,0xff,0xcb,0x6f,0xca]
668          vmovdqu16 %zmm18, %zmm17 {%k3} {z}
669
670// CHECK: vmovdqu16 (%rcx), %zmm17
671// CHECK:  encoding: [0x62,0xe1,0xff,0x48,0x6f,0x09]
672          vmovdqu16 (%rcx), %zmm17
673
674// CHECK: vmovdqu16 291(%rax,%r14,8), %zmm17
675// CHECK:  encoding: [0x62,0xa1,0xff,0x48,0x6f,0x8c,0xf0,0x23,0x01,0x00,0x00]
676          vmovdqu16 291(%rax,%r14,8), %zmm17
677
678// CHECK: vmovdqu16 8128(%rdx), %zmm17
679// CHECK:  encoding: [0x62,0xe1,0xff,0x48,0x6f,0x4a,0x7f]
680          vmovdqu16 8128(%rdx), %zmm17
681
682// CHECK: vmovdqu16 8192(%rdx), %zmm17
683// CHECK:  encoding: [0x62,0xe1,0xff,0x48,0x6f,0x8a,0x00,0x20,0x00,0x00]
684          vmovdqu16 8192(%rdx), %zmm17
685
686// CHECK: vmovdqu16 -8192(%rdx), %zmm17
687// CHECK:  encoding: [0x62,0xe1,0xff,0x48,0x6f,0x4a,0x80]
688          vmovdqu16 -8192(%rdx), %zmm17
689
690// CHECK: vmovdqu16 -8256(%rdx), %zmm17
691// CHECK:  encoding: [0x62,0xe1,0xff,0x48,0x6f,0x8a,0xc0,0xdf,0xff,0xff]
692          vmovdqu16 -8256(%rdx), %zmm17
693
694// CHECK: kandq  %k7, %k5, %k5
695// CHECK:  encoding: [0xc4,0xe1,0xd4,0x41,0xef]
696          kandq  %k7, %k5, %k5
697
698// CHECK: kandd  %k4, %k5, %k5
699// CHECK:  encoding: [0xc4,0xe1,0xd5,0x41,0xec]
700          kandd  %k4, %k5, %k5
701
702// CHECK: kandnq %k4, %k5, %k2
703// CHECK:  encoding: [0xc4,0xe1,0xd4,0x42,0xd4]
704          kandnq %k4, %k5, %k2
705
706// CHECK: kandnd %k6, %k6, %k3
707// CHECK:  encoding: [0xc4,0xe1,0xcd,0x42,0xde]
708          kandnd %k6, %k6, %k3
709
710// CHECK: korq   %k4, %k5, %k4
711// CHECK:  encoding: [0xc4,0xe1,0xd4,0x45,0xe4]
712          korq   %k4, %k5, %k4
713
714// CHECK: kord   %k6, %k6, %k5
715// CHECK:  encoding: [0xc4,0xe1,0xcd,0x45,0xee]
716          kord   %k6, %k6, %k5
717
718// CHECK: kxnorq %k6, %k5, %k2
719// CHECK:  encoding: [0xc4,0xe1,0xd4,0x46,0xd6]
720          kxnorq %k6, %k5, %k2
721
722// CHECK: kxnord %k5, %k3, %k5
723// CHECK:  encoding: [0xc4,0xe1,0xe5,0x46,0xed]
724          kxnord %k5, %k3, %k5
725
726// CHECK: kxorq  %k4, %k3, %k2
727// CHECK:  encoding: [0xc4,0xe1,0xe4,0x47,0xd4]
728          kxorq  %k4, %k3, %k2
729
730// CHECK: kxord  %k6, %k5, %k2
731// CHECK:  encoding: [0xc4,0xe1,0xd5,0x47,0xd6]
732          kxord  %k6, %k5, %k2
733
734// CHECK: knotq  %k6, %k3
735// CHECK:  encoding: [0xc4,0xe1,0xf8,0x44,0xde]
736          knotq  %k6, %k3
737
738// CHECK: knotd  %k4, %k3
739// CHECK:  encoding: [0xc4,0xe1,0xf9,0x44,0xdc]
740          knotd  %k4, %k3
741
742// CHECK: kmovq  %k5, %k2
743// CHECK:  encoding: [0xc4,0xe1,0xf8,0x90,0xd5]
744          kmovq  %k5, %k2
745
746// CHECK: kmovq  (%rcx), %k2
747// CHECK:  encoding: [0xc4,0xe1,0xf8,0x90,0x11]
748          kmovq  (%rcx), %k2
749
750// CHECK: kmovq  291(%rax,%r14,8), %k2
751// CHECK:  encoding: [0xc4,0xa1,0xf8,0x90,0x94,0xf0,0x23,0x01,0x00,0x00]
752          kmovq  291(%rax,%r14,8), %k2
753
754// CHECK: kmovd  %k4, %k5
755// CHECK:  encoding: [0xc4,0xe1,0xf9,0x90,0xec]
756          kmovd  %k4, %k5
757
758// CHECK: kmovd  (%rcx), %k5
759// CHECK:  encoding: [0xc4,0xe1,0xf9,0x90,0x29]
760          kmovd  (%rcx), %k5
761
762// CHECK: kmovd  291(%rax,%r14,8), %k5
763// CHECK:  encoding: [0xc4,0xa1,0xf9,0x90,0xac,0xf0,0x23,0x01,0x00,0x00]
764          kmovd  291(%rax,%r14,8), %k5
765
766// CHECK: kmovq  %k3, (%rcx)
767// CHECK:  encoding: [0xc4,0xe1,0xf8,0x91,0x19]
768          kmovq  %k3, (%rcx)
769
770// CHECK: kmovq  %k3, 291(%rax,%r14,8)
771// CHECK:  encoding: [0xc4,0xa1,0xf8,0x91,0x9c,0xf0,0x23,0x01,0x00,0x00]
772          kmovq  %k3, 291(%rax,%r14,8)
773
774// CHECK: kmovd  %k3, (%rcx)
775// CHECK:  encoding: [0xc4,0xe1,0xf9,0x91,0x19]
776          kmovd  %k3, (%rcx)
777
778// CHECK: kmovd  %k3, 291(%rax,%r14,8)
779// CHECK:  encoding: [0xc4,0xa1,0xf9,0x91,0x9c,0xf0,0x23,0x01,0x00,0x00]
780          kmovd  %k3, 291(%rax,%r14,8)
781
782// CHECK: kmovq  %rax, %k2
783// CHECK:  encoding: [0xc4,0xe1,0xfb,0x92,0xd0]
784          kmovq  %rax, %k2
785
786// CHECK: kmovq  %r8, %k2
787// CHECK:  encoding: [0xc4,0xc1,0xfb,0x92,0xd0]
788          kmovq  %r8, %k2
789
790// CHECK: kmovd  %eax, %k4
791// CHECK:  encoding: [0xc5,0xfb,0x92,0xe0]
792          kmovd  %eax, %k4
793
794// CHECK: kmovd  %ebp, %k4
795// CHECK:  encoding: [0xc5,0xfb,0x92,0xe5]
796          kmovd  %ebp, %k4
797
798// CHECK: kmovd  %r13d, %k4
799// CHECK:  encoding: [0xc4,0xc1,0x7b,0x92,0xe5]
800          kmovd  %r13d, %k4
801
802// CHECK: kmovq  %k3, %rax
803// CHECK:  encoding: [0xc4,0xe1,0xfb,0x93,0xc3]
804          kmovq  %k3, %rax
805
806// CHECK: kmovq  %k3, %r8
807// CHECK:  encoding: [0xc4,0x61,0xfb,0x93,0xc3]
808          kmovq  %k3, %r8
809
810// CHECK: kmovd  %k5, %eax
811// CHECK:  encoding: [0xc5,0xfb,0x93,0xc5]
812          kmovd  %k5, %eax
813
814// CHECK: kmovd  %k5, %ebp
815// CHECK:  encoding: [0xc5,0xfb,0x93,0xed]
816          kmovd  %k5, %ebp
817
818// CHECK: kmovd  %k5, %r13d
819// CHECK:  encoding: [0xc5,0x7b,0x93,0xed]
820          kmovd  %k5, %r13d
821
822// CHECK: vmovdqu8 %zmm18, (%rcx)
823// CHECK:  encoding: [0x62,0xe1,0x7f,0x48,0x7f,0x11]
824          vmovdqu8 %zmm18, (%rcx)
825
826// CHECK: vmovdqu8 %zmm18, (%rcx) {%k3}
827// CHECK:  encoding: [0x62,0xe1,0x7f,0x4b,0x7f,0x11]
828          vmovdqu8 %zmm18, (%rcx) {%k3}
829
830// CHECK: vmovdqu8 %zmm18, 291(%rax,%r14,8)
831// CHECK:  encoding: [0x62,0xa1,0x7f,0x48,0x7f,0x94,0xf0,0x23,0x01,0x00,0x00]
832          vmovdqu8 %zmm18, 291(%rax,%r14,8)
833
834// CHECK: vmovdqu8 %zmm18, 8128(%rdx)
835// CHECK:  encoding: [0x62,0xe1,0x7f,0x48,0x7f,0x52,0x7f]
836          vmovdqu8 %zmm18, 8128(%rdx)
837
838// CHECK: vmovdqu8 %zmm18, 8192(%rdx)
839// CHECK:  encoding: [0x62,0xe1,0x7f,0x48,0x7f,0x92,0x00,0x20,0x00,0x00]
840          vmovdqu8 %zmm18, 8192(%rdx)
841
842// CHECK: vmovdqu8 %zmm18, -8192(%rdx)
843// CHECK:  encoding: [0x62,0xe1,0x7f,0x48,0x7f,0x52,0x80]
844          vmovdqu8 %zmm18, -8192(%rdx)
845
846// CHECK: vmovdqu8 %zmm18, -8256(%rdx)
847// CHECK:  encoding: [0x62,0xe1,0x7f,0x48,0x7f,0x92,0xc0,0xdf,0xff,0xff]
848          vmovdqu8 %zmm18, -8256(%rdx)
849
850// CHECK: vmovdqu16 %zmm28, (%rcx)
851// CHECK:  encoding: [0x62,0x61,0xff,0x48,0x7f,0x21]
852          vmovdqu16 %zmm28, (%rcx)
853
854// CHECK: vmovdqu16 %zmm28, (%rcx) {%k6}
855// CHECK:  encoding: [0x62,0x61,0xff,0x4e,0x7f,0x21]
856          vmovdqu16 %zmm28, (%rcx) {%k6}
857
858// CHECK: vmovdqu16 %zmm28, 291(%rax,%r14,8)
859// CHECK:  encoding: [0x62,0x21,0xff,0x48,0x7f,0xa4,0xf0,0x23,0x01,0x00,0x00]
860          vmovdqu16 %zmm28, 291(%rax,%r14,8)
861
862// CHECK: vmovdqu16 %zmm28, 8128(%rdx)
863// CHECK:  encoding: [0x62,0x61,0xff,0x48,0x7f,0x62,0x7f]
864          vmovdqu16 %zmm28, 8128(%rdx)
865
866// CHECK: vmovdqu16 %zmm28, 8192(%rdx)
867// CHECK:  encoding: [0x62,0x61,0xff,0x48,0x7f,0xa2,0x00,0x20,0x00,0x00]
868          vmovdqu16 %zmm28, 8192(%rdx)
869
870// CHECK: vmovdqu16 %zmm28, -8192(%rdx)
871// CHECK:  encoding: [0x62,0x61,0xff,0x48,0x7f,0x62,0x80]
872          vmovdqu16 %zmm28, -8192(%rdx)
873
874// CHECK: vmovdqu16 %zmm28, -8256(%rdx)
875// CHECK:  encoding: [0x62,0x61,0xff,0x48,0x7f,0xa2,0xc0,0xdf,0xff,0xff]
876          vmovdqu16 %zmm28, -8256(%rdx)
877
878
879// CHECK: vpcmpb $171, %zmm25, %zmm26, %k3
880// CHECK:  encoding: [0x62,0x93,0x2d,0x40,0x3f,0xd9,0xab]
881          vpcmpb $171, %zmm25, %zmm26, %k3
882
883// CHECK: vpcmpb $171, %zmm25, %zmm26, %k3 {%k7}
884// CHECK:  encoding: [0x62,0x93,0x2d,0x47,0x3f,0xd9,0xab]
885          vpcmpb $171, %zmm25, %zmm26, %k3 {%k7}
886
887// CHECK: vpcmpb $123, %zmm25, %zmm26, %k3
888// CHECK:  encoding: [0x62,0x93,0x2d,0x40,0x3f,0xd9,0x7b]
889          vpcmpb $123, %zmm25, %zmm26, %k3
890
891// CHECK: vpcmpb $123, (%rcx), %zmm26, %k3
892// CHECK:  encoding: [0x62,0xf3,0x2d,0x40,0x3f,0x19,0x7b]
893          vpcmpb $123, (%rcx), %zmm26, %k3
894
895// CHECK: vpcmpb $123, 291(%rax,%r14,8), %zmm26, %k3
896// CHECK:  encoding: [0x62,0xb3,0x2d,0x40,0x3f,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
897          vpcmpb $123, 291(%rax,%r14,8), %zmm26, %k3
898
899// CHECK: vpcmpb $123, 8128(%rdx), %zmm26, %k3
900// CHECK:  encoding: [0x62,0xf3,0x2d,0x40,0x3f,0x5a,0x7f,0x7b]
901          vpcmpb $123, 8128(%rdx), %zmm26, %k3
902
903// CHECK: vpcmpb $123, 8192(%rdx), %zmm26, %k3
904// CHECK:  encoding: [0x62,0xf3,0x2d,0x40,0x3f,0x9a,0x00,0x20,0x00,0x00,0x7b]
905          vpcmpb $123, 8192(%rdx), %zmm26, %k3
906
907// CHECK: vpcmpb $123, -8192(%rdx), %zmm26, %k3
908// CHECK:  encoding: [0x62,0xf3,0x2d,0x40,0x3f,0x5a,0x80,0x7b]
909          vpcmpb $123, -8192(%rdx), %zmm26, %k3
910
911// CHECK: vpcmpb $123, -8256(%rdx), %zmm26, %k3
912// CHECK:  encoding: [0x62,0xf3,0x2d,0x40,0x3f,0x9a,0xc0,0xdf,0xff,0xff,0x7b]
913          vpcmpb $123, -8256(%rdx), %zmm26, %k3
914
915// CHECK: vpcmpw $171, %zmm25, %zmm29, %k3
916// CHECK:  encoding: [0x62,0x93,0x95,0x40,0x3f,0xd9,0xab]
917          vpcmpw $171, %zmm25, %zmm29, %k3
918
919// CHECK: vpcmpw $171, %zmm25, %zmm29, %k3 {%k6}
920// CHECK:  encoding: [0x62,0x93,0x95,0x46,0x3f,0xd9,0xab]
921          vpcmpw $171, %zmm25, %zmm29, %k3 {%k6}
922
923// CHECK: vpcmpw $123, %zmm25, %zmm29, %k3
924// CHECK:  encoding: [0x62,0x93,0x95,0x40,0x3f,0xd9,0x7b]
925          vpcmpw $123, %zmm25, %zmm29, %k3
926
927// CHECK: vpcmpw $123, (%rcx), %zmm29, %k3
928// CHECK:  encoding: [0x62,0xf3,0x95,0x40,0x3f,0x19,0x7b]
929          vpcmpw $123, (%rcx), %zmm29, %k3
930
931// CHECK: vpcmpw $123, 291(%rax,%r14,8), %zmm29, %k3
932// CHECK:  encoding: [0x62,0xb3,0x95,0x40,0x3f,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
933          vpcmpw $123, 291(%rax,%r14,8), %zmm29, %k3
934
935// CHECK: vpcmpw $123, 8128(%rdx), %zmm29, %k3
936// CHECK:  encoding: [0x62,0xf3,0x95,0x40,0x3f,0x5a,0x7f,0x7b]
937          vpcmpw $123, 8128(%rdx), %zmm29, %k3
938
939// CHECK: vpcmpw $123, 8192(%rdx), %zmm29, %k3
940// CHECK:  encoding: [0x62,0xf3,0x95,0x40,0x3f,0x9a,0x00,0x20,0x00,0x00,0x7b]
941          vpcmpw $123, 8192(%rdx), %zmm29, %k3
942
943// CHECK: vpcmpw $123, -8192(%rdx), %zmm29, %k3
944// CHECK:  encoding: [0x62,0xf3,0x95,0x40,0x3f,0x5a,0x80,0x7b]
945          vpcmpw $123, -8192(%rdx), %zmm29, %k3
946
947// CHECK: vpcmpw $123, -8256(%rdx), %zmm29, %k3
948// CHECK:  encoding: [0x62,0xf3,0x95,0x40,0x3f,0x9a,0xc0,0xdf,0xff,0xff,0x7b]
949          vpcmpw $123, -8256(%rdx), %zmm29, %k3
950
951// CHECK: vpcmpub $171, %zmm22, %zmm29, %k4
952// CHECK:  encoding: [0x62,0xb3,0x15,0x40,0x3e,0xe6,0xab]
953          vpcmpub $171, %zmm22, %zmm29, %k4
954
955// CHECK: vpcmpub $171, %zmm22, %zmm29, %k4 {%k7}
956// CHECK:  encoding: [0x62,0xb3,0x15,0x47,0x3e,0xe6,0xab]
957          vpcmpub $171, %zmm22, %zmm29, %k4 {%k7}
958
959// CHECK: vpcmpub $123, %zmm22, %zmm29, %k4
960// CHECK:  encoding: [0x62,0xb3,0x15,0x40,0x3e,0xe6,0x7b]
961          vpcmpub $123, %zmm22, %zmm29, %k4
962
963// CHECK: vpcmpub $123, (%rcx), %zmm29, %k4
964// CHECK:  encoding: [0x62,0xf3,0x15,0x40,0x3e,0x21,0x7b]
965          vpcmpub $123, (%rcx), %zmm29, %k4
966
967// CHECK: vpcmpub $123, 291(%rax,%r14,8), %zmm29, %k4
968// CHECK:  encoding: [0x62,0xb3,0x15,0x40,0x3e,0xa4,0xf0,0x23,0x01,0x00,0x00,0x7b]
969          vpcmpub $123, 291(%rax,%r14,8), %zmm29, %k4
970
971// CHECK: vpcmpub $123, 8128(%rdx), %zmm29, %k4
972// CHECK:  encoding: [0x62,0xf3,0x15,0x40,0x3e,0x62,0x7f,0x7b]
973          vpcmpub $123, 8128(%rdx), %zmm29, %k4
974
975// CHECK: vpcmpub $123, 8192(%rdx), %zmm29, %k4
976// CHECK:  encoding: [0x62,0xf3,0x15,0x40,0x3e,0xa2,0x00,0x20,0x00,0x00,0x7b]
977          vpcmpub $123, 8192(%rdx), %zmm29, %k4
978
979// CHECK: vpcmpub $123, -8192(%rdx), %zmm29, %k4
980// CHECK:  encoding: [0x62,0xf3,0x15,0x40,0x3e,0x62,0x80,0x7b]
981          vpcmpub $123, -8192(%rdx), %zmm29, %k4
982
983// CHECK: vpcmpub $123, -8256(%rdx), %zmm29, %k4
984// CHECK:  encoding: [0x62,0xf3,0x15,0x40,0x3e,0xa2,0xc0,0xdf,0xff,0xff,0x7b]
985          vpcmpub $123, -8256(%rdx), %zmm29, %k4
986
987// CHECK: vpcmpuw $171, %zmm22, %zmm22, %k4
988// CHECK:  encoding: [0x62,0xb3,0xcd,0x40,0x3e,0xe6,0xab]
989          vpcmpuw $171, %zmm22, %zmm22, %k4
990
991// CHECK: vpcmpuw $171, %zmm22, %zmm22, %k4 {%k7}
992// CHECK:  encoding: [0x62,0xb3,0xcd,0x47,0x3e,0xe6,0xab]
993          vpcmpuw $171, %zmm22, %zmm22, %k4 {%k7}
994
995// CHECK: vpcmpuw $123, %zmm22, %zmm22, %k4
996// CHECK:  encoding: [0x62,0xb3,0xcd,0x40,0x3e,0xe6,0x7b]
997          vpcmpuw $123, %zmm22, %zmm22, %k4
998
999// CHECK: vpcmpuw $123, (%rcx), %zmm22, %k4
1000// CHECK:  encoding: [0x62,0xf3,0xcd,0x40,0x3e,0x21,0x7b]
1001          vpcmpuw $123, (%rcx), %zmm22, %k4
1002
1003// CHECK: vpcmpuw $123, 291(%rax,%r14,8), %zmm22, %k4
1004// CHECK:  encoding: [0x62,0xb3,0xcd,0x40,0x3e,0xa4,0xf0,0x23,0x01,0x00,0x00,0x7b]
1005          vpcmpuw $123, 291(%rax,%r14,8), %zmm22, %k4
1006
1007// CHECK: vpcmpuw $123, 8128(%rdx), %zmm22, %k4
1008// CHECK:  encoding: [0x62,0xf3,0xcd,0x40,0x3e,0x62,0x7f,0x7b]
1009          vpcmpuw $123, 8128(%rdx), %zmm22, %k4
1010
1011// CHECK: vpcmpuw $123, 8192(%rdx), %zmm22, %k4
1012// CHECK:  encoding: [0x62,0xf3,0xcd,0x40,0x3e,0xa2,0x00,0x20,0x00,0x00,0x7b]
1013          vpcmpuw $123, 8192(%rdx), %zmm22, %k4
1014
1015// CHECK: vpcmpuw $123, -8192(%rdx), %zmm22, %k4
1016// CHECK:  encoding: [0x62,0xf3,0xcd,0x40,0x3e,0x62,0x80,0x7b]
1017          vpcmpuw $123, -8192(%rdx), %zmm22, %k4
1018
1019// CHECK: vpcmpuw $123, -8256(%rdx), %zmm22, %k4
1020// CHECK:  encoding: [0x62,0xf3,0xcd,0x40,0x3e,0xa2,0xc0,0xdf,0xff,0xff,0x7b]
1021          vpcmpuw $123, -8256(%rdx), %zmm22, %k4
1022