[x86 asm] allow fwait alias in both At&t and Intel modes (PR21208)
[oota-llvm.git] / test / MC / X86 / x86-64-avx512bw_vl.s
1 // RUN: llvm-mc -triple x86_64-unknown-unknown -mcpu=knl -mattr=+avx512bw -mattr=+avx512vl  --show-encoding %s | FileCheck %s
2
3 // CHECK: vpaddb %xmm22, %xmm17, %xmm26
4 // CHECK:  encoding: [0x62,0x21,0x75,0x00,0xfc,0xd6]
5           vpaddb %xmm22, %xmm17, %xmm26
6
7 // CHECK: vpaddb %xmm22, %xmm17, %xmm26 {%k5}
8 // CHECK:  encoding: [0x62,0x21,0x75,0x05,0xfc,0xd6]
9           vpaddb %xmm22, %xmm17, %xmm26 {%k5}
10
11 // CHECK: vpaddb %xmm22, %xmm17, %xmm26 {%k5} {z}
12 // CHECK:  encoding: [0x62,0x21,0x75,0x85,0xfc,0xd6]
13           vpaddb %xmm22, %xmm17, %xmm26 {%k5} {z}
14
15 // CHECK: vpaddb (%rcx), %xmm17, %xmm26
16 // CHECK:  encoding: [0x62,0x61,0x75,0x00,0xfc,0x11]
17           vpaddb (%rcx), %xmm17, %xmm26
18
19 // CHECK: vpaddb 291(%rax,%r14,8), %xmm17, %xmm26
20 // CHECK:  encoding: [0x62,0x21,0x75,0x00,0xfc,0x94,0xf0,0x23,0x01,0x00,0x00]
21           vpaddb 291(%rax,%r14,8), %xmm17, %xmm26
22
23 // CHECK: vpaddb 2032(%rdx), %xmm17, %xmm26
24 // CHECK:  encoding: [0x62,0x61,0x75,0x00,0xfc,0x52,0x7f]
25           vpaddb 2032(%rdx), %xmm17, %xmm26
26
27 // CHECK: vpaddb 2048(%rdx), %xmm17, %xmm26
28 // CHECK:  encoding: [0x62,0x61,0x75,0x00,0xfc,0x92,0x00,0x08,0x00,0x00]
29           vpaddb 2048(%rdx), %xmm17, %xmm26
30
31 // CHECK: vpaddb -2048(%rdx), %xmm17, %xmm26
32 // CHECK:  encoding: [0x62,0x61,0x75,0x00,0xfc,0x52,0x80]
33           vpaddb -2048(%rdx), %xmm17, %xmm26
34
35 // CHECK: vpaddb -2064(%rdx), %xmm17, %xmm26
36 // CHECK:  encoding: [0x62,0x61,0x75,0x00,0xfc,0x92,0xf0,0xf7,0xff,0xff]
37           vpaddb -2064(%rdx), %xmm17, %xmm26
38
39 // CHECK: vpaddb %ymm28, %ymm27, %ymm26
40 // CHECK:  encoding: [0x62,0x01,0x25,0x20,0xfc,0xd4]
41           vpaddb %ymm28, %ymm27, %ymm26
42
43 // CHECK: vpaddb %ymm28, %ymm27, %ymm26 {%k3}
44 // CHECK:  encoding: [0x62,0x01,0x25,0x23,0xfc,0xd4]
45           vpaddb %ymm28, %ymm27, %ymm26 {%k3}
46
47 // CHECK: vpaddb %ymm28, %ymm27, %ymm26 {%k3} {z}
48 // CHECK:  encoding: [0x62,0x01,0x25,0xa3,0xfc,0xd4]
49           vpaddb %ymm28, %ymm27, %ymm26 {%k3} {z}
50
51 // CHECK: vpaddb (%rcx), %ymm27, %ymm26
52 // CHECK:  encoding: [0x62,0x61,0x25,0x20,0xfc,0x11]
53           vpaddb (%rcx), %ymm27, %ymm26
54
55 // CHECK: vpaddb 291(%rax,%r14,8), %ymm27, %ymm26
56 // CHECK:  encoding: [0x62,0x21,0x25,0x20,0xfc,0x94,0xf0,0x23,0x01,0x00,0x00]
57           vpaddb 291(%rax,%r14,8), %ymm27, %ymm26
58
59 // CHECK: vpaddb 4064(%rdx), %ymm27, %ymm26
60 // CHECK:  encoding: [0x62,0x61,0x25,0x20,0xfc,0x52,0x7f]
61           vpaddb 4064(%rdx), %ymm27, %ymm26
62
63 // CHECK: vpaddb 4096(%rdx), %ymm27, %ymm26
64 // CHECK:  encoding: [0x62,0x61,0x25,0x20,0xfc,0x92,0x00,0x10,0x00,0x00]
65           vpaddb 4096(%rdx), %ymm27, %ymm26
66
67 // CHECK: vpaddb -4096(%rdx), %ymm27, %ymm26
68 // CHECK:  encoding: [0x62,0x61,0x25,0x20,0xfc,0x52,0x80]
69           vpaddb -4096(%rdx), %ymm27, %ymm26
70
71 // CHECK: vpaddb -4128(%rdx), %ymm27, %ymm26
72 // CHECK:  encoding: [0x62,0x61,0x25,0x20,0xfc,0x92,0xe0,0xef,0xff,0xff]
73           vpaddb -4128(%rdx), %ymm27, %ymm26
74
75 // CHECK: vpaddw %xmm18, %xmm17, %xmm18
76 // CHECK:  encoding: [0x62,0xa1,0x75,0x00,0xfd,0xd2]
77           vpaddw %xmm18, %xmm17, %xmm18
78
79 // CHECK: vpaddw %xmm18, %xmm17, %xmm18 {%k1}
80 // CHECK:  encoding: [0x62,0xa1,0x75,0x01,0xfd,0xd2]
81           vpaddw %xmm18, %xmm17, %xmm18 {%k1}
82
83 // CHECK: vpaddw %xmm18, %xmm17, %xmm18 {%k1} {z}
84 // CHECK:  encoding: [0x62,0xa1,0x75,0x81,0xfd,0xd2]
85           vpaddw %xmm18, %xmm17, %xmm18 {%k1} {z}
86
87 // CHECK: vpaddw (%rcx), %xmm17, %xmm18
88 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xfd,0x11]
89           vpaddw (%rcx), %xmm17, %xmm18
90
91 // CHECK: vpaddw 291(%rax,%r14,8), %xmm17, %xmm18
92 // CHECK:  encoding: [0x62,0xa1,0x75,0x00,0xfd,0x94,0xf0,0x23,0x01,0x00,0x00]
93           vpaddw 291(%rax,%r14,8), %xmm17, %xmm18
94
95 // CHECK: vpaddw 2032(%rdx), %xmm17, %xmm18
96 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xfd,0x52,0x7f]
97           vpaddw 2032(%rdx), %xmm17, %xmm18
98
99 // CHECK: vpaddw 2048(%rdx), %xmm17, %xmm18
100 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xfd,0x92,0x00,0x08,0x00,0x00]
101           vpaddw 2048(%rdx), %xmm17, %xmm18
102
103 // CHECK: vpaddw -2048(%rdx), %xmm17, %xmm18
104 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xfd,0x52,0x80]
105           vpaddw -2048(%rdx), %xmm17, %xmm18
106
107 // CHECK: vpaddw -2064(%rdx), %xmm17, %xmm18
108 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xfd,0x92,0xf0,0xf7,0xff,0xff]
109           vpaddw -2064(%rdx), %xmm17, %xmm18
110
111 // CHECK: vpaddw %ymm26, %ymm21, %ymm23
112 // CHECK:  encoding: [0x62,0x81,0x55,0x20,0xfd,0xfa]
113           vpaddw %ymm26, %ymm21, %ymm23
114
115 // CHECK: vpaddw %ymm26, %ymm21, %ymm23 {%k7}
116 // CHECK:  encoding: [0x62,0x81,0x55,0x27,0xfd,0xfa]
117           vpaddw %ymm26, %ymm21, %ymm23 {%k7}
118
119 // CHECK: vpaddw %ymm26, %ymm21, %ymm23 {%k7} {z}
120 // CHECK:  encoding: [0x62,0x81,0x55,0xa7,0xfd,0xfa]
121           vpaddw %ymm26, %ymm21, %ymm23 {%k7} {z}
122
123 // CHECK: vpaddw (%rcx), %ymm21, %ymm23
124 // CHECK:  encoding: [0x62,0xe1,0x55,0x20,0xfd,0x39]
125           vpaddw (%rcx), %ymm21, %ymm23
126
127 // CHECK: vpaddw 291(%rax,%r14,8), %ymm21, %ymm23
128 // CHECK:  encoding: [0x62,0xa1,0x55,0x20,0xfd,0xbc,0xf0,0x23,0x01,0x00,0x00]
129           vpaddw 291(%rax,%r14,8), %ymm21, %ymm23
130
131 // CHECK: vpaddw 4064(%rdx), %ymm21, %ymm23
132 // CHECK:  encoding: [0x62,0xe1,0x55,0x20,0xfd,0x7a,0x7f]
133           vpaddw 4064(%rdx), %ymm21, %ymm23
134
135 // CHECK: vpaddw 4096(%rdx), %ymm21, %ymm23
136 // CHECK:  encoding: [0x62,0xe1,0x55,0x20,0xfd,0xba,0x00,0x10,0x00,0x00]
137           vpaddw 4096(%rdx), %ymm21, %ymm23
138
139 // CHECK: vpaddw -4096(%rdx), %ymm21, %ymm23
140 // CHECK:  encoding: [0x62,0xe1,0x55,0x20,0xfd,0x7a,0x80]
141           vpaddw -4096(%rdx), %ymm21, %ymm23
142
143 // CHECK: vpaddw -4128(%rdx), %ymm21, %ymm23
144 // CHECK:  encoding: [0x62,0xe1,0x55,0x20,0xfd,0xba,0xe0,0xef,0xff,0xff]
145           vpaddw -4128(%rdx), %ymm21, %ymm23
146
147 // CHECK: vpcmpeqb %xmm21, %xmm21, %k4
148 // CHECK:  encoding: [0x62,0xb1,0x55,0x00,0x74,0xe5]
149           vpcmpeqb %xmm21, %xmm21, %k4
150
151 // CHECK: vpcmpeqb %xmm21, %xmm21, %k4 {%k3}
152 // CHECK:  encoding: [0x62,0xb1,0x55,0x03,0x74,0xe5]
153           vpcmpeqb %xmm21, %xmm21, %k4 {%k3}
154
155 // CHECK: vpcmpeqb (%rcx), %xmm21, %k4
156 // CHECK:  encoding: [0x62,0xf1,0x55,0x00,0x74,0x21]
157           vpcmpeqb (%rcx), %xmm21, %k4
158
159 // CHECK: vpcmpeqb 291(%rax,%r14,8), %xmm21, %k4
160 // CHECK:  encoding: [0x62,0xb1,0x55,0x00,0x74,0xa4,0xf0,0x23,0x01,0x00,0x00]
161           vpcmpeqb 291(%rax,%r14,8), %xmm21, %k4
162
163 // CHECK: vpcmpeqb 2032(%rdx), %xmm21, %k4
164 // CHECK:  encoding: [0x62,0xf1,0x55,0x00,0x74,0x62,0x7f]
165           vpcmpeqb 2032(%rdx), %xmm21, %k4
166
167 // CHECK: vpcmpeqb 2048(%rdx), %xmm21, %k4
168 // CHECK:  encoding: [0x62,0xf1,0x55,0x00,0x74,0xa2,0x00,0x08,0x00,0x00]
169           vpcmpeqb 2048(%rdx), %xmm21, %k4
170
171 // CHECK: vpcmpeqb -2048(%rdx), %xmm21, %k4
172 // CHECK:  encoding: [0x62,0xf1,0x55,0x00,0x74,0x62,0x80]
173           vpcmpeqb -2048(%rdx), %xmm21, %k4
174
175 // CHECK: vpcmpeqb -2064(%rdx), %xmm21, %k4
176 // CHECK:  encoding: [0x62,0xf1,0x55,0x00,0x74,0xa2,0xf0,0xf7,0xff,0xff]
177           vpcmpeqb -2064(%rdx), %xmm21, %k4
178
179 // CHECK: vpcmpeqb %ymm18, %ymm21, %k4
180 // CHECK:  encoding: [0x62,0xb1,0x55,0x20,0x74,0xe2]
181           vpcmpeqb %ymm18, %ymm21, %k4
182
183 // CHECK: vpcmpeqb %ymm18, %ymm21, %k4 {%k1}
184 // CHECK:  encoding: [0x62,0xb1,0x55,0x21,0x74,0xe2]
185           vpcmpeqb %ymm18, %ymm21, %k4 {%k1}
186
187 // CHECK: vpcmpeqb (%rcx), %ymm21, %k4
188 // CHECK:  encoding: [0x62,0xf1,0x55,0x20,0x74,0x21]
189           vpcmpeqb (%rcx), %ymm21, %k4
190
191 // CHECK: vpcmpeqb 291(%rax,%r14,8), %ymm21, %k4
192 // CHECK:  encoding: [0x62,0xb1,0x55,0x20,0x74,0xa4,0xf0,0x23,0x01,0x00,0x00]
193           vpcmpeqb 291(%rax,%r14,8), %ymm21, %k4
194
195 // CHECK: vpcmpeqb 4064(%rdx), %ymm21, %k4
196 // CHECK:  encoding: [0x62,0xf1,0x55,0x20,0x74,0x62,0x7f]
197           vpcmpeqb 4064(%rdx), %ymm21, %k4
198
199 // CHECK: vpcmpeqb 4096(%rdx), %ymm21, %k4
200 // CHECK:  encoding: [0x62,0xf1,0x55,0x20,0x74,0xa2,0x00,0x10,0x00,0x00]
201           vpcmpeqb 4096(%rdx), %ymm21, %k4
202
203 // CHECK: vpcmpeqb -4096(%rdx), %ymm21, %k4
204 // CHECK:  encoding: [0x62,0xf1,0x55,0x20,0x74,0x62,0x80]
205           vpcmpeqb -4096(%rdx), %ymm21, %k4
206
207 // CHECK: vpcmpeqb -4128(%rdx), %ymm21, %k4
208 // CHECK:  encoding: [0x62,0xf1,0x55,0x20,0x74,0xa2,0xe0,0xef,0xff,0xff]
209           vpcmpeqb -4128(%rdx), %ymm21, %k4
210
211 // CHECK: vpcmpeqw %xmm27, %xmm30, %k3
212 // CHECK:  encoding: [0x62,0x91,0x0d,0x00,0x75,0xdb]
213           vpcmpeqw %xmm27, %xmm30, %k3
214
215 // CHECK: vpcmpeqw %xmm27, %xmm30, %k3 {%k1}
216 // CHECK:  encoding: [0x62,0x91,0x0d,0x01,0x75,0xdb]
217           vpcmpeqw %xmm27, %xmm30, %k3 {%k1}
218
219 // CHECK: vpcmpeqw (%rcx), %xmm30, %k3
220 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x75,0x19]
221           vpcmpeqw (%rcx), %xmm30, %k3
222
223 // CHECK: vpcmpeqw 291(%rax,%r14,8), %xmm30, %k3
224 // CHECK:  encoding: [0x62,0xb1,0x0d,0x00,0x75,0x9c,0xf0,0x23,0x01,0x00,0x00]
225           vpcmpeqw 291(%rax,%r14,8), %xmm30, %k3
226
227 // CHECK: vpcmpeqw 2032(%rdx), %xmm30, %k3
228 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x75,0x5a,0x7f]
229           vpcmpeqw 2032(%rdx), %xmm30, %k3
230
231 // CHECK: vpcmpeqw 2048(%rdx), %xmm30, %k3
232 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x75,0x9a,0x00,0x08,0x00,0x00]
233           vpcmpeqw 2048(%rdx), %xmm30, %k3
234
235 // CHECK: vpcmpeqw -2048(%rdx), %xmm30, %k3
236 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x75,0x5a,0x80]
237           vpcmpeqw -2048(%rdx), %xmm30, %k3
238
239 // CHECK: vpcmpeqw -2064(%rdx), %xmm30, %k3
240 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x75,0x9a,0xf0,0xf7,0xff,0xff]
241           vpcmpeqw -2064(%rdx), %xmm30, %k3
242
243 // CHECK: vpcmpeqw %ymm29, %ymm20, %k2
244 // CHECK:  encoding: [0x62,0x91,0x5d,0x20,0x75,0xd5]
245           vpcmpeqw %ymm29, %ymm20, %k2
246
247 // CHECK: vpcmpeqw %ymm29, %ymm20, %k2 {%k5}
248 // CHECK:  encoding: [0x62,0x91,0x5d,0x25,0x75,0xd5]
249           vpcmpeqw %ymm29, %ymm20, %k2 {%k5}
250
251 // CHECK: vpcmpeqw (%rcx), %ymm20, %k2
252 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x75,0x11]
253           vpcmpeqw (%rcx), %ymm20, %k2
254
255 // CHECK: vpcmpeqw 291(%rax,%r14,8), %ymm20, %k2
256 // CHECK:  encoding: [0x62,0xb1,0x5d,0x20,0x75,0x94,0xf0,0x23,0x01,0x00,0x00]
257           vpcmpeqw 291(%rax,%r14,8), %ymm20, %k2
258
259 // CHECK: vpcmpeqw 4064(%rdx), %ymm20, %k2
260 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x75,0x52,0x7f]
261           vpcmpeqw 4064(%rdx), %ymm20, %k2
262
263 // CHECK: vpcmpeqw 4096(%rdx), %ymm20, %k2
264 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x75,0x92,0x00,0x10,0x00,0x00]
265           vpcmpeqw 4096(%rdx), %ymm20, %k2
266
267 // CHECK: vpcmpeqw -4096(%rdx), %ymm20, %k2
268 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x75,0x52,0x80]
269           vpcmpeqw -4096(%rdx), %ymm20, %k2
270
271 // CHECK: vpcmpeqw -4128(%rdx), %ymm20, %k2
272 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x75,0x92,0xe0,0xef,0xff,0xff]
273           vpcmpeqw -4128(%rdx), %ymm20, %k2
274
275 // CHECK: vpcmpgtb %xmm17, %xmm30, %k3
276 // CHECK:  encoding: [0x62,0xb1,0x0d,0x00,0x64,0xd9]
277           vpcmpgtb %xmm17, %xmm30, %k3
278
279 // CHECK: vpcmpgtb %xmm17, %xmm30, %k3 {%k7}
280 // CHECK:  encoding: [0x62,0xb1,0x0d,0x07,0x64,0xd9]
281           vpcmpgtb %xmm17, %xmm30, %k3 {%k7}
282
283 // CHECK: vpcmpgtb (%rcx), %xmm30, %k3
284 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x64,0x19]
285           vpcmpgtb (%rcx), %xmm30, %k3
286
287 // CHECK: vpcmpgtb 291(%rax,%r14,8), %xmm30, %k3
288 // CHECK:  encoding: [0x62,0xb1,0x0d,0x00,0x64,0x9c,0xf0,0x23,0x01,0x00,0x00]
289           vpcmpgtb 291(%rax,%r14,8), %xmm30, %k3
290
291 // CHECK: vpcmpgtb 2032(%rdx), %xmm30, %k3
292 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x64,0x5a,0x7f]
293           vpcmpgtb 2032(%rdx), %xmm30, %k3
294
295 // CHECK: vpcmpgtb 2048(%rdx), %xmm30, %k3
296 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x64,0x9a,0x00,0x08,0x00,0x00]
297           vpcmpgtb 2048(%rdx), %xmm30, %k3
298
299 // CHECK: vpcmpgtb -2048(%rdx), %xmm30, %k3
300 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x64,0x5a,0x80]
301           vpcmpgtb -2048(%rdx), %xmm30, %k3
302
303 // CHECK: vpcmpgtb -2064(%rdx), %xmm30, %k3
304 // CHECK:  encoding: [0x62,0xf1,0x0d,0x00,0x64,0x9a,0xf0,0xf7,0xff,0xff]
305           vpcmpgtb -2064(%rdx), %xmm30, %k3
306
307 // CHECK: vpcmpgtb %ymm17, %ymm17, %k2
308 // CHECK:  encoding: [0x62,0xb1,0x75,0x20,0x64,0xd1]
309           vpcmpgtb %ymm17, %ymm17, %k2
310
311 // CHECK: vpcmpgtb %ymm17, %ymm17, %k2 {%k4}
312 // CHECK:  encoding: [0x62,0xb1,0x75,0x24,0x64,0xd1]
313           vpcmpgtb %ymm17, %ymm17, %k2 {%k4}
314
315 // CHECK: vpcmpgtb (%rcx), %ymm17, %k2
316 // CHECK:  encoding: [0x62,0xf1,0x75,0x20,0x64,0x11]
317           vpcmpgtb (%rcx), %ymm17, %k2
318
319 // CHECK: vpcmpgtb 291(%rax,%r14,8), %ymm17, %k2
320 // CHECK:  encoding: [0x62,0xb1,0x75,0x20,0x64,0x94,0xf0,0x23,0x01,0x00,0x00]
321           vpcmpgtb 291(%rax,%r14,8), %ymm17, %k2
322
323 // CHECK: vpcmpgtb 4064(%rdx), %ymm17, %k2
324 // CHECK:  encoding: [0x62,0xf1,0x75,0x20,0x64,0x52,0x7f]
325           vpcmpgtb 4064(%rdx), %ymm17, %k2
326
327 // CHECK: vpcmpgtb 4096(%rdx), %ymm17, %k2
328 // CHECK:  encoding: [0x62,0xf1,0x75,0x20,0x64,0x92,0x00,0x10,0x00,0x00]
329           vpcmpgtb 4096(%rdx), %ymm17, %k2
330
331 // CHECK: vpcmpgtb -4096(%rdx), %ymm17, %k2
332 // CHECK:  encoding: [0x62,0xf1,0x75,0x20,0x64,0x52,0x80]
333           vpcmpgtb -4096(%rdx), %ymm17, %k2
334
335 // CHECK: vpcmpgtb -4128(%rdx), %ymm17, %k2
336 // CHECK:  encoding: [0x62,0xf1,0x75,0x20,0x64,0x92,0xe0,0xef,0xff,0xff]
337           vpcmpgtb -4128(%rdx), %ymm17, %k2
338
339 // CHECK: vpcmpgtw %xmm22, %xmm28, %k2
340 // CHECK:  encoding: [0x62,0xb1,0x1d,0x00,0x65,0xd6]
341           vpcmpgtw %xmm22, %xmm28, %k2
342
343 // CHECK: vpcmpgtw %xmm22, %xmm28, %k2 {%k7}
344 // CHECK:  encoding: [0x62,0xb1,0x1d,0x07,0x65,0xd6]
345           vpcmpgtw %xmm22, %xmm28, %k2 {%k7}
346
347 // CHECK: vpcmpgtw (%rcx), %xmm28, %k2
348 // CHECK:  encoding: [0x62,0xf1,0x1d,0x00,0x65,0x11]
349           vpcmpgtw (%rcx), %xmm28, %k2
350
351 // CHECK: vpcmpgtw 291(%rax,%r14,8), %xmm28, %k2
352 // CHECK:  encoding: [0x62,0xb1,0x1d,0x00,0x65,0x94,0xf0,0x23,0x01,0x00,0x00]
353           vpcmpgtw 291(%rax,%r14,8), %xmm28, %k2
354
355 // CHECK: vpcmpgtw 2032(%rdx), %xmm28, %k2
356 // CHECK:  encoding: [0x62,0xf1,0x1d,0x00,0x65,0x52,0x7f]
357           vpcmpgtw 2032(%rdx), %xmm28, %k2
358
359 // CHECK: vpcmpgtw 2048(%rdx), %xmm28, %k2
360 // CHECK:  encoding: [0x62,0xf1,0x1d,0x00,0x65,0x92,0x00,0x08,0x00,0x00]
361           vpcmpgtw 2048(%rdx), %xmm28, %k2
362
363 // CHECK: vpcmpgtw -2048(%rdx), %xmm28, %k2
364 // CHECK:  encoding: [0x62,0xf1,0x1d,0x00,0x65,0x52,0x80]
365           vpcmpgtw -2048(%rdx), %xmm28, %k2
366
367 // CHECK: vpcmpgtw -2064(%rdx), %xmm28, %k2
368 // CHECK:  encoding: [0x62,0xf1,0x1d,0x00,0x65,0x92,0xf0,0xf7,0xff,0xff]
369           vpcmpgtw -2064(%rdx), %xmm28, %k2
370
371 // CHECK: vpcmpgtw %ymm26, %ymm20, %k5
372 // CHECK:  encoding: [0x62,0x91,0x5d,0x20,0x65,0xea]
373           vpcmpgtw %ymm26, %ymm20, %k5
374
375 // CHECK: vpcmpgtw %ymm26, %ymm20, %k5 {%k2}
376 // CHECK:  encoding: [0x62,0x91,0x5d,0x22,0x65,0xea]
377           vpcmpgtw %ymm26, %ymm20, %k5 {%k2}
378
379 // CHECK: vpcmpgtw (%rcx), %ymm20, %k5
380 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x65,0x29]
381           vpcmpgtw (%rcx), %ymm20, %k5
382
383 // CHECK: vpcmpgtw 291(%rax,%r14,8), %ymm20, %k5
384 // CHECK:  encoding: [0x62,0xb1,0x5d,0x20,0x65,0xac,0xf0,0x23,0x01,0x00,0x00]
385           vpcmpgtw 291(%rax,%r14,8), %ymm20, %k5
386
387 // CHECK: vpcmpgtw 4064(%rdx), %ymm20, %k5
388 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x65,0x6a,0x7f]
389           vpcmpgtw 4064(%rdx), %ymm20, %k5
390
391 // CHECK: vpcmpgtw 4096(%rdx), %ymm20, %k5
392 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x65,0xaa,0x00,0x10,0x00,0x00]
393           vpcmpgtw 4096(%rdx), %ymm20, %k5
394
395 // CHECK: vpcmpgtw -4096(%rdx), %ymm20, %k5
396 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x65,0x6a,0x80]
397           vpcmpgtw -4096(%rdx), %ymm20, %k5
398
399 // CHECK: vpcmpgtw -4128(%rdx), %ymm20, %k5
400 // CHECK:  encoding: [0x62,0xf1,0x5d,0x20,0x65,0xaa,0xe0,0xef,0xff,0xff]
401           vpcmpgtw -4128(%rdx), %ymm20, %k5
402
403 // CHECK: vpcmpb $171, %xmm17, %xmm30, %k3
404 // CHECK:  encoding: [0x62,0xb3,0x0d,0x00,0x3f,0xd9,0xab]
405           vpcmpb $171, %xmm17, %xmm30, %k3
406
407 // CHECK: vpcmpb $171, %xmm17, %xmm30, %k3 {%k1}
408 // CHECK:  encoding: [0x62,0xb3,0x0d,0x01,0x3f,0xd9,0xab]
409           vpcmpb $171, %xmm17, %xmm30, %k3 {%k1}
410
411 // CHECK: vpcmpb $123, %xmm17, %xmm30, %k3
412 // CHECK:  encoding: [0x62,0xb3,0x0d,0x00,0x3f,0xd9,0x7b]
413           vpcmpb $123, %xmm17, %xmm30, %k3
414
415 // CHECK: vpcmpb $123, (%rcx), %xmm30, %k3
416 // CHECK:  encoding: [0x62,0xf3,0x0d,0x00,0x3f,0x19,0x7b]
417           vpcmpb $123, (%rcx), %xmm30, %k3
418
419 // CHECK: vpcmpb $123, 291(%rax,%r14,8), %xmm30, %k3
420 // CHECK:  encoding: [0x62,0xb3,0x0d,0x00,0x3f,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
421           vpcmpb $123, 291(%rax,%r14,8), %xmm30, %k3
422
423 // CHECK: vpcmpb $123, 2032(%rdx), %xmm30, %k3
424 // CHECK:  encoding: [0x62,0xf3,0x0d,0x00,0x3f,0x5a,0x7f,0x7b]
425           vpcmpb $123, 2032(%rdx), %xmm30, %k3
426
427 // CHECK: vpcmpb $123, 2048(%rdx), %xmm30, %k3
428 // CHECK:  encoding: [0x62,0xf3,0x0d,0x00,0x3f,0x9a,0x00,0x08,0x00,0x00,0x7b]
429           vpcmpb $123, 2048(%rdx), %xmm30, %k3
430
431 // CHECK: vpcmpb $123, -2048(%rdx), %xmm30, %k3
432 // CHECK:  encoding: [0x62,0xf3,0x0d,0x00,0x3f,0x5a,0x80,0x7b]
433           vpcmpb $123, -2048(%rdx), %xmm30, %k3
434
435 // CHECK: vpcmpb $123, -2064(%rdx), %xmm30, %k3
436 // CHECK:  encoding: [0x62,0xf3,0x0d,0x00,0x3f,0x9a,0xf0,0xf7,0xff,0xff,0x7b]
437           vpcmpb $123, -2064(%rdx), %xmm30, %k3
438
439 // CHECK: vpcmpb $171, %ymm19, %ymm19, %k5
440 // CHECK:  encoding: [0x62,0xb3,0x65,0x20,0x3f,0xeb,0xab]
441           vpcmpb $171, %ymm19, %ymm19, %k5
442
443 // CHECK: vpcmpb $171, %ymm19, %ymm19, %k5 {%k4}
444 // CHECK:  encoding: [0x62,0xb3,0x65,0x24,0x3f,0xeb,0xab]
445           vpcmpb $171, %ymm19, %ymm19, %k5 {%k4}
446
447 // CHECK: vpcmpb $123, %ymm19, %ymm19, %k5
448 // CHECK:  encoding: [0x62,0xb3,0x65,0x20,0x3f,0xeb,0x7b]
449           vpcmpb $123, %ymm19, %ymm19, %k5
450
451 // CHECK: vpcmpb $123, (%rcx), %ymm19, %k5
452 // CHECK:  encoding: [0x62,0xf3,0x65,0x20,0x3f,0x29,0x7b]
453           vpcmpb $123, (%rcx), %ymm19, %k5
454
455 // CHECK: vpcmpb $123, 291(%rax,%r14,8), %ymm19, %k5
456 // CHECK:  encoding: [0x62,0xb3,0x65,0x20,0x3f,0xac,0xf0,0x23,0x01,0x00,0x00,0x7b]
457           vpcmpb $123, 291(%rax,%r14,8), %ymm19, %k5
458
459 // CHECK: vpcmpb $123, 4064(%rdx), %ymm19, %k5
460 // CHECK:  encoding: [0x62,0xf3,0x65,0x20,0x3f,0x6a,0x7f,0x7b]
461           vpcmpb $123, 4064(%rdx), %ymm19, %k5
462
463 // CHECK: vpcmpb $123, 4096(%rdx), %ymm19, %k5
464 // CHECK:  encoding: [0x62,0xf3,0x65,0x20,0x3f,0xaa,0x00,0x10,0x00,0x00,0x7b]
465           vpcmpb $123, 4096(%rdx), %ymm19, %k5
466
467 // CHECK: vpcmpb $123, -4096(%rdx), %ymm19, %k5
468 // CHECK:  encoding: [0x62,0xf3,0x65,0x20,0x3f,0x6a,0x80,0x7b]
469           vpcmpb $123, -4096(%rdx), %ymm19, %k5
470
471 // CHECK: vpcmpb $123, -4128(%rdx), %ymm19, %k5
472 // CHECK:  encoding: [0x62,0xf3,0x65,0x20,0x3f,0xaa,0xe0,0xef,0xff,0xff,0x7b]
473           vpcmpb $123, -4128(%rdx), %ymm19, %k5
474
475 // CHECK: vpcmpw $171, %xmm22, %xmm30, %k3
476 // CHECK:  encoding: [0x62,0xb3,0x8d,0x00,0x3f,0xde,0xab]
477           vpcmpw $171, %xmm22, %xmm30, %k3
478
479 // CHECK: vpcmpw $171, %xmm22, %xmm30, %k3 {%k6}
480 // CHECK:  encoding: [0x62,0xb3,0x8d,0x06,0x3f,0xde,0xab]
481           vpcmpw $171, %xmm22, %xmm30, %k3 {%k6}
482
483 // CHECK: vpcmpw $123, %xmm22, %xmm30, %k3
484 // CHECK:  encoding: [0x62,0xb3,0x8d,0x00,0x3f,0xde,0x7b]
485           vpcmpw $123, %xmm22, %xmm30, %k3
486
487 // CHECK: vpcmpw $123, (%rcx), %xmm30, %k3
488 // CHECK:  encoding: [0x62,0xf3,0x8d,0x00,0x3f,0x19,0x7b]
489           vpcmpw $123, (%rcx), %xmm30, %k3
490
491 // CHECK: vpcmpw $123, 291(%rax,%r14,8), %xmm30, %k3
492 // CHECK:  encoding: [0x62,0xb3,0x8d,0x00,0x3f,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
493           vpcmpw $123, 291(%rax,%r14,8), %xmm30, %k3
494
495 // CHECK: vpcmpw $123, 2032(%rdx), %xmm30, %k3
496 // CHECK:  encoding: [0x62,0xf3,0x8d,0x00,0x3f,0x5a,0x7f,0x7b]
497           vpcmpw $123, 2032(%rdx), %xmm30, %k3
498
499 // CHECK: vpcmpw $123, 2048(%rdx), %xmm30, %k3
500 // CHECK:  encoding: [0x62,0xf3,0x8d,0x00,0x3f,0x9a,0x00,0x08,0x00,0x00,0x7b]
501           vpcmpw $123, 2048(%rdx), %xmm30, %k3
502
503 // CHECK: vpcmpw $123, -2048(%rdx), %xmm30, %k3
504 // CHECK:  encoding: [0x62,0xf3,0x8d,0x00,0x3f,0x5a,0x80,0x7b]
505           vpcmpw $123, -2048(%rdx), %xmm30, %k3
506
507 // CHECK: vpcmpw $123, -2064(%rdx), %xmm30, %k3
508 // CHECK:  encoding: [0x62,0xf3,0x8d,0x00,0x3f,0x9a,0xf0,0xf7,0xff,0xff,0x7b]
509           vpcmpw $123, -2064(%rdx), %xmm30, %k3
510
511 // CHECK: vpcmpw $171, %ymm18, %ymm26, %k3
512 // CHECK:  encoding: [0x62,0xb3,0xad,0x20,0x3f,0xda,0xab]
513           vpcmpw $171, %ymm18, %ymm26, %k3
514
515 // CHECK: vpcmpw $171, %ymm18, %ymm26, %k3 {%k3}
516 // CHECK:  encoding: [0x62,0xb3,0xad,0x23,0x3f,0xda,0xab]
517           vpcmpw $171, %ymm18, %ymm26, %k3 {%k3}
518
519 // CHECK: vpcmpw $123, %ymm18, %ymm26, %k3
520 // CHECK:  encoding: [0x62,0xb3,0xad,0x20,0x3f,0xda,0x7b]
521           vpcmpw $123, %ymm18, %ymm26, %k3
522
523 // CHECK: vpcmpw $123, (%rcx), %ymm26, %k3
524 // CHECK:  encoding: [0x62,0xf3,0xad,0x20,0x3f,0x19,0x7b]
525           vpcmpw $123, (%rcx), %ymm26, %k3
526
527 // CHECK: vpcmpw $123, 291(%rax,%r14,8), %ymm26, %k3
528 // CHECK:  encoding: [0x62,0xb3,0xad,0x20,0x3f,0x9c,0xf0,0x23,0x01,0x00,0x00,0x7b]
529           vpcmpw $123, 291(%rax,%r14,8), %ymm26, %k3
530
531 // CHECK: vpcmpw $123, 4064(%rdx), %ymm26, %k3
532 // CHECK:  encoding: [0x62,0xf3,0xad,0x20,0x3f,0x5a,0x7f,0x7b]
533           vpcmpw $123, 4064(%rdx), %ymm26, %k3
534
535 // CHECK: vpcmpw $123, 4096(%rdx), %ymm26, %k3
536 // CHECK:  encoding: [0x62,0xf3,0xad,0x20,0x3f,0x9a,0x00,0x10,0x00,0x00,0x7b]
537           vpcmpw $123, 4096(%rdx), %ymm26, %k3
538
539 // CHECK: vpcmpw $123, -4096(%rdx), %ymm26, %k3
540 // CHECK:  encoding: [0x62,0xf3,0xad,0x20,0x3f,0x5a,0x80,0x7b]
541           vpcmpw $123, -4096(%rdx), %ymm26, %k3
542
543 // CHECK: vpcmpw $123, -4128(%rdx), %ymm26, %k3
544 // CHECK:  encoding: [0x62,0xf3,0xad,0x20,0x3f,0x9a,0xe0,0xef,0xff,0xff,0x7b]
545           vpcmpw $123, -4128(%rdx), %ymm26, %k3
546
547 // CHECK: vpcmpub $171, %xmm21, %xmm22, %k5
548 // CHECK:  encoding: [0x62,0xb3,0x4d,0x00,0x3e,0xed,0xab]
549           vpcmpub $171, %xmm21, %xmm22, %k5
550
551 // CHECK: vpcmpub $171, %xmm21, %xmm22, %k5 {%k3}
552 // CHECK:  encoding: [0x62,0xb3,0x4d,0x03,0x3e,0xed,0xab]
553           vpcmpub $171, %xmm21, %xmm22, %k5 {%k3}
554
555 // CHECK: vpcmpub $123, %xmm21, %xmm22, %k5
556 // CHECK:  encoding: [0x62,0xb3,0x4d,0x00,0x3e,0xed,0x7b]
557           vpcmpub $123, %xmm21, %xmm22, %k5
558
559 // CHECK: vpcmpub $123, (%rcx), %xmm22, %k5
560 // CHECK:  encoding: [0x62,0xf3,0x4d,0x00,0x3e,0x29,0x7b]
561           vpcmpub $123, (%rcx), %xmm22, %k5
562
563 // CHECK: vpcmpub $123, 291(%rax,%r14,8), %xmm22, %k5
564 // CHECK:  encoding: [0x62,0xb3,0x4d,0x00,0x3e,0xac,0xf0,0x23,0x01,0x00,0x00,0x7b]
565           vpcmpub $123, 291(%rax,%r14,8), %xmm22, %k5
566
567 // CHECK: vpcmpub $123, 2032(%rdx), %xmm22, %k5
568 // CHECK:  encoding: [0x62,0xf3,0x4d,0x00,0x3e,0x6a,0x7f,0x7b]
569           vpcmpub $123, 2032(%rdx), %xmm22, %k5
570
571 // CHECK: vpcmpub $123, 2048(%rdx), %xmm22, %k5
572 // CHECK:  encoding: [0x62,0xf3,0x4d,0x00,0x3e,0xaa,0x00,0x08,0x00,0x00,0x7b]
573           vpcmpub $123, 2048(%rdx), %xmm22, %k5
574
575 // CHECK: vpcmpub $123, -2048(%rdx), %xmm22, %k5
576 // CHECK:  encoding: [0x62,0xf3,0x4d,0x00,0x3e,0x6a,0x80,0x7b]
577           vpcmpub $123, -2048(%rdx), %xmm22, %k5
578
579 // CHECK: vpcmpub $123, -2064(%rdx), %xmm22, %k5
580 // CHECK:  encoding: [0x62,0xf3,0x4d,0x00,0x3e,0xaa,0xf0,0xf7,0xff,0xff,0x7b]
581           vpcmpub $123, -2064(%rdx), %xmm22, %k5
582
583 // CHECK: vpcmpub $171, %ymm21, %ymm23, %k2
584 // CHECK:  encoding: [0x62,0xb3,0x45,0x20,0x3e,0xd5,0xab]
585           vpcmpub $171, %ymm21, %ymm23, %k2
586
587 // CHECK: vpcmpub $171, %ymm21, %ymm23, %k2 {%k2}
588 // CHECK:  encoding: [0x62,0xb3,0x45,0x22,0x3e,0xd5,0xab]
589           vpcmpub $171, %ymm21, %ymm23, %k2 {%k2}
590
591 // CHECK: vpcmpub $123, %ymm21, %ymm23, %k2
592 // CHECK:  encoding: [0x62,0xb3,0x45,0x20,0x3e,0xd5,0x7b]
593           vpcmpub $123, %ymm21, %ymm23, %k2
594
595 // CHECK: vpcmpub $123, (%rcx), %ymm23, %k2
596 // CHECK:  encoding: [0x62,0xf3,0x45,0x20,0x3e,0x11,0x7b]
597           vpcmpub $123, (%rcx), %ymm23, %k2
598
599 // CHECK: vpcmpub $123, 291(%rax,%r14,8), %ymm23, %k2
600 // CHECK:  encoding: [0x62,0xb3,0x45,0x20,0x3e,0x94,0xf0,0x23,0x01,0x00,0x00,0x7b]
601           vpcmpub $123, 291(%rax,%r14,8), %ymm23, %k2
602
603 // CHECK: vpcmpub $123, 4064(%rdx), %ymm23, %k2
604 // CHECK:  encoding: [0x62,0xf3,0x45,0x20,0x3e,0x52,0x7f,0x7b]
605           vpcmpub $123, 4064(%rdx), %ymm23, %k2
606
607 // CHECK: vpcmpub $123, 4096(%rdx), %ymm23, %k2
608 // CHECK:  encoding: [0x62,0xf3,0x45,0x20,0x3e,0x92,0x00,0x10,0x00,0x00,0x7b]
609           vpcmpub $123, 4096(%rdx), %ymm23, %k2
610
611 // CHECK: vpcmpub $123, -4096(%rdx), %ymm23, %k2
612 // CHECK:  encoding: [0x62,0xf3,0x45,0x20,0x3e,0x52,0x80,0x7b]
613           vpcmpub $123, -4096(%rdx), %ymm23, %k2
614
615 // CHECK: vpcmpub $123, -4128(%rdx), %ymm23, %k2
616 // CHECK:  encoding: [0x62,0xf3,0x45,0x20,0x3e,0x92,0xe0,0xef,0xff,0xff,0x7b]
617           vpcmpub $123, -4128(%rdx), %ymm23, %k2
618
619 // CHECK: vpcmpuw $171, %xmm17, %xmm28, %k5
620 // CHECK:  encoding: [0x62,0xb3,0x9d,0x00,0x3e,0xe9,0xab]
621           vpcmpuw $171, %xmm17, %xmm28, %k5
622
623 // CHECK: vpcmpuw $171, %xmm17, %xmm28, %k5 {%k4}
624 // CHECK:  encoding: [0x62,0xb3,0x9d,0x04,0x3e,0xe9,0xab]
625           vpcmpuw $171, %xmm17, %xmm28, %k5 {%k4}
626
627 // CHECK: vpcmpuw $123, %xmm17, %xmm28, %k5
628 // CHECK:  encoding: [0x62,0xb3,0x9d,0x00,0x3e,0xe9,0x7b]
629           vpcmpuw $123, %xmm17, %xmm28, %k5
630
631 // CHECK: vpcmpuw $123, (%rcx), %xmm28, %k5
632 // CHECK:  encoding: [0x62,0xf3,0x9d,0x00,0x3e,0x29,0x7b]
633           vpcmpuw $123, (%rcx), %xmm28, %k5
634
635 // CHECK: vpcmpuw $123, 291(%rax,%r14,8), %xmm28, %k5
636 // CHECK:  encoding: [0x62,0xb3,0x9d,0x00,0x3e,0xac,0xf0,0x23,0x01,0x00,0x00,0x7b]
637           vpcmpuw $123, 291(%rax,%r14,8), %xmm28, %k5
638
639 // CHECK: vpcmpuw $123, 2032(%rdx), %xmm28, %k5
640 // CHECK:  encoding: [0x62,0xf3,0x9d,0x00,0x3e,0x6a,0x7f,0x7b]
641           vpcmpuw $123, 2032(%rdx), %xmm28, %k5
642
643 // CHECK: vpcmpuw $123, 2048(%rdx), %xmm28, %k5
644 // CHECK:  encoding: [0x62,0xf3,0x9d,0x00,0x3e,0xaa,0x00,0x08,0x00,0x00,0x7b]
645           vpcmpuw $123, 2048(%rdx), %xmm28, %k5
646
647 // CHECK: vpcmpuw $123, -2048(%rdx), %xmm28, %k5
648 // CHECK:  encoding: [0x62,0xf3,0x9d,0x00,0x3e,0x6a,0x80,0x7b]
649           vpcmpuw $123, -2048(%rdx), %xmm28, %k5
650
651 // CHECK: vpcmpuw $123, -2064(%rdx), %xmm28, %k5
652 // CHECK:  encoding: [0x62,0xf3,0x9d,0x00,0x3e,0xaa,0xf0,0xf7,0xff,0xff,0x7b]
653           vpcmpuw $123, -2064(%rdx), %xmm28, %k5
654
655 // CHECK: vpcmpuw $171, %ymm28, %ymm27, %k4
656 // CHECK:  encoding: [0x62,0x93,0xa5,0x20,0x3e,0xe4,0xab]
657           vpcmpuw $171, %ymm28, %ymm27, %k4
658
659 // CHECK: vpcmpuw $171, %ymm28, %ymm27, %k4 {%k2}
660 // CHECK:  encoding: [0x62,0x93,0xa5,0x22,0x3e,0xe4,0xab]
661           vpcmpuw $171, %ymm28, %ymm27, %k4 {%k2}
662
663 // CHECK: vpcmpuw $123, %ymm28, %ymm27, %k4
664 // CHECK:  encoding: [0x62,0x93,0xa5,0x20,0x3e,0xe4,0x7b]
665           vpcmpuw $123, %ymm28, %ymm27, %k4
666
667 // CHECK: vpcmpuw $123, (%rcx), %ymm27, %k4
668 // CHECK:  encoding: [0x62,0xf3,0xa5,0x20,0x3e,0x21,0x7b]
669           vpcmpuw $123, (%rcx), %ymm27, %k4
670
671 // CHECK: vpcmpuw $123, 291(%rax,%r14,8), %ymm27, %k4
672 // CHECK:  encoding: [0x62,0xb3,0xa5,0x20,0x3e,0xa4,0xf0,0x23,0x01,0x00,0x00,0x7b]
673           vpcmpuw $123, 291(%rax,%r14,8), %ymm27, %k4
674
675 // CHECK: vpcmpuw $123, 4064(%rdx), %ymm27, %k4
676 // CHECK:  encoding: [0x62,0xf3,0xa5,0x20,0x3e,0x62,0x7f,0x7b]
677           vpcmpuw $123, 4064(%rdx), %ymm27, %k4
678
679 // CHECK: vpcmpuw $123, 4096(%rdx), %ymm27, %k4
680 // CHECK:  encoding: [0x62,0xf3,0xa5,0x20,0x3e,0xa2,0x00,0x10,0x00,0x00,0x7b]
681           vpcmpuw $123, 4096(%rdx), %ymm27, %k4
682
683 // CHECK: vpcmpuw $123, -4096(%rdx), %ymm27, %k4
684 // CHECK:  encoding: [0x62,0xf3,0xa5,0x20,0x3e,0x62,0x80,0x7b]
685           vpcmpuw $123, -4096(%rdx), %ymm27, %k4
686
687 // CHECK: vpcmpuw $123, -4128(%rdx), %ymm27, %k4
688 // CHECK:  encoding: [0x62,0xf3,0xa5,0x20,0x3e,0xa2,0xe0,0xef,0xff,0xff,0x7b]
689           vpcmpuw $123, -4128(%rdx), %ymm27, %k4
690
691 // CHECK: vpmaxsb %xmm17, %xmm24, %xmm23
692 // CHECK:  encoding: [0x62,0xa2,0x3d,0x00,0x3c,0xf9]
693           vpmaxsb %xmm17, %xmm24, %xmm23
694
695 // CHECK: vpmaxsb %xmm17, %xmm24, %xmm23 {%k3}
696 // CHECK:  encoding: [0x62,0xa2,0x3d,0x03,0x3c,0xf9]
697           vpmaxsb %xmm17, %xmm24, %xmm23 {%k3}
698
699 // CHECK: vpmaxsb %xmm17, %xmm24, %xmm23 {%k3} {z}
700 // CHECK:  encoding: [0x62,0xa2,0x3d,0x83,0x3c,0xf9]
701           vpmaxsb %xmm17, %xmm24, %xmm23 {%k3} {z}
702
703 // CHECK: vpmaxsb (%rcx), %xmm24, %xmm23
704 // CHECK:  encoding: [0x62,0xe2,0x3d,0x00,0x3c,0x39]
705           vpmaxsb (%rcx), %xmm24, %xmm23
706
707 // CHECK: vpmaxsb 291(%rax,%r14,8), %xmm24, %xmm23
708 // CHECK:  encoding: [0x62,0xa2,0x3d,0x00,0x3c,0xbc,0xf0,0x23,0x01,0x00,0x00]
709           vpmaxsb 291(%rax,%r14,8), %xmm24, %xmm23
710
711 // CHECK: vpmaxsb 2032(%rdx), %xmm24, %xmm23
712 // CHECK:  encoding: [0x62,0xe2,0x3d,0x00,0x3c,0x7a,0x7f]
713           vpmaxsb 2032(%rdx), %xmm24, %xmm23
714
715 // CHECK: vpmaxsb 2048(%rdx), %xmm24, %xmm23
716 // CHECK:  encoding: [0x62,0xe2,0x3d,0x00,0x3c,0xba,0x00,0x08,0x00,0x00]
717           vpmaxsb 2048(%rdx), %xmm24, %xmm23
718
719 // CHECK: vpmaxsb -2048(%rdx), %xmm24, %xmm23
720 // CHECK:  encoding: [0x62,0xe2,0x3d,0x00,0x3c,0x7a,0x80]
721           vpmaxsb -2048(%rdx), %xmm24, %xmm23
722
723 // CHECK: vpmaxsb -2064(%rdx), %xmm24, %xmm23
724 // CHECK:  encoding: [0x62,0xe2,0x3d,0x00,0x3c,0xba,0xf0,0xf7,0xff,0xff]
725           vpmaxsb -2064(%rdx), %xmm24, %xmm23
726
727 // CHECK: vpmaxsb %ymm27, %ymm22, %ymm30
728 // CHECK:  encoding: [0x62,0x02,0x4d,0x20,0x3c,0xf3]
729           vpmaxsb %ymm27, %ymm22, %ymm30
730
731 // CHECK: vpmaxsb %ymm27, %ymm22, %ymm30 {%k5}
732 // CHECK:  encoding: [0x62,0x02,0x4d,0x25,0x3c,0xf3]
733           vpmaxsb %ymm27, %ymm22, %ymm30 {%k5}
734
735 // CHECK: vpmaxsb %ymm27, %ymm22, %ymm30 {%k5} {z}
736 // CHECK:  encoding: [0x62,0x02,0x4d,0xa5,0x3c,0xf3]
737           vpmaxsb %ymm27, %ymm22, %ymm30 {%k5} {z}
738
739 // CHECK: vpmaxsb (%rcx), %ymm22, %ymm30
740 // CHECK:  encoding: [0x62,0x62,0x4d,0x20,0x3c,0x31]
741           vpmaxsb (%rcx), %ymm22, %ymm30
742
743 // CHECK: vpmaxsb 291(%rax,%r14,8), %ymm22, %ymm30
744 // CHECK:  encoding: [0x62,0x22,0x4d,0x20,0x3c,0xb4,0xf0,0x23,0x01,0x00,0x00]
745           vpmaxsb 291(%rax,%r14,8), %ymm22, %ymm30
746
747 // CHECK: vpmaxsb 4064(%rdx), %ymm22, %ymm30
748 // CHECK:  encoding: [0x62,0x62,0x4d,0x20,0x3c,0x72,0x7f]
749           vpmaxsb 4064(%rdx), %ymm22, %ymm30
750
751 // CHECK: vpmaxsb 4096(%rdx), %ymm22, %ymm30
752 // CHECK:  encoding: [0x62,0x62,0x4d,0x20,0x3c,0xb2,0x00,0x10,0x00,0x00]
753           vpmaxsb 4096(%rdx), %ymm22, %ymm30
754
755 // CHECK: vpmaxsb -4096(%rdx), %ymm22, %ymm30
756 // CHECK:  encoding: [0x62,0x62,0x4d,0x20,0x3c,0x72,0x80]
757           vpmaxsb -4096(%rdx), %ymm22, %ymm30
758
759 // CHECK: vpmaxsb -4128(%rdx), %ymm22, %ymm30
760 // CHECK:  encoding: [0x62,0x62,0x4d,0x20,0x3c,0xb2,0xe0,0xef,0xff,0xff]
761           vpmaxsb -4128(%rdx), %ymm22, %ymm30
762
763 // CHECK: vpmaxsw %xmm28, %xmm24, %xmm18
764 // CHECK:  encoding: [0x62,0x81,0x3d,0x00,0xee,0xd4]
765           vpmaxsw %xmm28, %xmm24, %xmm18
766
767 // CHECK: vpmaxsw %xmm28, %xmm24, %xmm18 {%k3}
768 // CHECK:  encoding: [0x62,0x81,0x3d,0x03,0xee,0xd4]
769           vpmaxsw %xmm28, %xmm24, %xmm18 {%k3}
770
771 // CHECK: vpmaxsw %xmm28, %xmm24, %xmm18 {%k3} {z}
772 // CHECK:  encoding: [0x62,0x81,0x3d,0x83,0xee,0xd4]
773           vpmaxsw %xmm28, %xmm24, %xmm18 {%k3} {z}
774
775 // CHECK: vpmaxsw (%rcx), %xmm24, %xmm18
776 // CHECK:  encoding: [0x62,0xe1,0x3d,0x00,0xee,0x11]
777           vpmaxsw (%rcx), %xmm24, %xmm18
778
779 // CHECK: vpmaxsw 291(%rax,%r14,8), %xmm24, %xmm18
780 // CHECK:  encoding: [0x62,0xa1,0x3d,0x00,0xee,0x94,0xf0,0x23,0x01,0x00,0x00]
781           vpmaxsw 291(%rax,%r14,8), %xmm24, %xmm18
782
783 // CHECK: vpmaxsw 2032(%rdx), %xmm24, %xmm18
784 // CHECK:  encoding: [0x62,0xe1,0x3d,0x00,0xee,0x52,0x7f]
785           vpmaxsw 2032(%rdx), %xmm24, %xmm18
786
787 // CHECK: vpmaxsw 2048(%rdx), %xmm24, %xmm18
788 // CHECK:  encoding: [0x62,0xe1,0x3d,0x00,0xee,0x92,0x00,0x08,0x00,0x00]
789           vpmaxsw 2048(%rdx), %xmm24, %xmm18
790
791 // CHECK: vpmaxsw -2048(%rdx), %xmm24, %xmm18
792 // CHECK:  encoding: [0x62,0xe1,0x3d,0x00,0xee,0x52,0x80]
793           vpmaxsw -2048(%rdx), %xmm24, %xmm18
794
795 // CHECK: vpmaxsw -2064(%rdx), %xmm24, %xmm18
796 // CHECK:  encoding: [0x62,0xe1,0x3d,0x00,0xee,0x92,0xf0,0xf7,0xff,0xff]
797           vpmaxsw -2064(%rdx), %xmm24, %xmm18
798
799 // CHECK: vpmaxsw %ymm17, %ymm28, %ymm27
800 // CHECK:  encoding: [0x62,0x21,0x1d,0x20,0xee,0xd9]
801           vpmaxsw %ymm17, %ymm28, %ymm27
802
803 // CHECK: vpmaxsw %ymm17, %ymm28, %ymm27 {%k6}
804 // CHECK:  encoding: [0x62,0x21,0x1d,0x26,0xee,0xd9]
805           vpmaxsw %ymm17, %ymm28, %ymm27 {%k6}
806
807 // CHECK: vpmaxsw %ymm17, %ymm28, %ymm27 {%k6} {z}
808 // CHECK:  encoding: [0x62,0x21,0x1d,0xa6,0xee,0xd9]
809           vpmaxsw %ymm17, %ymm28, %ymm27 {%k6} {z}
810
811 // CHECK: vpmaxsw (%rcx), %ymm28, %ymm27
812 // CHECK:  encoding: [0x62,0x61,0x1d,0x20,0xee,0x19]
813           vpmaxsw (%rcx), %ymm28, %ymm27
814
815 // CHECK: vpmaxsw 291(%rax,%r14,8), %ymm28, %ymm27
816 // CHECK:  encoding: [0x62,0x21,0x1d,0x20,0xee,0x9c,0xf0,0x23,0x01,0x00,0x00]
817           vpmaxsw 291(%rax,%r14,8), %ymm28, %ymm27
818
819 // CHECK: vpmaxsw 4064(%rdx), %ymm28, %ymm27
820 // CHECK:  encoding: [0x62,0x61,0x1d,0x20,0xee,0x5a,0x7f]
821           vpmaxsw 4064(%rdx), %ymm28, %ymm27
822
823 // CHECK: vpmaxsw 4096(%rdx), %ymm28, %ymm27
824 // CHECK:  encoding: [0x62,0x61,0x1d,0x20,0xee,0x9a,0x00,0x10,0x00,0x00]
825           vpmaxsw 4096(%rdx), %ymm28, %ymm27
826
827 // CHECK: vpmaxsw -4096(%rdx), %ymm28, %ymm27
828 // CHECK:  encoding: [0x62,0x61,0x1d,0x20,0xee,0x5a,0x80]
829           vpmaxsw -4096(%rdx), %ymm28, %ymm27
830
831 // CHECK: vpmaxsw -4128(%rdx), %ymm28, %ymm27
832 // CHECK:  encoding: [0x62,0x61,0x1d,0x20,0xee,0x9a,0xe0,0xef,0xff,0xff]
833           vpmaxsw -4128(%rdx), %ymm28, %ymm27
834
835 // CHECK: vpmaxub %xmm23, %xmm17, %xmm17
836 // CHECK:  encoding: [0x62,0xa1,0x75,0x00,0xde,0xcf]
837           vpmaxub %xmm23, %xmm17, %xmm17
838
839 // CHECK: vpmaxub %xmm23, %xmm17, %xmm17 {%k5}
840 // CHECK:  encoding: [0x62,0xa1,0x75,0x05,0xde,0xcf]
841           vpmaxub %xmm23, %xmm17, %xmm17 {%k5}
842
843 // CHECK: vpmaxub %xmm23, %xmm17, %xmm17 {%k5} {z}
844 // CHECK:  encoding: [0x62,0xa1,0x75,0x85,0xde,0xcf]
845           vpmaxub %xmm23, %xmm17, %xmm17 {%k5} {z}
846
847 // CHECK: vpmaxub (%rcx), %xmm17, %xmm17
848 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xde,0x09]
849           vpmaxub (%rcx), %xmm17, %xmm17
850
851 // CHECK: vpmaxub 291(%rax,%r14,8), %xmm17, %xmm17
852 // CHECK:  encoding: [0x62,0xa1,0x75,0x00,0xde,0x8c,0xf0,0x23,0x01,0x00,0x00]
853           vpmaxub 291(%rax,%r14,8), %xmm17, %xmm17
854
855 // CHECK: vpmaxub 2032(%rdx), %xmm17, %xmm17
856 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xde,0x4a,0x7f]
857           vpmaxub 2032(%rdx), %xmm17, %xmm17
858
859 // CHECK: vpmaxub 2048(%rdx), %xmm17, %xmm17
860 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xde,0x8a,0x00,0x08,0x00,0x00]
861           vpmaxub 2048(%rdx), %xmm17, %xmm17
862
863 // CHECK: vpmaxub -2048(%rdx), %xmm17, %xmm17
864 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xde,0x4a,0x80]
865           vpmaxub -2048(%rdx), %xmm17, %xmm17
866
867 // CHECK: vpmaxub -2064(%rdx), %xmm17, %xmm17
868 // CHECK:  encoding: [0x62,0xe1,0x75,0x00,0xde,0x8a,0xf0,0xf7,0xff,0xff]
869           vpmaxub -2064(%rdx), %xmm17, %xmm17
870
871 // CHECK: vpmaxub %ymm24, %ymm26, %ymm28
872 // CHECK:  encoding: [0x62,0x01,0x2d,0x20,0xde,0xe0]
873           vpmaxub %ymm24, %ymm26, %ymm28
874
875 // CHECK: vpmaxub %ymm24, %ymm26, %ymm28 {%k6}
876 // CHECK:  encoding: [0x62,0x01,0x2d,0x26,0xde,0xe0]
877           vpmaxub %ymm24, %ymm26, %ymm28 {%k6}
878
879 // CHECK: vpmaxub %ymm24, %ymm26, %ymm28 {%k6} {z}
880 // CHECK:  encoding: [0x62,0x01,0x2d,0xa6,0xde,0xe0]
881           vpmaxub %ymm24, %ymm26, %ymm28 {%k6} {z}
882
883 // CHECK: vpmaxub (%rcx), %ymm26, %ymm28
884 // CHECK:  encoding: [0x62,0x61,0x2d,0x20,0xde,0x21]
885           vpmaxub (%rcx), %ymm26, %ymm28
886
887 // CHECK: vpmaxub 291(%rax,%r14,8), %ymm26, %ymm28
888 // CHECK:  encoding: [0x62,0x21,0x2d,0x20,0xde,0xa4,0xf0,0x23,0x01,0x00,0x00]
889           vpmaxub 291(%rax,%r14,8), %ymm26, %ymm28
890
891 // CHECK: vpmaxub 4064(%rdx), %ymm26, %ymm28
892 // CHECK:  encoding: [0x62,0x61,0x2d,0x20,0xde,0x62,0x7f]
893           vpmaxub 4064(%rdx), %ymm26, %ymm28
894
895 // CHECK: vpmaxub 4096(%rdx), %ymm26, %ymm28
896 // CHECK:  encoding: [0x62,0x61,0x2d,0x20,0xde,0xa2,0x00,0x10,0x00,0x00]
897           vpmaxub 4096(%rdx), %ymm26, %ymm28
898
899 // CHECK: vpmaxub -4096(%rdx), %ymm26, %ymm28
900 // CHECK:  encoding: [0x62,0x61,0x2d,0x20,0xde,0x62,0x80]
901           vpmaxub -4096(%rdx), %ymm26, %ymm28
902
903 // CHECK: vpmaxub -4128(%rdx), %ymm26, %ymm28
904 // CHECK:  encoding: [0x62,0x61,0x2d,0x20,0xde,0xa2,0xe0,0xef,0xff,0xff]
905           vpmaxub -4128(%rdx), %ymm26, %ymm28
906
907 // CHECK: vpmaxuw %xmm20, %xmm18, %xmm24
908 // CHECK:  encoding: [0x62,0x22,0x6d,0x00,0x3e,0xc4]
909           vpmaxuw %xmm20, %xmm18, %xmm24
910
911 // CHECK: vpmaxuw %xmm20, %xmm18, %xmm24 {%k7}
912 // CHECK:  encoding: [0x62,0x22,0x6d,0x07,0x3e,0xc4]
913           vpmaxuw %xmm20, %xmm18, %xmm24 {%k7}
914
915 // CHECK: vpmaxuw %xmm20, %xmm18, %xmm24 {%k7} {z}
916 // CHECK:  encoding: [0x62,0x22,0x6d,0x87,0x3e,0xc4]
917           vpmaxuw %xmm20, %xmm18, %xmm24 {%k7} {z}
918
919 // CHECK: vpmaxuw (%rcx), %xmm18, %xmm24
920 // CHECK:  encoding: [0x62,0x62,0x6d,0x00,0x3e,0x01]
921           vpmaxuw (%rcx), %xmm18, %xmm24
922
923 // CHECK: vpmaxuw 291(%rax,%r14,8), %xmm18, %xmm24
924 // CHECK:  encoding: [0x62,0x22,0x6d,0x00,0x3e,0x84,0xf0,0x23,0x01,0x00,0x00]
925           vpmaxuw 291(%rax,%r14,8), %xmm18, %xmm24
926
927 // CHECK: vpmaxuw 2032(%rdx), %xmm18, %xmm24
928 // CHECK:  encoding: [0x62,0x62,0x6d,0x00,0x3e,0x42,0x7f]
929           vpmaxuw 2032(%rdx), %xmm18, %xmm24
930
931 // CHECK: vpmaxuw 2048(%rdx), %xmm18, %xmm24
932 // CHECK:  encoding: [0x62,0x62,0x6d,0x00,0x3e,0x82,0x00,0x08,0x00,0x00]
933           vpmaxuw 2048(%rdx), %xmm18, %xmm24
934
935 // CHECK: vpmaxuw -2048(%rdx), %xmm18, %xmm24
936 // CHECK:  encoding: [0x62,0x62,0x6d,0x00,0x3e,0x42,0x80]
937           vpmaxuw -2048(%rdx), %xmm18, %xmm24
938
939 // CHECK: vpmaxuw -2064(%rdx), %xmm18, %xmm24
940 // CHECK:  encoding: [0x62,0x62,0x6d,0x00,0x3e,0x82,0xf0,0xf7,0xff,0xff]
941           vpmaxuw -2064(%rdx), %xmm18, %xmm24
942
943 // CHECK: vpmaxuw %ymm19, %ymm22, %ymm19
944 // CHECK:  encoding: [0x62,0xa2,0x4d,0x20,0x3e,0xdb]
945           vpmaxuw %ymm19, %ymm22, %ymm19
946
947 // CHECK: vpmaxuw %ymm19, %ymm22, %ymm19 {%k7}
948 // CHECK:  encoding: [0x62,0xa2,0x4d,0x27,0x3e,0xdb]
949           vpmaxuw %ymm19, %ymm22, %ymm19 {%k7}
950
951 // CHECK: vpmaxuw %ymm19, %ymm22, %ymm19 {%k7} {z}
952 // CHECK:  encoding: [0x62,0xa2,0x4d,0xa7,0x3e,0xdb]
953           vpmaxuw %ymm19, %ymm22, %ymm19 {%k7} {z}
954
955 // CHECK: vpmaxuw (%rcx), %ymm22, %ymm19
956 // CHECK:  encoding: [0x62,0xe2,0x4d,0x20,0x3e,0x19]
957           vpmaxuw (%rcx), %ymm22, %ymm19
958
959 // CHECK: vpmaxuw 291(%rax,%r14,8), %ymm22, %ymm19
960 // CHECK:  encoding: [0x62,0xa2,0x4d,0x20,0x3e,0x9c,0xf0,0x23,0x01,0x00,0x00]
961           vpmaxuw 291(%rax,%r14,8), %ymm22, %ymm19
962
963 // CHECK: vpmaxuw 4064(%rdx), %ymm22, %ymm19
964 // CHECK:  encoding: [0x62,0xe2,0x4d,0x20,0x3e,0x5a,0x7f]
965           vpmaxuw 4064(%rdx), %ymm22, %ymm19
966
967 // CHECK: vpmaxuw 4096(%rdx), %ymm22, %ymm19
968 // CHECK:  encoding: [0x62,0xe2,0x4d,0x20,0x3e,0x9a,0x00,0x10,0x00,0x00]
969           vpmaxuw 4096(%rdx), %ymm22, %ymm19
970
971 // CHECK: vpmaxuw -4096(%rdx), %ymm22, %ymm19
972 // CHECK:  encoding: [0x62,0xe2,0x4d,0x20,0x3e,0x5a,0x80]
973           vpmaxuw -4096(%rdx), %ymm22, %ymm19
974
975 // CHECK: vpmaxuw -4128(%rdx), %ymm22, %ymm19
976 // CHECK:  encoding: [0x62,0xe2,0x4d,0x20,0x3e,0x9a,0xe0,0xef,0xff,0xff]
977           vpmaxuw -4128(%rdx), %ymm22, %ymm19
978
979 // CHECK: vpminsb %xmm27, %xmm28, %xmm25
980 // CHECK:  encoding: [0x62,0x02,0x1d,0x00,0x38,0xcb]
981           vpminsb %xmm27, %xmm28, %xmm25
982
983 // CHECK: vpminsb %xmm27, %xmm28, %xmm25 {%k1}
984 // CHECK:  encoding: [0x62,0x02,0x1d,0x01,0x38,0xcb]
985           vpminsb %xmm27, %xmm28, %xmm25 {%k1}
986
987 // CHECK: vpminsb %xmm27, %xmm28, %xmm25 {%k1} {z}
988 // CHECK:  encoding: [0x62,0x02,0x1d,0x81,0x38,0xcb]
989           vpminsb %xmm27, %xmm28, %xmm25 {%k1} {z}
990
991 // CHECK: vpminsb (%rcx), %xmm28, %xmm25
992 // CHECK:  encoding: [0x62,0x62,0x1d,0x00,0x38,0x09]
993           vpminsb (%rcx), %xmm28, %xmm25
994
995 // CHECK: vpminsb 291(%rax,%r14,8), %xmm28, %xmm25
996 // CHECK:  encoding: [0x62,0x22,0x1d,0x00,0x38,0x8c,0xf0,0x23,0x01,0x00,0x00]
997           vpminsb 291(%rax,%r14,8), %xmm28, %xmm25
998
999 // CHECK: vpminsb 2032(%rdx), %xmm28, %xmm25
1000 // CHECK:  encoding: [0x62,0x62,0x1d,0x00,0x38,0x4a,0x7f]
1001           vpminsb 2032(%rdx), %xmm28, %xmm25
1002
1003 // CHECK: vpminsb 2048(%rdx), %xmm28, %xmm25
1004 // CHECK:  encoding: [0x62,0x62,0x1d,0x00,0x38,0x8a,0x00,0x08,0x00,0x00]
1005           vpminsb 2048(%rdx), %xmm28, %xmm25
1006
1007 // CHECK: vpminsb -2048(%rdx), %xmm28, %xmm25
1008 // CHECK:  encoding: [0x62,0x62,0x1d,0x00,0x38,0x4a,0x80]
1009           vpminsb -2048(%rdx), %xmm28, %xmm25
1010
1011 // CHECK: vpminsb -2064(%rdx), %xmm28, %xmm25
1012 // CHECK:  encoding: [0x62,0x62,0x1d,0x00,0x38,0x8a,0xf0,0xf7,0xff,0xff]
1013           vpminsb -2064(%rdx), %xmm28, %xmm25
1014
1015 // CHECK: vpminsb %ymm27, %ymm20, %ymm27
1016 // CHECK:  encoding: [0x62,0x02,0x5d,0x20,0x38,0xdb]
1017           vpminsb %ymm27, %ymm20, %ymm27
1018
1019 // CHECK: vpminsb %ymm27, %ymm20, %ymm27 {%k6}
1020 // CHECK:  encoding: [0x62,0x02,0x5d,0x26,0x38,0xdb]
1021           vpminsb %ymm27, %ymm20, %ymm27 {%k6}
1022
1023 // CHECK: vpminsb %ymm27, %ymm20, %ymm27 {%k6} {z}
1024 // CHECK:  encoding: [0x62,0x02,0x5d,0xa6,0x38,0xdb]
1025           vpminsb %ymm27, %ymm20, %ymm27 {%k6} {z}
1026
1027 // CHECK: vpminsb (%rcx), %ymm20, %ymm27
1028 // CHECK:  encoding: [0x62,0x62,0x5d,0x20,0x38,0x19]
1029           vpminsb (%rcx), %ymm20, %ymm27
1030
1031 // CHECK: vpminsb 291(%rax,%r14,8), %ymm20, %ymm27
1032 // CHECK:  encoding: [0x62,0x22,0x5d,0x20,0x38,0x9c,0xf0,0x23,0x01,0x00,0x00]
1033           vpminsb 291(%rax,%r14,8), %ymm20, %ymm27
1034
1035 // CHECK: vpminsb 4064(%rdx), %ymm20, %ymm27
1036 // CHECK:  encoding: [0x62,0x62,0x5d,0x20,0x38,0x5a,0x7f]
1037           vpminsb 4064(%rdx), %ymm20, %ymm27
1038
1039 // CHECK: vpminsb 4096(%rdx), %ymm20, %ymm27
1040 // CHECK:  encoding: [0x62,0x62,0x5d,0x20,0x38,0x9a,0x00,0x10,0x00,0x00]
1041           vpminsb 4096(%rdx), %ymm20, %ymm27
1042
1043 // CHECK: vpminsb -4096(%rdx), %ymm20, %ymm27
1044 // CHECK:  encoding: [0x62,0x62,0x5d,0x20,0x38,0x5a,0x80]
1045           vpminsb -4096(%rdx), %ymm20, %ymm27
1046
1047 // CHECK: vpminsb -4128(%rdx), %ymm20, %ymm27
1048 // CHECK:  encoding: [0x62,0x62,0x5d,0x20,0x38,0x9a,0xe0,0xef,0xff,0xff]
1049           vpminsb -4128(%rdx), %ymm20, %ymm27
1050
1051 // CHECK: vpminsw %xmm19, %xmm26, %xmm27
1052 // CHECK:  encoding: [0x62,0x21,0x2d,0x00,0xea,0xdb]
1053           vpminsw %xmm19, %xmm26, %xmm27
1054
1055 // CHECK: vpminsw %xmm19, %xmm26, %xmm27 {%k2}
1056 // CHECK:  encoding: [0x62,0x21,0x2d,0x02,0xea,0xdb]
1057           vpminsw %xmm19, %xmm26, %xmm27 {%k2}
1058
1059 // CHECK: vpminsw %xmm19, %xmm26, %xmm27 {%k2} {z}
1060 // CHECK:  encoding: [0x62,0x21,0x2d,0x82,0xea,0xdb]
1061           vpminsw %xmm19, %xmm26, %xmm27 {%k2} {z}
1062
1063 // CHECK: vpminsw (%rcx), %xmm26, %xmm27
1064 // CHECK:  encoding: [0x62,0x61,0x2d,0x00,0xea,0x19]
1065           vpminsw (%rcx), %xmm26, %xmm27
1066
1067 // CHECK: vpminsw 291(%rax,%r14,8), %xmm26, %xmm27
1068 // CHECK:  encoding: [0x62,0x21,0x2d,0x00,0xea,0x9c,0xf0,0x23,0x01,0x00,0x00]
1069           vpminsw 291(%rax,%r14,8), %xmm26, %xmm27
1070
1071 // CHECK: vpminsw 2032(%rdx), %xmm26, %xmm27
1072 // CHECK:  encoding: [0x62,0x61,0x2d,0x00,0xea,0x5a,0x7f]
1073           vpminsw 2032(%rdx), %xmm26, %xmm27
1074
1075 // CHECK: vpminsw 2048(%rdx), %xmm26, %xmm27
1076 // CHECK:  encoding: [0x62,0x61,0x2d,0x00,0xea,0x9a,0x00,0x08,0x00,0x00]
1077           vpminsw 2048(%rdx), %xmm26, %xmm27
1078
1079 // CHECK: vpminsw -2048(%rdx), %xmm26, %xmm27
1080 // CHECK:  encoding: [0x62,0x61,0x2d,0x00,0xea,0x5a,0x80]
1081           vpminsw -2048(%rdx), %xmm26, %xmm27
1082
1083 // CHECK: vpminsw -2064(%rdx), %xmm26, %xmm27
1084 // CHECK:  encoding: [0x62,0x61,0x2d,0x00,0xea,0x9a,0xf0,0xf7,0xff,0xff]
1085           vpminsw -2064(%rdx), %xmm26, %xmm27
1086
1087 // CHECK: vpminsw %ymm27, %ymm23, %ymm21
1088 // CHECK:  encoding: [0x62,0x81,0x45,0x20,0xea,0xeb]
1089           vpminsw %ymm27, %ymm23, %ymm21
1090
1091 // CHECK: vpminsw %ymm27, %ymm23, %ymm21 {%k2}
1092 // CHECK:  encoding: [0x62,0x81,0x45,0x22,0xea,0xeb]
1093           vpminsw %ymm27, %ymm23, %ymm21 {%k2}
1094
1095 // CHECK: vpminsw %ymm27, %ymm23, %ymm21 {%k2} {z}
1096 // CHECK:  encoding: [0x62,0x81,0x45,0xa2,0xea,0xeb]
1097           vpminsw %ymm27, %ymm23, %ymm21 {%k2} {z}
1098
1099 // CHECK: vpminsw (%rcx), %ymm23, %ymm21
1100 // CHECK:  encoding: [0x62,0xe1,0x45,0x20,0xea,0x29]
1101           vpminsw (%rcx), %ymm23, %ymm21
1102
1103 // CHECK: vpminsw 291(%rax,%r14,8), %ymm23, %ymm21
1104 // CHECK:  encoding: [0x62,0xa1,0x45,0x20,0xea,0xac,0xf0,0x23,0x01,0x00,0x00]
1105           vpminsw 291(%rax,%r14,8), %ymm23, %ymm21
1106
1107 // CHECK: vpminsw 4064(%rdx), %ymm23, %ymm21
1108 // CHECK:  encoding: [0x62,0xe1,0x45,0x20,0xea,0x6a,0x7f]
1109           vpminsw 4064(%rdx), %ymm23, %ymm21
1110
1111 // CHECK: vpminsw 4096(%rdx), %ymm23, %ymm21
1112 // CHECK:  encoding: [0x62,0xe1,0x45,0x20,0xea,0xaa,0x00,0x10,0x00,0x00]
1113           vpminsw 4096(%rdx), %ymm23, %ymm21
1114
1115 // CHECK: vpminsw -4096(%rdx), %ymm23, %ymm21
1116 // CHECK:  encoding: [0x62,0xe1,0x45,0x20,0xea,0x6a,0x80]
1117           vpminsw -4096(%rdx), %ymm23, %ymm21
1118
1119 // CHECK: vpminsw -4128(%rdx), %ymm23, %ymm21
1120 // CHECK:  encoding: [0x62,0xe1,0x45,0x20,0xea,0xaa,0xe0,0xef,0xff,0xff]
1121           vpminsw -4128(%rdx), %ymm23, %ymm21
1122
1123 // CHECK: vpminub %xmm27, %xmm27, %xmm22
1124 // CHECK:  encoding: [0x62,0x81,0x25,0x00,0xda,0xf3]
1125           vpminub %xmm27, %xmm27, %xmm22
1126
1127 // CHECK: vpminub %xmm27, %xmm27, %xmm22 {%k5}
1128 // CHECK:  encoding: [0x62,0x81,0x25,0x05,0xda,0xf3]
1129           vpminub %xmm27, %xmm27, %xmm22 {%k5}
1130
1131 // CHECK: vpminub %xmm27, %xmm27, %xmm22 {%k5} {z}
1132 // CHECK:  encoding: [0x62,0x81,0x25,0x85,0xda,0xf3]
1133           vpminub %xmm27, %xmm27, %xmm22 {%k5} {z}
1134
1135 // CHECK: vpminub (%rcx), %xmm27, %xmm22
1136 // CHECK:  encoding: [0x62,0xe1,0x25,0x00,0xda,0x31]
1137           vpminub (%rcx), %xmm27, %xmm22
1138
1139 // CHECK: vpminub 291(%rax,%r14,8), %xmm27, %xmm22
1140 // CHECK:  encoding: [0x62,0xa1,0x25,0x00,0xda,0xb4,0xf0,0x23,0x01,0x00,0x00]
1141           vpminub 291(%rax,%r14,8), %xmm27, %xmm22
1142
1143 // CHECK: vpminub 2032(%rdx), %xmm27, %xmm22
1144 // CHECK:  encoding: [0x62,0xe1,0x25,0x00,0xda,0x72,0x7f]
1145           vpminub 2032(%rdx), %xmm27, %xmm22
1146
1147 // CHECK: vpminub 2048(%rdx), %xmm27, %xmm22
1148 // CHECK:  encoding: [0x62,0xe1,0x25,0x00,0xda,0xb2,0x00,0x08,0x00,0x00]
1149           vpminub 2048(%rdx), %xmm27, %xmm22
1150
1151 // CHECK: vpminub -2048(%rdx), %xmm27, %xmm22
1152 // CHECK:  encoding: [0x62,0xe1,0x25,0x00,0xda,0x72,0x80]
1153           vpminub -2048(%rdx), %xmm27, %xmm22
1154
1155 // CHECK: vpminub -2064(%rdx), %xmm27, %xmm22
1156 // CHECK:  encoding: [0x62,0xe1,0x25,0x00,0xda,0xb2,0xf0,0xf7,0xff,0xff]
1157           vpminub -2064(%rdx), %xmm27, %xmm22
1158
1159 // CHECK: vpminub %ymm27, %ymm25, %ymm27
1160 // CHECK:  encoding: [0x62,0x01,0x35,0x20,0xda,0xdb]
1161           vpminub %ymm27, %ymm25, %ymm27
1162
1163 // CHECK: vpminub %ymm27, %ymm25, %ymm27 {%k3}
1164 // CHECK:  encoding: [0x62,0x01,0x35,0x23,0xda,0xdb]
1165           vpminub %ymm27, %ymm25, %ymm27 {%k3}
1166
1167 // CHECK: vpminub %ymm27, %ymm25, %ymm27 {%k3} {z}
1168 // CHECK:  encoding: [0x62,0x01,0x35,0xa3,0xda,0xdb]
1169           vpminub %ymm27, %ymm25, %ymm27 {%k3} {z}
1170
1171 // CHECK: vpminub (%rcx), %ymm25, %ymm27
1172 // CHECK:  encoding: [0x62,0x61,0x35,0x20,0xda,0x19]
1173           vpminub (%rcx), %ymm25, %ymm27
1174
1175 // CHECK: vpminub 291(%rax,%r14,8), %ymm25, %ymm27
1176 // CHECK:  encoding: [0x62,0x21,0x35,0x20,0xda,0x9c,0xf0,0x23,0x01,0x00,0x00]
1177           vpminub 291(%rax,%r14,8), %ymm25, %ymm27
1178
1179 // CHECK: vpminub 4064(%rdx), %ymm25, %ymm27
1180 // CHECK:  encoding: [0x62,0x61,0x35,0x20,0xda,0x5a,0x7f]
1181           vpminub 4064(%rdx), %ymm25, %ymm27
1182
1183 // CHECK: vpminub 4096(%rdx), %ymm25, %ymm27
1184 // CHECK:  encoding: [0x62,0x61,0x35,0x20,0xda,0x9a,0x00,0x10,0x00,0x00]
1185           vpminub 4096(%rdx), %ymm25, %ymm27
1186
1187 // CHECK: vpminub -4096(%rdx), %ymm25, %ymm27
1188 // CHECK:  encoding: [0x62,0x61,0x35,0x20,0xda,0x5a,0x80]
1189           vpminub -4096(%rdx), %ymm25, %ymm27
1190
1191 // CHECK: vpminub -4128(%rdx), %ymm25, %ymm27
1192 // CHECK:  encoding: [0x62,0x61,0x35,0x20,0xda,0x9a,0xe0,0xef,0xff,0xff]
1193           vpminub -4128(%rdx), %ymm25, %ymm27
1194
1195 // CHECK: vpminuw %xmm23, %xmm17, %xmm28
1196 // CHECK:  encoding: [0x62,0x22,0x75,0x00,0x3a,0xe7]
1197           vpminuw %xmm23, %xmm17, %xmm28
1198
1199 // CHECK: vpminuw %xmm23, %xmm17, %xmm28 {%k2}
1200 // CHECK:  encoding: [0x62,0x22,0x75,0x02,0x3a,0xe7]
1201           vpminuw %xmm23, %xmm17, %xmm28 {%k2}
1202
1203 // CHECK: vpminuw %xmm23, %xmm17, %xmm28 {%k2} {z}
1204 // CHECK:  encoding: [0x62,0x22,0x75,0x82,0x3a,0xe7]
1205           vpminuw %xmm23, %xmm17, %xmm28 {%k2} {z}
1206
1207 // CHECK: vpminuw (%rcx), %xmm17, %xmm28
1208 // CHECK:  encoding: [0x62,0x62,0x75,0x00,0x3a,0x21]
1209           vpminuw (%rcx), %xmm17, %xmm28
1210
1211 // CHECK: vpminuw 291(%rax,%r14,8), %xmm17, %xmm28
1212 // CHECK:  encoding: [0x62,0x22,0x75,0x00,0x3a,0xa4,0xf0,0x23,0x01,0x00,0x00]
1213           vpminuw 291(%rax,%r14,8), %xmm17, %xmm28
1214
1215 // CHECK: vpminuw 2032(%rdx), %xmm17, %xmm28
1216 // CHECK:  encoding: [0x62,0x62,0x75,0x00,0x3a,0x62,0x7f]
1217           vpminuw 2032(%rdx), %xmm17, %xmm28
1218
1219 // CHECK: vpminuw 2048(%rdx), %xmm17, %xmm28
1220 // CHECK:  encoding: [0x62,0x62,0x75,0x00,0x3a,0xa2,0x00,0x08,0x00,0x00]
1221           vpminuw 2048(%rdx), %xmm17, %xmm28
1222
1223 // CHECK: vpminuw -2048(%rdx), %xmm17, %xmm28
1224 // CHECK:  encoding: [0x62,0x62,0x75,0x00,0x3a,0x62,0x80]
1225           vpminuw -2048(%rdx), %xmm17, %xmm28
1226
1227 // CHECK: vpminuw -2064(%rdx), %xmm17, %xmm28
1228 // CHECK:  encoding: [0x62,0x62,0x75,0x00,0x3a,0xa2,0xf0,0xf7,0xff,0xff]
1229           vpminuw -2064(%rdx), %xmm17, %xmm28
1230
1231 // CHECK: vpminuw %ymm18, %ymm27, %ymm20
1232 // CHECK:  encoding: [0x62,0xa2,0x25,0x20,0x3a,0xe2]
1233           vpminuw %ymm18, %ymm27, %ymm20
1234
1235 // CHECK: vpminuw %ymm18, %ymm27, %ymm20 {%k7}
1236 // CHECK:  encoding: [0x62,0xa2,0x25,0x27,0x3a,0xe2]
1237           vpminuw %ymm18, %ymm27, %ymm20 {%k7}
1238
1239 // CHECK: vpminuw %ymm18, %ymm27, %ymm20 {%k7} {z}
1240 // CHECK:  encoding: [0x62,0xa2,0x25,0xa7,0x3a,0xe2]
1241           vpminuw %ymm18, %ymm27, %ymm20 {%k7} {z}
1242
1243 // CHECK: vpminuw (%rcx), %ymm27, %ymm20
1244 // CHECK:  encoding: [0x62,0xe2,0x25,0x20,0x3a,0x21]
1245           vpminuw (%rcx), %ymm27, %ymm20
1246
1247 // CHECK: vpminuw 291(%rax,%r14,8), %ymm27, %ymm20
1248 // CHECK:  encoding: [0x62,0xa2,0x25,0x20,0x3a,0xa4,0xf0,0x23,0x01,0x00,0x00]
1249           vpminuw 291(%rax,%r14,8), %ymm27, %ymm20
1250
1251 // CHECK: vpminuw 4064(%rdx), %ymm27, %ymm20
1252 // CHECK:  encoding: [0x62,0xe2,0x25,0x20,0x3a,0x62,0x7f]
1253           vpminuw 4064(%rdx), %ymm27, %ymm20
1254
1255 // CHECK: vpminuw 4096(%rdx), %ymm27, %ymm20
1256 // CHECK:  encoding: [0x62,0xe2,0x25,0x20,0x3a,0xa2,0x00,0x10,0x00,0x00]
1257           vpminuw 4096(%rdx), %ymm27, %ymm20
1258
1259 // CHECK: vpminuw -4096(%rdx), %ymm27, %ymm20
1260 // CHECK:  encoding: [0x62,0xe2,0x25,0x20,0x3a,0x62,0x80]
1261           vpminuw -4096(%rdx), %ymm27, %ymm20
1262
1263 // CHECK: vpminuw -4128(%rdx), %ymm27, %ymm20
1264 // CHECK:  encoding: [0x62,0xe2,0x25,0x20,0x3a,0xa2,0xe0,0xef,0xff,0xff]
1265           vpminuw -4128(%rdx), %ymm27, %ymm20
1266
1267 // CHECK: vpmullw %xmm26, %xmm19, %xmm29
1268 // CHECK:  encoding: [0x62,0x01,0x65,0x00,0xd5,0xea]
1269           vpmullw %xmm26, %xmm19, %xmm29
1270
1271 // CHECK: vpmullw %xmm26, %xmm19, %xmm29 {%k7}
1272 // CHECK:  encoding: [0x62,0x01,0x65,0x07,0xd5,0xea]
1273           vpmullw %xmm26, %xmm19, %xmm29 {%k7}
1274
1275 // CHECK: vpmullw %xmm26, %xmm19, %xmm29 {%k7} {z}
1276 // CHECK:  encoding: [0x62,0x01,0x65,0x87,0xd5,0xea]
1277           vpmullw %xmm26, %xmm19, %xmm29 {%k7} {z}
1278
1279 // CHECK: vpmullw (%rcx), %xmm19, %xmm29
1280 // CHECK:  encoding: [0x62,0x61,0x65,0x00,0xd5,0x29]
1281           vpmullw (%rcx), %xmm19, %xmm29
1282
1283 // CHECK: vpmullw 291(%rax,%r14,8), %xmm19, %xmm29
1284 // CHECK:  encoding: [0x62,0x21,0x65,0x00,0xd5,0xac,0xf0,0x23,0x01,0x00,0x00]
1285           vpmullw 291(%rax,%r14,8), %xmm19, %xmm29
1286
1287 // CHECK: vpmullw 2032(%rdx), %xmm19, %xmm29
1288 // CHECK:  encoding: [0x62,0x61,0x65,0x00,0xd5,0x6a,0x7f]
1289           vpmullw 2032(%rdx), %xmm19, %xmm29
1290
1291 // CHECK: vpmullw 2048(%rdx), %xmm19, %xmm29
1292 // CHECK:  encoding: [0x62,0x61,0x65,0x00,0xd5,0xaa,0x00,0x08,0x00,0x00]
1293           vpmullw 2048(%rdx), %xmm19, %xmm29
1294
1295 // CHECK: vpmullw -2048(%rdx), %xmm19, %xmm29
1296 // CHECK:  encoding: [0x62,0x61,0x65,0x00,0xd5,0x6a,0x80]
1297           vpmullw -2048(%rdx), %xmm19, %xmm29
1298
1299 // CHECK: vpmullw -2064(%rdx), %xmm19, %xmm29
1300 // CHECK:  encoding: [0x62,0x61,0x65,0x00,0xd5,0xaa,0xf0,0xf7,0xff,0xff]
1301           vpmullw -2064(%rdx), %xmm19, %xmm29
1302
1303 // CHECK: vpmullw %ymm20, %ymm24, %ymm17
1304 // CHECK:  encoding: [0x62,0xa1,0x3d,0x20,0xd5,0xcc]
1305           vpmullw %ymm20, %ymm24, %ymm17
1306
1307 // CHECK: vpmullw %ymm20, %ymm24, %ymm17 {%k5}
1308 // CHECK:  encoding: [0x62,0xa1,0x3d,0x25,0xd5,0xcc]
1309           vpmullw %ymm20, %ymm24, %ymm17 {%k5}
1310
1311 // CHECK: vpmullw %ymm20, %ymm24, %ymm17 {%k5} {z}
1312 // CHECK:  encoding: [0x62,0xa1,0x3d,0xa5,0xd5,0xcc]
1313           vpmullw %ymm20, %ymm24, %ymm17 {%k5} {z}
1314
1315 // CHECK: vpmullw (%rcx), %ymm24, %ymm17
1316 // CHECK:  encoding: [0x62,0xe1,0x3d,0x20,0xd5,0x09]
1317           vpmullw (%rcx), %ymm24, %ymm17
1318
1319 // CHECK: vpmullw 291(%rax,%r14,8), %ymm24, %ymm17
1320 // CHECK:  encoding: [0x62,0xa1,0x3d,0x20,0xd5,0x8c,0xf0,0x23,0x01,0x00,0x00]
1321           vpmullw 291(%rax,%r14,8), %ymm24, %ymm17
1322
1323 // CHECK: vpmullw 4064(%rdx), %ymm24, %ymm17
1324 // CHECK:  encoding: [0x62,0xe1,0x3d,0x20,0xd5,0x4a,0x7f]
1325           vpmullw 4064(%rdx), %ymm24, %ymm17
1326
1327 // CHECK: vpmullw 4096(%rdx), %ymm24, %ymm17
1328 // CHECK:  encoding: [0x62,0xe1,0x3d,0x20,0xd5,0x8a,0x00,0x10,0x00,0x00]
1329           vpmullw 4096(%rdx), %ymm24, %ymm17
1330
1331 // CHECK: vpmullw -4096(%rdx), %ymm24, %ymm17
1332 // CHECK:  encoding: [0x62,0xe1,0x3d,0x20,0xd5,0x4a,0x80]
1333           vpmullw -4096(%rdx), %ymm24, %ymm17
1334
1335 // CHECK: vpmullw -4128(%rdx), %ymm24, %ymm17
1336 // CHECK:  encoding: [0x62,0xe1,0x3d,0x20,0xd5,0x8a,0xe0,0xef,0xff,0xff]
1337           vpmullw -4128(%rdx), %ymm24, %ymm17
1338
1339 // CHECK: vpsubb %xmm28, %xmm29, %xmm27
1340 // CHECK:  encoding: [0x62,0x01,0x15,0x00,0xf8,0xdc]
1341           vpsubb %xmm28, %xmm29, %xmm27
1342
1343 // CHECK: vpsubb %xmm28, %xmm29, %xmm27 {%k3}
1344 // CHECK:  encoding: [0x62,0x01,0x15,0x03,0xf8,0xdc]
1345           vpsubb %xmm28, %xmm29, %xmm27 {%k3}
1346
1347 // CHECK: vpsubb %xmm28, %xmm29, %xmm27 {%k3} {z}
1348 // CHECK:  encoding: [0x62,0x01,0x15,0x83,0xf8,0xdc]
1349           vpsubb %xmm28, %xmm29, %xmm27 {%k3} {z}
1350
1351 // CHECK: vpsubb (%rcx), %xmm29, %xmm27
1352 // CHECK:  encoding: [0x62,0x61,0x15,0x00,0xf8,0x19]
1353           vpsubb (%rcx), %xmm29, %xmm27
1354
1355 // CHECK: vpsubb 291(%rax,%r14,8), %xmm29, %xmm27
1356 // CHECK:  encoding: [0x62,0x21,0x15,0x00,0xf8,0x9c,0xf0,0x23,0x01,0x00,0x00]
1357           vpsubb 291(%rax,%r14,8), %xmm29, %xmm27
1358
1359 // CHECK: vpsubb 2032(%rdx), %xmm29, %xmm27
1360 // CHECK:  encoding: [0x62,0x61,0x15,0x00,0xf8,0x5a,0x7f]
1361           vpsubb 2032(%rdx), %xmm29, %xmm27
1362
1363 // CHECK: vpsubb 2048(%rdx), %xmm29, %xmm27
1364 // CHECK:  encoding: [0x62,0x61,0x15,0x00,0xf8,0x9a,0x00,0x08,0x00,0x00]
1365           vpsubb 2048(%rdx), %xmm29, %xmm27
1366
1367 // CHECK: vpsubb -2048(%rdx), %xmm29, %xmm27
1368 // CHECK:  encoding: [0x62,0x61,0x15,0x00,0xf8,0x5a,0x80]
1369           vpsubb -2048(%rdx), %xmm29, %xmm27
1370
1371 // CHECK: vpsubb -2064(%rdx), %xmm29, %xmm27
1372 // CHECK:  encoding: [0x62,0x61,0x15,0x00,0xf8,0x9a,0xf0,0xf7,0xff,0xff]
1373           vpsubb -2064(%rdx), %xmm29, %xmm27
1374
1375 // CHECK: vpsubb %ymm28, %ymm20, %ymm20
1376 // CHECK:  encoding: [0x62,0x81,0x5d,0x20,0xf8,0xe4]
1377           vpsubb %ymm28, %ymm20, %ymm20
1378
1379 // CHECK: vpsubb %ymm28, %ymm20, %ymm20 {%k2}
1380 // CHECK:  encoding: [0x62,0x81,0x5d,0x22,0xf8,0xe4]
1381           vpsubb %ymm28, %ymm20, %ymm20 {%k2}
1382
1383 // CHECK: vpsubb %ymm28, %ymm20, %ymm20 {%k2} {z}
1384 // CHECK:  encoding: [0x62,0x81,0x5d,0xa2,0xf8,0xe4]
1385           vpsubb %ymm28, %ymm20, %ymm20 {%k2} {z}
1386
1387 // CHECK: vpsubb (%rcx), %ymm20, %ymm20
1388 // CHECK:  encoding: [0x62,0xe1,0x5d,0x20,0xf8,0x21]
1389           vpsubb (%rcx), %ymm20, %ymm20
1390
1391 // CHECK: vpsubb 291(%rax,%r14,8), %ymm20, %ymm20
1392 // CHECK:  encoding: [0x62,0xa1,0x5d,0x20,0xf8,0xa4,0xf0,0x23,0x01,0x00,0x00]
1393           vpsubb 291(%rax,%r14,8), %ymm20, %ymm20
1394
1395 // CHECK: vpsubb 4064(%rdx), %ymm20, %ymm20
1396 // CHECK:  encoding: [0x62,0xe1,0x5d,0x20,0xf8,0x62,0x7f]
1397           vpsubb 4064(%rdx), %ymm20, %ymm20
1398
1399 // CHECK: vpsubb 4096(%rdx), %ymm20, %ymm20
1400 // CHECK:  encoding: [0x62,0xe1,0x5d,0x20,0xf8,0xa2,0x00,0x10,0x00,0x00]
1401           vpsubb 4096(%rdx), %ymm20, %ymm20
1402
1403 // CHECK: vpsubb -4096(%rdx), %ymm20, %ymm20
1404 // CHECK:  encoding: [0x62,0xe1,0x5d,0x20,0xf8,0x62,0x80]
1405           vpsubb -4096(%rdx), %ymm20, %ymm20
1406
1407 // CHECK: vpsubb -4128(%rdx), %ymm20, %ymm20
1408 // CHECK:  encoding: [0x62,0xe1,0x5d,0x20,0xf8,0xa2,0xe0,0xef,0xff,0xff]
1409           vpsubb -4128(%rdx), %ymm20, %ymm20
1410
1411 // CHECK: vpsubw %xmm18, %xmm22, %xmm17
1412 // CHECK:  encoding: [0x62,0xa1,0x4d,0x00,0xf9,0xca]
1413           vpsubw %xmm18, %xmm22, %xmm17
1414
1415 // CHECK: vpsubw %xmm18, %xmm22, %xmm17 {%k6}
1416 // CHECK:  encoding: [0x62,0xa1,0x4d,0x06,0xf9,0xca]
1417           vpsubw %xmm18, %xmm22, %xmm17 {%k6}
1418
1419 // CHECK: vpsubw %xmm18, %xmm22, %xmm17 {%k6} {z}
1420 // CHECK:  encoding: [0x62,0xa1,0x4d,0x86,0xf9,0xca]
1421           vpsubw %xmm18, %xmm22, %xmm17 {%k6} {z}
1422
1423 // CHECK: vpsubw (%rcx), %xmm22, %xmm17
1424 // CHECK:  encoding: [0x62,0xe1,0x4d,0x00,0xf9,0x09]
1425           vpsubw (%rcx), %xmm22, %xmm17
1426
1427 // CHECK: vpsubw 291(%rax,%r14,8), %xmm22, %xmm17
1428 // CHECK:  encoding: [0x62,0xa1,0x4d,0x00,0xf9,0x8c,0xf0,0x23,0x01,0x00,0x00]
1429           vpsubw 291(%rax,%r14,8), %xmm22, %xmm17
1430
1431 // CHECK: vpsubw 2032(%rdx), %xmm22, %xmm17
1432 // CHECK:  encoding: [0x62,0xe1,0x4d,0x00,0xf9,0x4a,0x7f]
1433           vpsubw 2032(%rdx), %xmm22, %xmm17
1434
1435 // CHECK: vpsubw 2048(%rdx), %xmm22, %xmm17
1436 // CHECK:  encoding: [0x62,0xe1,0x4d,0x00,0xf9,0x8a,0x00,0x08,0x00,0x00]
1437           vpsubw 2048(%rdx), %xmm22, %xmm17
1438
1439 // CHECK: vpsubw -2048(%rdx), %xmm22, %xmm17
1440 // CHECK:  encoding: [0x62,0xe1,0x4d,0x00,0xf9,0x4a,0x80]
1441           vpsubw -2048(%rdx), %xmm22, %xmm17
1442
1443 // CHECK: vpsubw -2064(%rdx), %xmm22, %xmm17
1444 // CHECK:  encoding: [0x62,0xe1,0x4d,0x00,0xf9,0x8a,0xf0,0xf7,0xff,0xff]
1445           vpsubw -2064(%rdx), %xmm22, %xmm17
1446
1447 // CHECK: vpsubw %ymm24, %ymm29, %ymm17
1448 // CHECK:  encoding: [0x62,0x81,0x15,0x20,0xf9,0xc8]
1449           vpsubw %ymm24, %ymm29, %ymm17
1450
1451 // CHECK: vpsubw %ymm24, %ymm29, %ymm17 {%k2}
1452 // CHECK:  encoding: [0x62,0x81,0x15,0x22,0xf9,0xc8]
1453           vpsubw %ymm24, %ymm29, %ymm17 {%k2}
1454
1455 // CHECK: vpsubw %ymm24, %ymm29, %ymm17 {%k2} {z}
1456 // CHECK:  encoding: [0x62,0x81,0x15,0xa2,0xf9,0xc8]
1457           vpsubw %ymm24, %ymm29, %ymm17 {%k2} {z}
1458
1459 // CHECK: vpsubw (%rcx), %ymm29, %ymm17
1460 // CHECK:  encoding: [0x62,0xe1,0x15,0x20,0xf9,0x09]
1461           vpsubw (%rcx), %ymm29, %ymm17
1462
1463 // CHECK: vpsubw 291(%rax,%r14,8), %ymm29, %ymm17
1464 // CHECK:  encoding: [0x62,0xa1,0x15,0x20,0xf9,0x8c,0xf0,0x23,0x01,0x00,0x00]
1465           vpsubw 291(%rax,%r14,8), %ymm29, %ymm17
1466
1467 // CHECK: vpsubw 4064(%rdx), %ymm29, %ymm17
1468 // CHECK:  encoding: [0x62,0xe1,0x15,0x20,0xf9,0x4a,0x7f]
1469           vpsubw 4064(%rdx), %ymm29, %ymm17
1470
1471 // CHECK: vpsubw 4096(%rdx), %ymm29, %ymm17
1472 // CHECK:  encoding: [0x62,0xe1,0x15,0x20,0xf9,0x8a,0x00,0x10,0x00,0x00]
1473           vpsubw 4096(%rdx), %ymm29, %ymm17
1474
1475 // CHECK: vpsubw -4096(%rdx), %ymm29, %ymm17
1476 // CHECK:  encoding: [0x62,0xe1,0x15,0x20,0xf9,0x4a,0x80]
1477           vpsubw -4096(%rdx), %ymm29, %ymm17
1478
1479 // CHECK: vpsubw -4128(%rdx), %ymm29, %ymm17
1480 // CHECK:  encoding: [0x62,0xe1,0x15,0x20,0xf9,0x8a,0xe0,0xef,0xff,0xff]
1481           vpsubw -4128(%rdx), %ymm29, %ymm17
1482
1483 // CHECK: vmovdqu8 %xmm23, %xmm26
1484 // CHECK:  encoding: [0x62,0x21,0x7f,0x08,0x6f,0xd7]
1485           vmovdqu8 %xmm23, %xmm26
1486
1487 // CHECK: vmovdqu8 %xmm23, %xmm26 {%k2}
1488 // CHECK:  encoding: [0x62,0x21,0x7f,0x0a,0x6f,0xd7]
1489           vmovdqu8 %xmm23, %xmm26 {%k2}
1490
1491 // CHECK: vmovdqu8 %xmm23, %xmm26 {%k2} {z}
1492 // CHECK:  encoding: [0x62,0x21,0x7f,0x8a,0x6f,0xd7]
1493           vmovdqu8 %xmm23, %xmm26 {%k2} {z}
1494
1495 // CHECK: vmovdqu8 (%rcx), %xmm26
1496 // CHECK:  encoding: [0x62,0x61,0x7f,0x08,0x6f,0x11]
1497           vmovdqu8 (%rcx), %xmm26
1498
1499 // CHECK: vmovdqu8 291(%rax,%r14,8), %xmm26
1500 // CHECK:  encoding: [0x62,0x21,0x7f,0x08,0x6f,0x94,0xf0,0x23,0x01,0x00,0x00]
1501           vmovdqu8 291(%rax,%r14,8), %xmm26
1502
1503 // CHECK: vmovdqu8 2032(%rdx), %xmm26
1504 // CHECK:  encoding: [0x62,0x61,0x7f,0x08,0x6f,0x52,0x7f]
1505           vmovdqu8 2032(%rdx), %xmm26
1506
1507 // CHECK: vmovdqu8 2048(%rdx), %xmm26
1508 // CHECK:  encoding: [0x62,0x61,0x7f,0x08,0x6f,0x92,0x00,0x08,0x00,0x00]
1509           vmovdqu8 2048(%rdx), %xmm26
1510
1511 // CHECK: vmovdqu8 -2048(%rdx), %xmm26
1512 // CHECK:  encoding: [0x62,0x61,0x7f,0x08,0x6f,0x52,0x80]
1513           vmovdqu8 -2048(%rdx), %xmm26
1514
1515 // CHECK: vmovdqu8 -2064(%rdx), %xmm26
1516 // CHECK:  encoding: [0x62,0x61,0x7f,0x08,0x6f,0x92,0xf0,0xf7,0xff,0xff]
1517           vmovdqu8 -2064(%rdx), %xmm26
1518
1519 // CHECK: vmovdqu8 %ymm29, %ymm18
1520 // CHECK:  encoding: [0x62,0x81,0x7f,0x28,0x6f,0xd5]
1521           vmovdqu8 %ymm29, %ymm18
1522
1523 // CHECK: vmovdqu8 %ymm29, %ymm18 {%k7}
1524 // CHECK:  encoding: [0x62,0x81,0x7f,0x2f,0x6f,0xd5]
1525           vmovdqu8 %ymm29, %ymm18 {%k7}
1526
1527 // CHECK: vmovdqu8 %ymm29, %ymm18 {%k7} {z}
1528 // CHECK:  encoding: [0x62,0x81,0x7f,0xaf,0x6f,0xd5]
1529           vmovdqu8 %ymm29, %ymm18 {%k7} {z}
1530
1531 // CHECK: vmovdqu8 (%rcx), %ymm18
1532 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x6f,0x11]
1533           vmovdqu8 (%rcx), %ymm18
1534
1535 // CHECK: vmovdqu8 291(%rax,%r14,8), %ymm18
1536 // CHECK:  encoding: [0x62,0xa1,0x7f,0x28,0x6f,0x94,0xf0,0x23,0x01,0x00,0x00]
1537           vmovdqu8 291(%rax,%r14,8), %ymm18
1538
1539 // CHECK: vmovdqu8 4064(%rdx), %ymm18
1540 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x6f,0x52,0x7f]
1541           vmovdqu8 4064(%rdx), %ymm18
1542
1543 // CHECK: vmovdqu8 4096(%rdx), %ymm18
1544 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x6f,0x92,0x00,0x10,0x00,0x00]
1545           vmovdqu8 4096(%rdx), %ymm18
1546
1547 // CHECK: vmovdqu8 -4096(%rdx), %ymm18
1548 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x6f,0x52,0x80]
1549           vmovdqu8 -4096(%rdx), %ymm18
1550
1551 // CHECK: vmovdqu8 -4128(%rdx), %ymm18
1552 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x6f,0x92,0xe0,0xef,0xff,0xff]
1553           vmovdqu8 -4128(%rdx), %ymm18
1554
1555 // CHECK: vmovdqu16 %xmm24, %xmm29
1556 // CHECK:  encoding: [0x62,0x01,0xff,0x08,0x6f,0xe8]
1557           vmovdqu16 %xmm24, %xmm29
1558
1559 // CHECK: vmovdqu16 %xmm24, %xmm29 {%k6}
1560 // CHECK:  encoding: [0x62,0x01,0xff,0x0e,0x6f,0xe8]
1561           vmovdqu16 %xmm24, %xmm29 {%k6}
1562
1563 // CHECK: vmovdqu16 %xmm24, %xmm29 {%k6} {z}
1564 // CHECK:  encoding: [0x62,0x01,0xff,0x8e,0x6f,0xe8]
1565           vmovdqu16 %xmm24, %xmm29 {%k6} {z}
1566
1567 // CHECK: vmovdqu16 (%rcx), %xmm29
1568 // CHECK:  encoding: [0x62,0x61,0xff,0x08,0x6f,0x29]
1569           vmovdqu16 (%rcx), %xmm29
1570
1571 // CHECK: vmovdqu16 291(%rax,%r14,8), %xmm29
1572 // CHECK:  encoding: [0x62,0x21,0xff,0x08,0x6f,0xac,0xf0,0x23,0x01,0x00,0x00]
1573           vmovdqu16 291(%rax,%r14,8), %xmm29
1574
1575 // CHECK: vmovdqu16 2032(%rdx), %xmm29
1576 // CHECK:  encoding: [0x62,0x61,0xff,0x08,0x6f,0x6a,0x7f]
1577           vmovdqu16 2032(%rdx), %xmm29
1578
1579 // CHECK: vmovdqu16 2048(%rdx), %xmm29
1580 // CHECK:  encoding: [0x62,0x61,0xff,0x08,0x6f,0xaa,0x00,0x08,0x00,0x00]
1581           vmovdqu16 2048(%rdx), %xmm29
1582
1583 // CHECK: vmovdqu16 -2048(%rdx), %xmm29
1584 // CHECK:  encoding: [0x62,0x61,0xff,0x08,0x6f,0x6a,0x80]
1585           vmovdqu16 -2048(%rdx), %xmm29
1586
1587 // CHECK: vmovdqu16 -2064(%rdx), %xmm29
1588 // CHECK:  encoding: [0x62,0x61,0xff,0x08,0x6f,0xaa,0xf0,0xf7,0xff,0xff]
1589           vmovdqu16 -2064(%rdx), %xmm29
1590
1591 // CHECK: vmovdqu16 %ymm24, %ymm23
1592 // CHECK:  encoding: [0x62,0x81,0xff,0x28,0x6f,0xf8]
1593           vmovdqu16 %ymm24, %ymm23
1594
1595 // CHECK: vmovdqu16 %ymm24, %ymm23 {%k3}
1596 // CHECK:  encoding: [0x62,0x81,0xff,0x2b,0x6f,0xf8]
1597           vmovdqu16 %ymm24, %ymm23 {%k3}
1598
1599 // CHECK: vmovdqu16 %ymm24, %ymm23 {%k3} {z}
1600 // CHECK:  encoding: [0x62,0x81,0xff,0xab,0x6f,0xf8]
1601           vmovdqu16 %ymm24, %ymm23 {%k3} {z}
1602
1603 // CHECK: vmovdqu16 (%rcx), %ymm23
1604 // CHECK:  encoding: [0x62,0xe1,0xff,0x28,0x6f,0x39]
1605           vmovdqu16 (%rcx), %ymm23
1606
1607 // CHECK: vmovdqu16 291(%rax,%r14,8), %ymm23
1608 // CHECK:  encoding: [0x62,0xa1,0xff,0x28,0x6f,0xbc,0xf0,0x23,0x01,0x00,0x00]
1609           vmovdqu16 291(%rax,%r14,8), %ymm23
1610
1611 // CHECK: vmovdqu16 4064(%rdx), %ymm23
1612 // CHECK:  encoding: [0x62,0xe1,0xff,0x28,0x6f,0x7a,0x7f]
1613           vmovdqu16 4064(%rdx), %ymm23
1614
1615 // CHECK: vmovdqu16 4096(%rdx), %ymm23
1616 // CHECK:  encoding: [0x62,0xe1,0xff,0x28,0x6f,0xba,0x00,0x10,0x00,0x00]
1617           vmovdqu16 4096(%rdx), %ymm23
1618
1619 // CHECK: vmovdqu16 -4096(%rdx), %ymm23
1620 // CHECK:  encoding: [0x62,0xe1,0xff,0x28,0x6f,0x7a,0x80]
1621           vmovdqu16 -4096(%rdx), %ymm23
1622
1623 // CHECK: vmovdqu16 -4128(%rdx), %ymm23
1624 // CHECK:  encoding: [0x62,0xe1,0xff,0x28,0x6f,0xba,0xe0,0xef,0xff,0xff]
1625           vmovdqu16 -4128(%rdx), %ymm23
1626
1627 // CHECK: vmovdqu8 %xmm17, (%rcx)
1628 // CHECK:  encoding: [0x62,0xe1,0x7f,0x08,0x7f,0x09]
1629           vmovdqu8 %xmm17, (%rcx)
1630
1631 // CHECK: vmovdqu8 %xmm17, (%rcx) {%k4}
1632 // CHECK:  encoding: [0x62,0xe1,0x7f,0x0c,0x7f,0x09]
1633           vmovdqu8 %xmm17, (%rcx) {%k4}
1634
1635 // CHECK: vmovdqu8 %xmm17, 291(%rax,%r14,8)
1636 // CHECK:  encoding: [0x62,0xa1,0x7f,0x08,0x7f,0x8c,0xf0,0x23,0x01,0x00,0x00]
1637           vmovdqu8 %xmm17, 291(%rax,%r14,8)
1638
1639 // CHECK: vmovdqu8 %xmm17, 2032(%rdx)
1640 // CHECK:  encoding: [0x62,0xe1,0x7f,0x08,0x7f,0x4a,0x7f]
1641           vmovdqu8 %xmm17, 2032(%rdx)
1642
1643 // CHECK: vmovdqu8 %xmm17, 2048(%rdx)
1644 // CHECK:  encoding: [0x62,0xe1,0x7f,0x08,0x7f,0x8a,0x00,0x08,0x00,0x00]
1645           vmovdqu8 %xmm17, 2048(%rdx)
1646
1647 // CHECK: vmovdqu8 %xmm17, -2048(%rdx)
1648 // CHECK:  encoding: [0x62,0xe1,0x7f,0x08,0x7f,0x4a,0x80]
1649           vmovdqu8 %xmm17, -2048(%rdx)
1650
1651 // CHECK: vmovdqu8 %xmm17, -2064(%rdx)
1652 // CHECK:  encoding: [0x62,0xe1,0x7f,0x08,0x7f,0x8a,0xf0,0xf7,0xff,0xff]
1653           vmovdqu8 %xmm17, -2064(%rdx)
1654
1655 // CHECK: vmovdqu8 %ymm21, (%rcx)
1656 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x7f,0x29]
1657           vmovdqu8 %ymm21, (%rcx)
1658
1659 // CHECK: vmovdqu8 %ymm21, (%rcx) {%k1}
1660 // CHECK:  encoding: [0x62,0xe1,0x7f,0x29,0x7f,0x29]
1661           vmovdqu8 %ymm21, (%rcx) {%k1}
1662
1663 // CHECK: vmovdqu8 %ymm21, 291(%rax,%r14,8)
1664 // CHECK:  encoding: [0x62,0xa1,0x7f,0x28,0x7f,0xac,0xf0,0x23,0x01,0x00,0x00]
1665           vmovdqu8 %ymm21, 291(%rax,%r14,8)
1666
1667 // CHECK: vmovdqu8 %ymm21, 4064(%rdx)
1668 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x7f,0x6a,0x7f]
1669           vmovdqu8 %ymm21, 4064(%rdx)
1670
1671 // CHECK: vmovdqu8 %ymm21, 4096(%rdx)
1672 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x7f,0xaa,0x00,0x10,0x00,0x00]
1673           vmovdqu8 %ymm21, 4096(%rdx)
1674
1675 // CHECK: vmovdqu8 %ymm21, -4096(%rdx)
1676 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x7f,0x6a,0x80]
1677           vmovdqu8 %ymm21, -4096(%rdx)
1678
1679 // CHECK: vmovdqu8 %ymm21, -4128(%rdx)
1680 // CHECK:  encoding: [0x62,0xe1,0x7f,0x28,0x7f,0xaa,0xe0,0xef,0xff,0xff]
1681           vmovdqu8 %ymm21, -4128(%rdx)
1682
1683 // CHECK: vmovdqu16 %xmm23, (%rcx)
1684 // CHECK:  encoding: [0x62,0xe1,0xff,0x08,0x7f,0x39]
1685           vmovdqu16 %xmm23, (%rcx)
1686
1687 // CHECK: vmovdqu16 %xmm23, (%rcx) {%k7}
1688 // CHECK:  encoding: [0x62,0xe1,0xff,0x0f,0x7f,0x39]
1689           vmovdqu16 %xmm23, (%rcx) {%k7}
1690
1691 // CHECK: vmovdqu16 %xmm23, 291(%rax,%r14,8)
1692 // CHECK:  encoding: [0x62,0xa1,0xff,0x08,0x7f,0xbc,0xf0,0x23,0x01,0x00,0x00]
1693           vmovdqu16 %xmm23, 291(%rax,%r14,8)
1694
1695 // CHECK: vmovdqu16 %xmm23, 2032(%rdx)
1696 // CHECK:  encoding: [0x62,0xe1,0xff,0x08,0x7f,0x7a,0x7f]
1697           vmovdqu16 %xmm23, 2032(%rdx)
1698
1699 // CHECK: vmovdqu16 %xmm23, 2048(%rdx)
1700 // CHECK:  encoding: [0x62,0xe1,0xff,0x08,0x7f,0xba,0x00,0x08,0x00,0x00]
1701           vmovdqu16 %xmm23, 2048(%rdx)
1702
1703 // CHECK: vmovdqu16 %xmm23, -2048(%rdx)
1704 // CHECK:  encoding: [0x62,0xe1,0xff,0x08,0x7f,0x7a,0x80]
1705           vmovdqu16 %xmm23, -2048(%rdx)
1706
1707 // CHECK: vmovdqu16 %xmm23, -2064(%rdx)
1708 // CHECK:  encoding: [0x62,0xe1,0xff,0x08,0x7f,0xba,0xf0,0xf7,0xff,0xff]
1709           vmovdqu16 %xmm23, -2064(%rdx)
1710
1711 // CHECK: vmovdqu16 %ymm29, (%rcx)
1712 // CHECK:  encoding: [0x62,0x61,0xff,0x28,0x7f,0x29]
1713           vmovdqu16 %ymm29, (%rcx)
1714
1715 // CHECK: vmovdqu16 %ymm29, (%rcx) {%k6}
1716 // CHECK:  encoding: [0x62,0x61,0xff,0x2e,0x7f,0x29]
1717           vmovdqu16 %ymm29, (%rcx) {%k6}
1718
1719 // CHECK: vmovdqu16 %ymm29, 291(%rax,%r14,8)
1720 // CHECK:  encoding: [0x62,0x21,0xff,0x28,0x7f,0xac,0xf0,0x23,0x01,0x00,0x00]
1721           vmovdqu16 %ymm29, 291(%rax,%r14,8)
1722
1723 // CHECK: vmovdqu16 %ymm29, 4064(%rdx)
1724 // CHECK:  encoding: [0x62,0x61,0xff,0x28,0x7f,0x6a,0x7f]
1725           vmovdqu16 %ymm29, 4064(%rdx)
1726
1727 // CHECK: vmovdqu16 %ymm29, 4096(%rdx)
1728 // CHECK:  encoding: [0x62,0x61,0xff,0x28,0x7f,0xaa,0x00,0x10,0x00,0x00]
1729           vmovdqu16 %ymm29, 4096(%rdx)
1730
1731 // CHECK: vmovdqu16 %ymm29, -4096(%rdx)
1732 // CHECK:  encoding: [0x62,0x61,0xff,0x28,0x7f,0x6a,0x80]
1733           vmovdqu16 %ymm29, -4096(%rdx)
1734
1735 // CHECK: vmovdqu16 %ymm29, -4128(%rdx)
1736 // CHECK:  encoding: [0x62,0x61,0xff,0x28,0x7f,0xaa,0xe0,0xef,0xff,0xff]
1737           vmovdqu16 %ymm29, -4128(%rdx)