[ARM] Better OR's for MVE compares
[llvm-core.git] / test / MC / X86 / avx512vbmi-encoding.s
blobbf11e1999d257edbff37a4e6b32cf95f543ee744
1 // RUN: llvm-mc -triple x86_64-unknown-unknown --show-encoding %s | FileCheck %s
3 vpermb %xmm28, %xmm29, %xmm30 {%k7}
4 //CHECK: vpermb %xmm28, %xmm29, %xmm30 {%k7}
5 //CHECK: encoding: [0x62,0x02,0x15,0x07,0x8d,0xf4]
7 vpermb %xmm28, %xmm29, %xmm30 {%k7} {z}
8 //CHECK: vpermb %xmm28, %xmm29, %xmm30 {%k7} {z}
9 //CHECK: encoding: [0x62,0x02,0x15,0x87,0x8d,0xf4]
11 vpermb (%rcx), %xmm29, %xmm30
12 //CHECK: vpermb (%rcx), %xmm29, %xmm30
13 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x8d,0x31]
15 vpermb 0x123(%rax,%r14,8), %xmm29, %xmm30
16 //CHECK: vpermb 291(%rax,%r14,8), %xmm29, %xmm30
17 //CHECK: encoding: [0x62,0x22,0x15,0x00,0x8d,0xb4,0xf0,0x23,0x01,0x00,0x00]
19 vpermb 0x7f0(%rdx), %xmm29, %xmm30
20 //CHECK: vpermb 2032(%rdx), %xmm29, %xmm30
21 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x8d,0x72,0x7f]
23 vpermb 0x800(%rdx), %xmm29, %xmm30
24 //CHECK: vpermb 2048(%rdx), %xmm29, %xmm30
25 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x8d,0xb2,0x00,0x08,0x00,0x00]
27 vpermb -0x800(%rdx), %xmm29, %xmm30
28 //CHECK: vpermb -2048(%rdx), %xmm29, %xmm30
29 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x8d,0x72,0x80]
31 vpermb -0x810(%rdx), %xmm29, %xmm30
32 //CHECK: vpermb -2064(%rdx), %xmm29, %xmm30
33 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x8d,0xb2,0xf0,0xf7,0xff,0xff]
35 vpermb %ymm28, %ymm29, %ymm30
36 //CHECK: vpermb %ymm28, %ymm29, %ymm30
37 //CHECK: encoding: [0x62,0x02,0x15,0x20,0x8d,0xf4]
39 vpermb %ymm28, %ymm29, %ymm30 {%k7}
40 //CHECK: vpermb %ymm28, %ymm29, %ymm30 {%k7}
41 //CHECK: encoding: [0x62,0x02,0x15,0x27,0x8d,0xf4]
43 vpermb %ymm28, %ymm29, %ymm30 {%k7} {z}
44 //CHECK: vpermb %ymm28, %ymm29, %ymm30 {%k7} {z}
45 //CHECK: encoding: [0x62,0x02,0x15,0xa7,0x8d,0xf4]
47 vpermb (%rcx), %ymm29, %ymm30
48 //CHECK: vpermb (%rcx), %ymm29, %ymm30
49 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x8d,0x31]
51 vpermb 0x123(%rax,%r14,8), %ymm29, %ymm30
52 //CHECK: vpermb 291(%rax,%r14,8), %ymm29, %ymm30
53 //CHECK: encoding: [0x62,0x22,0x15,0x20,0x8d,0xb4,0xf0,0x23,0x01,0x00,0x00]
55 vpermb 0xfe0(%rdx), %ymm29, %ymm30
56 //CHECK: vpermb 4064(%rdx), %ymm29, %ymm30
57 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x8d,0x72,0x7f]
59 vpermb 0x1000(%rdx), %ymm29, %ymm30
60 //CHECK: vpermb 4096(%rdx), %ymm29, %ymm30
61 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x8d,0xb2,0x00,0x10,0x00,0x00]
63 vpermb -0x1000(%rdx), %ymm29, %ymm30
64 //CHECK: vpermb -4096(%rdx), %ymm29, %ymm30
65 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x8d,0x72,0x80]
67 vpermb -0x1020(%rdx), %ymm29, %ymm30
68 //CHECK: vpermb -4128(%rdx), %ymm29, %ymm30
69 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x8d,0xb2,0xe0,0xef,0xff,0xff]
71 vpermb %xmm28, %xmm29, %xmm30
72 //CHECK: vpermb %xmm28, %xmm29, %xmm30
73 //CHECK: encoding: [0x62,0x02,0x15,0x00,0x8d,0xf4]
75 vpermb 0x1234(%rax,%r14,8), %xmm29, %xmm30
76 //CHECK: vpermb 4660(%rax,%r14,8), %xmm29, %xmm30
77 //CHECK: encoding: [0x62,0x22,0x15,0x00,0x8d,0xb4,0xf0,0x34,0x12,0x00,0x00]
79 vpermb 0x1234(%rax,%r14,8), %ymm29, %ymm30
80 //CHECK: vpermb 4660(%rax,%r14,8), %ymm29, %ymm30
81 //CHECK: encoding: [0x62,0x22,0x15,0x20,0x8d,0xb4,0xf0,0x34,0x12,0x00,0x00]
83 vpermb %zmm28, %zmm29, %zmm30
84 //CHECK: vpermb %zmm28, %zmm29, %zmm30
85 //CHECK: encoding: [0x62,0x02,0x15,0x40,0x8d,0xf4]
87 vpermb %zmm28, %zmm29, %zmm30 {%k7}
88 //CHECK: vpermb %zmm28, %zmm29, %zmm30 {%k7}
89 //CHECK: encoding: [0x62,0x02,0x15,0x47,0x8d,0xf4]
91 vpermb %zmm28, %zmm29, %zmm30 {%k7} {z}
92 //CHECK: vpermb %zmm28, %zmm29, %zmm30 {%k7} {z}
93 //CHECK: encoding: [0x62,0x02,0x15,0xc7,0x8d,0xf4]
95 vpermb (%rcx), %zmm29, %zmm30
96 //CHECK: vpermb (%rcx), %zmm29, %zmm30
97 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x8d,0x31]
99 vpermb 0x123(%rax,%r14,8), %zmm29, %zmm30
100 //CHECK: vpermb 291(%rax,%r14,8), %zmm29, %zmm30
101 //CHECK: encoding: [0x62,0x22,0x15,0x40,0x8d,0xb4,0xf0,0x23,0x01,0x00,0x00]
103 vpermb 0x1fc0(%rdx), %zmm29, %zmm30
104 //CHECK: vpermb 8128(%rdx), %zmm29, %zmm30
105 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x8d,0x72,0x7f]
107 vpermb 0x2000(%rdx), %zmm29, %zmm30
108 //CHECK: vpermb 8192(%rdx), %zmm29, %zmm30
109 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x8d,0xb2,0x00,0x20,0x00,0x00]
111 vpermb -0x2000(%rdx), %zmm29, %zmm30
112 //CHECK: vpermb -8192(%rdx), %zmm29, %zmm30
113 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x8d,0x72,0x80]
115 vpermb -0x2040(%rdx), %zmm29, %zmm30
116 //CHECK: vpermb -8256(%rdx), %zmm29, %zmm30
117 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x8d,0xb2,0xc0,0xdf,0xff,0xff]
119 vpermb 0x1234(%rax,%r14,8), %zmm29, %zmm30
120 //CHECK: vpermb 4660(%rax,%r14,8), %zmm29, %zmm30
121 //CHECK: encoding: [0x62,0x22,0x15,0x40,0x8d,0xb4,0xf0,0x34,0x12,0x00,0x00]
123 vpermt2b %xmm28, %xmm29, %xmm30
124 //CHECK: vpermt2b %xmm28, %xmm29, %xmm30
125 //CHECK: encoding: [0x62,0x02,0x15,0x00,0x7d,0xf4]
127 vpermt2b %xmm28, %xmm29, %xmm30 {%k7}
128 //CHECK: vpermt2b %xmm28, %xmm29, %xmm30 {%k7}
129 //CHECK: encoding: [0x62,0x02,0x15,0x07,0x7d,0xf4]
131 vpermt2b %xmm28, %xmm29, %xmm30 {%k7} {z}
132 //CHECK: vpermt2b %xmm28, %xmm29, %xmm30 {%k7} {z}
133 //CHECK: encoding: [0x62,0x02,0x15,0x87,0x7d,0xf4]
135 vpermt2b (%rcx), %xmm29, %xmm30
136 //CHECK: vpermt2b (%rcx), %xmm29, %xmm30
137 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x7d,0x31]
139 vpermt2b 0x123(%rax,%r14,8), %xmm29, %xmm30
140 //CHECK: vpermt2b 291(%rax,%r14,8), %xmm29, %xmm30
141 //CHECK: encoding: [0x62,0x22,0x15,0x00,0x7d,0xb4,0xf0,0x23,0x01,0x00,0x00]
143 vpermt2b 0x7f0(%rdx), %xmm29, %xmm30
144 //CHECK: vpermt2b 2032(%rdx), %xmm29, %xmm30
145 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x7d,0x72,0x7f]
147 vpermt2b 0x800(%rdx), %xmm29, %xmm30
148 //CHECK: vpermt2b 2048(%rdx), %xmm29, %xmm30
149 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x7d,0xb2,0x00,0x08,0x00,0x00]
151 vpermt2b -0x800(%rdx), %xmm29, %xmm30
152 //CHECK: vpermt2b -2048(%rdx), %xmm29, %xmm30
153 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x7d,0x72,0x80]
155 vpermt2b -0x810(%rdx), %xmm29, %xmm30
156 //CHECK: vpermt2b -2064(%rdx), %xmm29, %xmm30
157 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x7d,0xb2,0xf0,0xf7,0xff,0xff]
159 vpermt2b %ymm28, %ymm29, %ymm30
160 //CHECK: vpermt2b %ymm28, %ymm29, %ymm30
161 //CHECK: encoding: [0x62,0x02,0x15,0x20,0x7d,0xf4]
163 vpermt2b %ymm28, %ymm29, %ymm30 {%k7}
164 //CHECK: vpermt2b %ymm28, %ymm29, %ymm30 {%k7}
165 //CHECK: encoding: [0x62,0x02,0x15,0x27,0x7d,0xf4]
167 vpermt2b %ymm28, %ymm29, %ymm30 {%k7} {z}
168 //CHECK: vpermt2b %ymm28, %ymm29, %ymm30 {%k7} {z}
169 //CHECK: encoding: [0x62,0x02,0x15,0xa7,0x7d,0xf4]
171 vpermt2b (%rcx), %ymm29, %ymm30
172 //CHECK: vpermt2b (%rcx), %ymm29, %ymm30
173 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x7d,0x31]
175 vpermt2b 0x123(%rax,%r14,8), %ymm29, %ymm30
176 //CHECK: vpermt2b 291(%rax,%r14,8), %ymm29, %ymm30
177 //CHECK: encoding: [0x62,0x22,0x15,0x20,0x7d,0xb4,0xf0,0x23,0x01,0x00,0x00]
179 vpermt2b 0xfe0(%rdx), %ymm29, %ymm30
180 //CHECK: vpermt2b 4064(%rdx), %ymm29, %ymm30
181 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x7d,0x72,0x7f]
183 vpermt2b 0x1000(%rdx), %ymm29, %ymm30
184 //CHECK: vpermt2b 4096(%rdx), %ymm29, %ymm30
185 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x7d,0xb2,0x00,0x10,0x00,0x00]
187 vpermt2b -0x1000(%rdx), %ymm29, %ymm30
188 //CHECK: vpermt2b -4096(%rdx), %ymm29, %ymm30
189 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x7d,0x72,0x80]
191 vpermt2b -0x1020(%rdx), %ymm29, %ymm30
192 //CHECK: vpermt2b -4128(%rdx), %ymm29, %ymm30
193 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x7d,0xb2,0xe0,0xef,0xff,0xff]
195 vpermt2b 0x1234(%rax,%r14,8), %xmm29, %xmm30
196 //CHECK: vpermt2b 4660(%rax,%r14,8), %xmm29, %xmm30
197 //CHECK: encoding: [0x62,0x22,0x15,0x00,0x7d,0xb4,0xf0,0x34,0x12,0x00,0x00]
199 vpermt2b 0x1234(%rax,%r14,8), %ymm29, %ymm30
200 //CHECK: vpermt2b 4660(%rax,%r14,8), %ymm29, %ymm30
201 //CHECK: encoding: [0x62,0x22,0x15,0x20,0x7d,0xb4,0xf0,0x34,0x12,0x00,0x00]
203 vpermt2b %zmm28, %zmm29, %zmm30
204 //CHECK: vpermt2b %zmm28, %zmm29, %zmm30
205 //CHECK: encoding: [0x62,0x02,0x15,0x40,0x7d,0xf4]
207 vpermt2b %zmm28, %zmm29, %zmm30 {%k7}
208 //CHECK: vpermt2b %zmm28, %zmm29, %zmm30 {%k7}
209 //CHECK: encoding: [0x62,0x02,0x15,0x47,0x7d,0xf4]
211 vpermt2b %zmm28, %zmm29, %zmm30 {%k7} {z}
212 //CHECK: vpermt2b %zmm28, %zmm29, %zmm30 {%k7} {z}
213 //CHECK: encoding: [0x62,0x02,0x15,0xc7,0x7d,0xf4]
215 vpermt2b (%rcx), %zmm29, %zmm30
216 //CHECK: vpermt2b (%rcx), %zmm29, %zmm30
217 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x7d,0x31]
219 vpermt2b 0x123(%rax,%r14,8), %zmm29, %zmm30
220 //CHECK: vpermt2b 291(%rax,%r14,8), %zmm29, %zmm30
221 //CHECK: encoding: [0x62,0x22,0x15,0x40,0x7d,0xb4,0xf0,0x23,0x01,0x00,0x00]
223 vpermt2b 0x1fc0(%rdx), %zmm29, %zmm30
224 //CHECK: vpermt2b 8128(%rdx), %zmm29, %zmm30
225 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x7d,0x72,0x7f]
227 vpermt2b 0x2000(%rdx), %zmm29, %zmm30
228 //CHECK: vpermt2b 8192(%rdx), %zmm29, %zmm30
229 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x7d,0xb2,0x00,0x20,0x00,0x00]
231 vpermt2b -0x2000(%rdx), %zmm29, %zmm30
232 //CHECK: vpermt2b -8192(%rdx), %zmm29, %zmm30
233 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x7d,0x72,0x80]
235 vpermt2b -0x2040(%rdx), %zmm29, %zmm30
236 //CHECK: vpermt2b -8256(%rdx), %zmm29, %zmm30
237 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x7d,0xb2,0xc0,0xdf,0xff,0xff]
239 vpermt2b 0x1234(%rax,%r14,8), %zmm29, %zmm30
240 //CHECK: vpermt2b 4660(%rax,%r14,8), %zmm29, %zmm30
241 //CHECK: encoding: [0x62,0x22,0x15,0x40,0x7d,0xb4,0xf0,0x34,0x12,0x00,0x00]
243 vpermi2b %xmm28, %xmm29, %xmm30
244 //CHECK: vpermi2b %xmm28, %xmm29, %xmm30
245 //CHECK: encoding: [0x62,0x02,0x15,0x00,0x75,0xf4]
247 vpermi2b %xmm28, %xmm29, %xmm30 {%k7}
248 //CHECK: vpermi2b %xmm28, %xmm29, %xmm30 {%k7}
249 //CHECK: encoding: [0x62,0x02,0x15,0x07,0x75,0xf4]
251 vpermi2b %xmm28, %xmm29, %xmm30 {%k7} {z}
252 //CHECK: vpermi2b %xmm28, %xmm29, %xmm30 {%k7} {z}
253 //CHECK: encoding: [0x62,0x02,0x15,0x87,0x75,0xf4]
255 vpermi2b (%rcx), %xmm29, %xmm30
256 //CHECK: vpermi2b (%rcx), %xmm29, %xmm30
257 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x75,0x31]
259 vpermi2b 0x123(%rax,%r14,8), %xmm29, %xmm30
260 //CHECK: vpermi2b 291(%rax,%r14,8), %xmm29, %xmm30
261 //CHECK: encoding: [0x62,0x22,0x15,0x00,0x75,0xb4,0xf0,0x23,0x01,0x00,0x00]
263 vpermi2b 0x7f0(%rdx), %xmm29, %xmm30
264 //CHECK: vpermi2b 2032(%rdx), %xmm29, %xmm30
265 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x75,0x72,0x7f]
267 vpermi2b 0x800(%rdx), %xmm29, %xmm30
268 //CHECK: vpermi2b 2048(%rdx), %xmm29, %xmm30
269 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x75,0xb2,0x00,0x08,0x00,0x00]
271 vpermi2b -0x800(%rdx), %xmm29, %xmm30
272 //CHECK: vpermi2b -2048(%rdx), %xmm29, %xmm30
273 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x75,0x72,0x80]
275 vpermi2b -0x810(%rdx), %xmm29, %xmm30
276 //CHECK: vpermi2b -2064(%rdx), %xmm29, %xmm30
277 //CHECK: encoding: [0x62,0x62,0x15,0x00,0x75,0xb2,0xf0,0xf7,0xff,0xff]
279 vpermi2b %ymm28, %ymm29, %ymm30
280 //CHECK: vpermi2b %ymm28, %ymm29, %ymm30
281 //CHECK: encoding: [0x62,0x02,0x15,0x20,0x75,0xf4]
283 vpermi2b %ymm28, %ymm29, %ymm30 {%k7}
284 //CHECK: vpermi2b %ymm28, %ymm29, %ymm30 {%k7}
285 //CHECK: encoding: [0x62,0x02,0x15,0x27,0x75,0xf4]
287 vpermi2b %ymm28, %ymm29, %ymm30 {%k7} {z}
288 //CHECK: vpermi2b %ymm28, %ymm29, %ymm30 {%k7} {z}
289 //CHECK: encoding: [0x62,0x02,0x15,0xa7,0x75,0xf4]
291 vpermi2b (%rcx), %ymm29, %ymm30
292 //CHECK: vpermi2b (%rcx), %ymm29, %ymm30
293 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x75,0x31]
295 vpermi2b 0x123(%rax,%r14,8), %ymm29, %ymm30
296 //CHECK: vpermi2b 291(%rax,%r14,8), %ymm29, %ymm30
297 //CHECK: encoding: [0x62,0x22,0x15,0x20,0x75,0xb4,0xf0,0x23,0x01,0x00,0x00]
299 vpermi2b 0xfe0(%rdx), %ymm29, %ymm30
300 //CHECK: vpermi2b 4064(%rdx), %ymm29, %ymm30
301 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x75,0x72,0x7f]
303 vpermi2b 0x1000(%rdx), %ymm29, %ymm30
304 //CHECK: vpermi2b 4096(%rdx), %ymm29, %ymm30
305 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x75,0xb2,0x00,0x10,0x00,0x00]
307 vpermi2b -0x1000(%rdx), %ymm29, %ymm30
308 //CHECK: vpermi2b -4096(%rdx), %ymm29, %ymm30
309 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x75,0x72,0x80]
311 vpermi2b -0x1020(%rdx), %ymm29, %ymm30
312 //CHECK: vpermi2b -4128(%rdx), %ymm29, %ymm30
313 //CHECK: encoding: [0x62,0x62,0x15,0x20,0x75,0xb2,0xe0,0xef,0xff,0xff]
315 vpermi2b 0x1234(%rax,%r14,8), %xmm29, %xmm30
316 //CHECK: vpermi2b 4660(%rax,%r14,8), %xmm29, %xmm30
317 //CHECK: encoding: [0x62,0x22,0x15,0x00,0x75,0xb4,0xf0,0x34,0x12,0x00,0x00]
319 vpermi2b 0x1234(%rax,%r14,8), %ymm29, %ymm30
320 //CHECK: vpermi2b 4660(%rax,%r14,8), %ymm29, %ymm30
321 //CHECK: encoding: [0x62,0x22,0x15,0x20,0x75,0xb4,0xf0,0x34,0x12,0x00,0x00]
323 vpermi2b %zmm28, %zmm29, %zmm30
324 //CHECK: vpermi2b %zmm28, %zmm29, %zmm30
325 //CHECK: encoding: [0x62,0x02,0x15,0x40,0x75,0xf4]
327 vpermi2b %zmm28, %zmm29, %zmm30 {%k7}
328 //CHECK: vpermi2b %zmm28, %zmm29, %zmm30 {%k7}
329 //CHECK: encoding: [0x62,0x02,0x15,0x47,0x75,0xf4]
331 vpermi2b %zmm28, %zmm29, %zmm30 {%k7} {z}
332 //CHECK: vpermi2b %zmm28, %zmm29, %zmm30 {%k7} {z}
333 //CHECK: encoding: [0x62,0x02,0x15,0xc7,0x75,0xf4]
335 vpermi2b (%rcx), %zmm29, %zmm30
336 //CHECK: vpermi2b (%rcx), %zmm29, %zmm30
337 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x75,0x31]
339 vpermi2b 0x123(%rax,%r14,8), %zmm29, %zmm30
340 //CHECK: vpermi2b 291(%rax,%r14,8), %zmm29, %zmm30
341 //CHECK: encoding: [0x62,0x22,0x15,0x40,0x75,0xb4,0xf0,0x23,0x01,0x00,0x00]
343 vpermi2b 0x1fc0(%rdx), %zmm29, %zmm30
344 //CHECK: vpermi2b 8128(%rdx), %zmm29, %zmm30
345 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x75,0x72,0x7f]
347 vpermi2b 0x2000(%rdx), %zmm29, %zmm30
348 //CHECK: vpermi2b 8192(%rdx), %zmm29, %zmm30
349 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x75,0xb2,0x00,0x20,0x00,0x00]
351 vpermi2b -0x2000(%rdx), %zmm29, %zmm30
352 //CHECK: vpermi2b -8192(%rdx), %zmm29, %zmm30
353 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x75,0x72,0x80]
355 vpermi2b -0x2040(%rdx), %zmm29, %zmm30
356 //CHECK: vpermi2b -8256(%rdx), %zmm29, %zmm30
357 //CHECK: encoding: [0x62,0x62,0x15,0x40,0x75,0xb2,0xc0,0xdf,0xff,0xff]
359 vpermi2b 0x1234(%rax,%r14,8), %zmm29, %zmm30
360 //CHECK: vpermi2b 4660(%rax,%r14,8), %zmm29, %zmm30
361 //CHECK: encoding: [0x62,0x22,0x15,0x40,0x75,0xb4,0xf0,0x34,0x12,0x00,0x00]
363 vpmultishiftqb %xmm28, %xmm29, %xmm30
364 //CHECK: vpmultishiftqb %xmm28, %xmm29, %xmm30
365 //CHECK: encoding: [0x62,0x02,0x95,0x00,0x83,0xf4]
367 vpmultishiftqb %xmm28, %xmm29, %xmm30 {%k7}
368 //CHECK: vpmultishiftqb %xmm28, %xmm29, %xmm30 {%k7}
369 //CHECK: encoding: [0x62,0x02,0x95,0x07,0x83,0xf4]
371 vpmultishiftqb %xmm28, %xmm29, %xmm30 {%k7} {z}
372 //CHECK: vpmultishiftqb %xmm28, %xmm29, %xmm30 {%k7} {z}
373 //CHECK: encoding: [0x62,0x02,0x95,0x87,0x83,0xf4]
375 vpmultishiftqb (%rcx), %xmm29, %xmm30
376 //CHECK: vpmultishiftqb (%rcx), %xmm29, %xmm30
377 //CHECK: encoding: [0x62,0x62,0x95,0x00,0x83,0x31]
379 vpmultishiftqb 0x123(%rax,%r14,8), %xmm29, %xmm30
380 //CHECK: vpmultishiftqb 291(%rax,%r14,8), %xmm29, %xmm30
381 //CHECK: encoding: [0x62,0x22,0x95,0x00,0x83,0xb4,0xf0,0x23,0x01,0x00,0x00]
383 vpmultishiftqb (%rcx){1to2}, %xmm29, %xmm30
384 //CHECK: vpmultishiftqb (%rcx){1to2}, %xmm29, %xmm30
386 //CHECK: encoding: [0x62,0x62,0x95,0x10,0x83,0x31]
388 vpmultishiftqb 0x7f0(%rdx), %xmm29, %xmm30
389 //CHECK: vpmultishiftqb 2032(%rdx), %xmm29, %xmm30
390 //CHECK: encoding: [0x62,0x62,0x95,0x00,0x83,0x72,0x7f]
392 vpmultishiftqb 0x800(%rdx), %xmm29, %xmm30
393 //CHECK: vpmultishiftqb 2048(%rdx), %xmm29, %xmm30
394 //CHECK: encoding: [0x62,0x62,0x95,0x00,0x83,0xb2,0x00,0x08,0x00,0x00]
396 vpmultishiftqb -0x800(%rdx), %xmm29, %xmm30
397 //CHECK: vpmultishiftqb -2048(%rdx), %xmm29, %xmm30
398 //CHECK: encoding: [0x62,0x62,0x95,0x00,0x83,0x72,0x80]
400 vpmultishiftqb -0x810(%rdx), %xmm29, %xmm30
401 //CHECK: vpmultishiftqb -2064(%rdx), %xmm29, %xmm30
402 //CHECK: encoding: [0x62,0x62,0x95,0x00,0x83,0xb2,0xf0,0xf7,0xff,0xff]
404 vpmultishiftqb 0x3f8(%rdx){1to2}, %xmm29, %xmm30
405 //CHECK: vpmultishiftqb 1016(%rdx){1to2}, %xmm29, %xmm30
406 //CHECK: encoding: [0x62,0x62,0x95,0x10,0x83,0x72,0x7f]
408 vpmultishiftqb 0x400(%rdx){1to2}, %xmm29, %xmm30
409 //CHECK: vpmultishiftqb 1024(%rdx){1to2}, %xmm29, %xmm30
410 //CHECK: encoding: [0x62,0x62,0x95,0x10,0x83,0xb2,0x00,0x04,0x00,0x00]
412 vpmultishiftqb -0x400(%rdx){1to2}, %xmm29, %xmm30
413 //CHECK: vpmultishiftqb -1024(%rdx){1to2}, %xmm29, %xmm30
414 //CHECK: encoding: [0x62,0x62,0x95,0x10,0x83,0x72,0x80]
416 vpmultishiftqb -0x408(%rdx){1to2}, %xmm29, %xmm30
417 //CHECK: vpmultishiftqb -1032(%rdx){1to2}, %xmm29, %xmm30
418 //CHECK: encoding: [0x62,0x62,0x95,0x10,0x83,0xb2,0xf8,0xfb,0xff,0xff]
420 vpmultishiftqb %ymm28, %ymm29, %ymm30
421 //CHECK: vpmultishiftqb %ymm28, %ymm29, %ymm30
422 //CHECK: encoding: [0x62,0x02,0x95,0x20,0x83,0xf4]
424 vpmultishiftqb %ymm28, %ymm29, %ymm30 {%k7}
425 //CHECK: vpmultishiftqb %ymm28, %ymm29, %ymm30 {%k7}
426 //CHECK: encoding: [0x62,0x02,0x95,0x27,0x83,0xf4]
428 vpmultishiftqb %ymm28, %ymm29, %ymm30 {%k7} {z}
429 //CHECK: vpmultishiftqb %ymm28, %ymm29, %ymm30 {%k7} {z}
430 //CHECK: encoding: [0x62,0x02,0x95,0xa7,0x83,0xf4]
432 vpmultishiftqb (%rcx), %ymm29, %ymm30
433 //CHECK: vpmultishiftqb (%rcx), %ymm29, %ymm30
434 //CHECK: encoding: [0x62,0x62,0x95,0x20,0x83,0x31]
436 vpmultishiftqb 0x123(%rax,%r14,8), %ymm29, %ymm30
437 //CHECK: vpmultishiftqb 291(%rax,%r14,8), %ymm29, %ymm30
438 //CHECK: encoding: [0x62,0x22,0x95,0x20,0x83,0xb4,0xf0,0x23,0x01,0x00,0x00]
440 vpmultishiftqb (%rcx){1to4}, %ymm29, %ymm30
441 //CHECK: vpmultishiftqb (%rcx){1to4}, %ymm29, %ymm30
442 //CHECK: encoding: [0x62,0x62,0x95,0x30,0x83,0x31]
444 vpmultishiftqb 0xfe0(%rdx), %ymm29, %ymm30
445 //CHECK: vpmultishiftqb 4064(%rdx), %ymm29, %ymm30
446 //CHECK: encoding: [0x62,0x62,0x95,0x20,0x83,0x72,0x7f]
448 vpmultishiftqb 0x1000(%rdx), %ymm29, %ymm30
449 //CHECK: vpmultishiftqb 4096(%rdx), %ymm29, %ymm30
450 //CHECK: encoding: [0x62,0x62,0x95,0x20,0x83,0xb2,0x00,0x10,0x00,0x00]
452 vpmultishiftqb -0x1000(%rdx), %ymm29, %ymm30
453 //CHECK: vpmultishiftqb -4096(%rdx), %ymm29, %ymm30
454 //CHECK: encoding: [0x62,0x62,0x95,0x20,0x83,0x72,0x80]
456 vpmultishiftqb -0x1020(%rdx), %ymm29, %ymm30
457 //CHECK: vpmultishiftqb -4128(%rdx), %ymm29, %ymm30
458 //CHECK: encoding: [0x62,0x62,0x95,0x20,0x83,0xb2,0xe0,0xef,0xff,0xff]
460 vpmultishiftqb 0x3f8(%rdx){1to4}, %ymm29, %ymm30
461 //CHECK: vpmultishiftqb 1016(%rdx){1to4}, %ymm29, %ymm30
462 //CHECK: encoding: [0x62,0x62,0x95,0x30,0x83,0x72,0x7f]
464 vpmultishiftqb 0x400(%rdx){1to4}, %ymm29, %ymm30
465 //CHECK: vpmultishiftqb 1024(%rdx){1to4}, %ymm29, %ymm30
466 //CHECK: encoding: [0x62,0x62,0x95,0x30,0x83,0xb2,0x00,0x04,0x00,0x00]
468 vpmultishiftqb -0x400(%rdx){1to4}, %ymm29, %ymm30
469 //CHECK: vpmultishiftqb -1024(%rdx){1to4}, %ymm29, %ymm30
470 //CHECK: encoding: [0x62,0x62,0x95,0x30,0x83,0x72,0x80]
472 vpmultishiftqb -0x408(%rdx){1to4}, %ymm29, %ymm30
473 //CHECK: vpmultishiftqb -1032(%rdx){1to4}, %ymm29, %ymm30
474 //CHECK: encoding: [0x62,0x62,0x95,0x30,0x83,0xb2,0xf8,0xfb,0xff,0xff]
476 vpmultishiftqb 0x1234(%rax,%r14,8), %xmm29, %xmm30
477 //CHECK: vpmultishiftqb 4660(%rax,%r14,8), %xmm29, %xmm30
478 //CHECK: encoding: [0x62,0x22,0x95,0x00,0x83,0xb4,0xf0,0x34,0x12,0x00,0x00]
480 vpmultishiftqb 0x1234(%rax,%r14,8), %ymm29, %ymm30
481 //CHECK: vpmultishiftqb 4660(%rax,%r14,8), %ymm29, %ymm30
482 //CHECK: encoding: [0x62,0x22,0x95,0x20,0x83,0xb4,0xf0,0x34,0x12,0x00,0x00]
484 vpmultishiftqb %zmm28, %zmm29, %zmm30
485 //CHECK: vpmultishiftqb %zmm28, %zmm29, %zmm30
486 //CHECK: encoding: [0x62,0x02,0x95,0x40,0x83,0xf4]
488 vpmultishiftqb %zmm28, %zmm29, %zmm30 {%k7}
489 //CHECK: vpmultishiftqb %zmm28, %zmm29, %zmm30 {%k7}
490 //CHECK: encoding: [0x62,0x02,0x95,0x47,0x83,0xf4]
492 vpmultishiftqb %zmm28, %zmm29, %zmm30 {%k7} {z}
493 //CHECK: vpmultishiftqb %zmm28, %zmm29, %zmm30 {%k7} {z}
494 //CHECK: encoding: [0x62,0x02,0x95,0xc7,0x83,0xf4]
496 vpmultishiftqb (%rcx), %zmm29, %zmm30
497 //CHECK: vpmultishiftqb (%rcx), %zmm29, %zmm30
498 //CHECK: encoding: [0x62,0x62,0x95,0x40,0x83,0x31]
500 vpmultishiftqb 0x123(%rax,%r14,8), %zmm29, %zmm30
501 //CHECK: vpmultishiftqb 291(%rax,%r14,8), %zmm29, %zmm30
502 //CHECK: encoding: [0x62,0x22,0x95,0x40,0x83,0xb4,0xf0,0x23,0x01,0x00,0x00]
504 vpmultishiftqb (%rcx){1to8}, %zmm29, %zmm30
505 //CHECK: vpmultishiftqb (%rcx){1to8}, %zmm29, %zmm30
506 //CHECK: encoding: [0x62,0x62,0x95,0x50,0x83,0x31]
508 vpmultishiftqb 0x1fc0(%rdx), %zmm29, %zmm30
509 //CHECK: vpmultishiftqb 8128(%rdx), %zmm29, %zmm30
510 //CHECK: encoding: [0x62,0x62,0x95,0x40,0x83,0x72,0x7f]
512 vpmultishiftqb 0x2000(%rdx), %zmm29, %zmm30
513 //CHECK: vpmultishiftqb 8192(%rdx), %zmm29, %zmm30
514 //CHECK: encoding: [0x62,0x62,0x95,0x40,0x83,0xb2,0x00,0x20,0x00,0x00]
516 vpmultishiftqb -0x2000(%rdx), %zmm29, %zmm30
517 //CHECK: vpmultishiftqb -8192(%rdx), %zmm29, %zmm30
518 //CHECK: encoding: [0x62,0x62,0x95,0x40,0x83,0x72,0x80]
520 vpmultishiftqb -0x2040(%rdx), %zmm29, %zmm30
521 //CHECK: vpmultishiftqb -8256(%rdx), %zmm29, %zmm30
522 //CHECK: encoding: [0x62,0x62,0x95,0x40,0x83,0xb2,0xc0,0xdf,0xff,0xff]
524 vpmultishiftqb 0x3f8(%rdx){1to8}, %zmm29, %zmm30
525 //CHECK: vpmultishiftqb 1016(%rdx){1to8}, %zmm29, %zmm30
526 //CHECK: encoding: [0x62,0x62,0x95,0x50,0x83,0x72,0x7f]
528 vpmultishiftqb 0x400(%rdx){1to8}, %zmm29, %zmm30
529 //CHECK: vpmultishiftqb 1024(%rdx){1to8}, %zmm29, %zmm30
530 //CHECK: encoding: [0x62,0x62,0x95,0x50,0x83,0xb2,0x00,0x04,0x00,0x00]
532 vpmultishiftqb -0x400(%rdx){1to8}, %zmm29, %zmm30
533 //CHECK: vpmultishiftqb -1024(%rdx){1to8}, %zmm29, %zmm30
534 //CHECK: encoding: [0x62,0x62,0x95,0x50,0x83,0x72,0x80]
536 vpmultishiftqb -0x408(%rdx){1to8}, %zmm29, %zmm30
537 //CHECK: vpmultishiftqb -1032(%rdx){1to8}, %zmm29, %zmm30
538 //CHECK: encoding: [0x62,0x62,0x95,0x50,0x83,0xb2,0xf8,0xfb,0xff,0xff]
540 vpmultishiftqb 0x1234(%rax,%r14,8), %zmm29, %zmm30
541 //CHECK: vpmultishiftqb 4660(%rax,%r14,8), %zmm29, %zmm30
542 //CHECK: encoding: [0x62,0x22,0x95,0x40,0x83,0xb4,0xf0,0x34,0x12,0x00,0x00]