xref: /llvm-project/llvm/test/tools/llvm-mca/X86/Generic/resources-avx512vbmi2vl.s (revision d7208b04045b86fc5e214a5881d507858cb30352)
1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=x86-64 -instruction-tables < %s | FileCheck %s
3
4vpcompressb       %xmm16, %xmm19
5vpcompressb       %xmm16, (%rax)
6vpcompressb       %xmm16, %xmm19 {k1}
7vpcompressb       %xmm16, (%rax) {k1}
8vpcompressb       %xmm16, %xmm19 {k1}{z}
9
10vpcompressb       %ymm16, %ymm19
11vpcompressb       %ymm16, (%rax)
12vpcompressb       %ymm16, %ymm19 {k1}
13vpcompressb       %ymm16, (%rax) {k1}
14vpcompressb       %ymm16, %ymm19 {k1}{z}
15
16vpcompressw       %xmm16, %xmm19
17vpcompressw       %xmm16, (%rax)
18vpcompressw       %xmm16, %xmm19 {k1}
19vpcompressw       %xmm16, (%rax) {k1}
20vpcompressw       %xmm16, %xmm19 {k1}{z}
21
22vpcompressw       %ymm16, %ymm19
23vpcompressw       %ymm16, (%rax)
24vpcompressw       %ymm16, %ymm19 {k1}
25vpcompressw       %ymm16, (%rax) {k1}
26vpcompressw       %ymm16, %ymm19 {k1}{z}
27
28vpexpandb         %xmm16, %xmm19
29vpexpandb         (%rax), %xmm19
30vpexpandb         %xmm16, %xmm19 {k1}
31vpexpandb         (%rax), %xmm19 {k1}
32vpexpandb         %xmm16, %xmm19 {k1}{z}
33
34vpexpandb         %ymm16, %ymm19
35vpexpandb         (%rax), %ymm19
36vpexpandb         %ymm16, %ymm19 {k1}
37vpexpandb         (%rax), %ymm19 {k1}
38vpexpandb         %ymm16, %ymm19 {k1}{z}
39
40vpexpandw         %xmm16, %xmm19
41vpexpandw         (%rax), %xmm19
42vpexpandw         %xmm16, %xmm19 {k1}
43vpexpandw         (%rax), %xmm19 {k1}
44vpexpandw         %xmm16, %xmm19 {k1}{z}
45
46vpexpandw         %ymm16, %ymm19
47vpexpandw         (%rax), %ymm19
48vpexpandw         %ymm16, %ymm19 {k1}
49vpexpandw         (%rax), %ymm19 {k1}
50vpexpandw         %ymm16, %ymm19 {k1}{z}
51
52vpshldd           $1, %xmm16, %xmm17, %xmm19
53vpshldd           $1, (%rax), %xmm17, %xmm19
54vpshldd           $1, (%rax){1to4}, %xmm17, %xmm19
55vpshldd           $1, %xmm16, %xmm17, %xmm19 {k1}
56vpshldd           $1, (%rax), %xmm17, %xmm19 {k1}
57vpshldd           $1, (%rax){1to4}, %xmm17, %xmm19 {k1}
58vpshldd           $1, %xmm16, %xmm17, %xmm19 {k1}{z}
59vpshldd           $1, (%rax), %xmm17, %xmm19 {k1}{z}
60vpshldd           $1, (%rax){1to4}, %xmm17, %xmm19 {k1}{z}
61
62vpshldd           $1, %ymm16, %ymm17, %ymm19
63vpshldd           $1, (%rax), %ymm17, %ymm19
64vpshldd           $1, (%rax){1to8}, %ymm17, %ymm19
65vpshldd           $1, %ymm16, %ymm17, %ymm19 {k1}
66vpshldd           $1, (%rax), %ymm17, %ymm19 {k1}
67vpshldd           $1, (%rax){1to8}, %ymm17, %ymm19 {k1}
68vpshldd           $1, %ymm16, %ymm17, %ymm19 {k1}{z}
69vpshldd           $1, (%rax), %ymm17, %ymm19 {k1}{z}
70vpshldd           $1, (%rax){1to8}, %ymm17, %ymm19 {k1}{z}
71
72vpshldq           $1, %xmm16, %xmm17, %xmm19
73vpshldq           $1, (%rax), %xmm17, %xmm19
74vpshldq           $1, (%rax){1to2}, %xmm17, %xmm19
75vpshldq           $1, %xmm16, %xmm17, %xmm19 {k1}
76vpshldq           $1, (%rax), %xmm17, %xmm19 {k1}
77vpshldq           $1, (%rax){1to2}, %xmm17, %xmm19 {k1}
78vpshldq           $1, %xmm16, %xmm17, %xmm19 {k1}{z}
79vpshldq           $1, (%rax), %xmm17, %xmm19 {k1}{z}
80vpshldq           $1, (%rax){1to2}, %xmm17, %xmm19 {k1}{z}
81
82vpshldq           $1, %ymm16, %ymm17, %ymm19
83vpshldq           $1, (%rax), %ymm17, %ymm19
84vpshldq           $1, (%rax){1to4}, %ymm17, %ymm19
85vpshldq           $1, %ymm16, %ymm17, %ymm19 {k1}
86vpshldq           $1, (%rax), %ymm17, %ymm19 {k1}
87vpshldq           $1, (%rax){1to4}, %ymm17, %ymm19 {k1}
88vpshldq           $1, %ymm16, %ymm17, %ymm19 {k1}{z}
89vpshldq           $1, (%rax), %ymm17, %ymm19 {k1}{z}
90vpshldq           $1, (%rax){1to4}, %ymm17, %ymm19 {k1}{z}
91
92vpshldvd          %xmm16, %xmm17, %xmm19
93vpshldvd          (%rax), %xmm17, %xmm19
94vpshldvd          (%rax){1to4}, %xmm17, %xmm19
95vpshldvd          %xmm16, %xmm17, %xmm19 {k1}
96vpshldvd          (%rax), %xmm17, %xmm19 {k1}
97vpshldvd          (%rax){1to4}, %xmm17, %xmm19 {k1}
98vpshldvd          %xmm16, %xmm17, %xmm19 {k1}{z}
99vpshldvd          (%rax), %xmm17, %xmm19 {k1}{z}
100vpshldvd          (%rax){1to4}, %xmm17, %xmm19 {k1}{z}
101
102vpshldvd          %ymm16, %ymm17, %ymm19
103vpshldvd          (%rax), %ymm17, %ymm19
104vpshldvd          (%rax){1to8}, %ymm17, %ymm19
105vpshldvd          %ymm16, %ymm17, %ymm19 {k1}
106vpshldvd          (%rax), %ymm17, %ymm19 {k1}
107vpshldvd          (%rax){1to8}, %ymm17, %ymm19 {k1}
108vpshldvd          %ymm16, %ymm17, %ymm19 {k1}{z}
109vpshldvd          (%rax), %ymm17, %ymm19 {k1}{z}
110vpshldvd          (%rax){1to8}, %ymm17, %ymm19 {k1}{z}
111
112vpshldvq          %xmm16, %xmm17, %xmm19
113vpshldvq          (%rax), %xmm17, %xmm19
114vpshldvq          (%rax){1to2}, %xmm17, %xmm19
115vpshldvq          %xmm16, %xmm17, %xmm19 {k1}
116vpshldvq          (%rax), %xmm17, %xmm19 {k1}
117vpshldvq          (%rax){1to2}, %xmm17, %xmm19 {k1}
118vpshldvq          %xmm16, %xmm17, %xmm19 {k1}{z}
119vpshldvq          (%rax), %xmm17, %xmm19 {k1}{z}
120vpshldvq          (%rax){1to2}, %xmm17, %xmm19 {k1}{z}
121
122vpshldvq          %ymm16, %ymm17, %ymm19
123vpshldvq          (%rax), %ymm17, %ymm19
124vpshldvq          (%rax){1to4}, %ymm17, %ymm19
125vpshldvq          %ymm16, %ymm17, %ymm19 {k1}
126vpshldvq          (%rax), %ymm17, %ymm19 {k1}
127vpshldvq          (%rax){1to4}, %ymm17, %ymm19 {k1}
128vpshldvq          %ymm16, %ymm17, %ymm19 {k1}{z}
129vpshldvq          (%rax), %ymm17, %ymm19 {k1}{z}
130vpshldvq          (%rax){1to4}, %ymm17, %ymm19 {k1}{z}
131
132vpshldvw          %xmm16, %xmm17, %xmm19
133vpshldvw          (%rax), %xmm17, %xmm19
134vpshldvw          %xmm16, %xmm17, %xmm19 {k1}
135vpshldvw          (%rax), %xmm17, %xmm19 {k1}
136vpshldvw          %xmm16, %xmm17, %xmm19 {k1}{z}
137vpshldvw          (%rax), %xmm17, %xmm19 {k1}{z}
138
139vpshldvw          %ymm16, %ymm17, %ymm19
140vpshldvw          (%rax), %ymm17, %ymm19
141vpshldvw          %ymm16, %ymm17, %ymm19 {k1}
142vpshldvw          (%rax), %ymm17, %ymm19 {k1}
143vpshldvw          %ymm16, %ymm17, %ymm19 {k1}{z}
144vpshldvw          (%rax), %ymm17, %ymm19 {k1}{z}
145
146vpshldw           $1, %xmm16, %xmm17, %xmm19
147vpshldw           $1, (%rax), %xmm17, %xmm19
148vpshldw           $1, %xmm16, %xmm17, %xmm19 {k1}
149vpshldw           $1, (%rax), %xmm17, %xmm19 {k1}
150vpshldw           $1, %xmm16, %xmm17, %xmm19 {k1}{z}
151vpshldw           $1, (%rax), %xmm17, %xmm19 {k1}{z}
152
153vpshldw           $1, %ymm16, %ymm17, %ymm19
154vpshldw           $1, (%rax), %ymm17, %ymm19
155vpshldw           $1, %ymm16, %ymm17, %ymm19 {k1}
156vpshldw           $1, (%rax), %ymm17, %ymm19 {k1}
157vpshldw           $1, %ymm16, %ymm17, %ymm19 {k1}{z}
158vpshldw           $1, (%rax), %ymm17, %ymm19 {k1}{z}
159
160vpshrdd           $1, %xmm16, %xmm17, %xmm19
161vpshrdd           $1, (%rax), %xmm17, %xmm19
162vpshrdd           $1, (%rax){1to4}, %xmm17, %xmm19
163vpshrdd           $1, %xmm16, %xmm17, %xmm19 {k1}
164vpshrdd           $1, (%rax), %xmm17, %xmm19 {k1}
165vpshrdd           $1, (%rax){1to4}, %xmm17, %xmm19 {k1}
166vpshrdd           $1, %xmm16, %xmm17, %xmm19 {k1}{z}
167vpshrdd           $1, (%rax), %xmm17, %xmm19 {k1}{z}
168vpshrdd           $1, (%rax){1to4}, %xmm17, %xmm19 {k1}{z}
169
170vpshrdd           $1, %ymm16, %ymm17, %ymm19
171vpshrdd           $1, (%rax), %ymm17, %ymm19
172vpshrdd           $1, (%rax){1to8}, %ymm17, %ymm19
173vpshrdd           $1, %ymm16, %ymm17, %ymm19 {k1}
174vpshrdd           $1, (%rax), %ymm17, %ymm19 {k1}
175vpshrdd           $1, (%rax){1to8}, %ymm17, %ymm19 {k1}
176vpshrdd           $1, %ymm16, %ymm17, %ymm19 {k1}{z}
177vpshrdd           $1, (%rax), %ymm17, %ymm19 {k1}{z}
178vpshrdd           $1, (%rax){1to8}, %ymm17, %ymm19 {k1}{z}
179
180vpshrdq           $1, %xmm16, %xmm17, %xmm19
181vpshrdq           $1, (%rax), %xmm17, %xmm19
182vpshrdq           $1, (%rax){1to2}, %xmm17, %xmm19
183vpshrdq           $1, %xmm16, %xmm17, %xmm19 {k1}
184vpshrdq           $1, (%rax), %xmm17, %xmm19 {k1}
185vpshrdq           $1, (%rax){1to2}, %xmm17, %xmm19 {k1}
186vpshrdq           $1, %xmm16, %xmm17, %xmm19 {k1}{z}
187vpshrdq           $1, (%rax), %xmm17, %xmm19 {k1}{z}
188vpshrdq           $1, (%rax){1to2}, %xmm17, %xmm19 {k1}{z}
189
190vpshrdq           $1, %ymm16, %ymm17, %ymm19
191vpshrdq           $1, (%rax), %ymm17, %ymm19
192vpshrdq           $1, (%rax){1to4}, %ymm17, %ymm19
193vpshrdq           $1, %ymm16, %ymm17, %ymm19 {k1}
194vpshrdq           $1, (%rax), %ymm17, %ymm19 {k1}
195vpshrdq           $1, (%rax){1to4}, %ymm17, %ymm19 {k1}
196vpshrdq           $1, %ymm16, %ymm17, %ymm19 {k1}{z}
197vpshrdq           $1, (%rax), %ymm17, %ymm19 {k1}{z}
198vpshrdq           $1, (%rax){1to4}, %ymm17, %ymm19 {k1}{z}
199
200vpshrdvd          %xmm16, %xmm17, %xmm19
201vpshrdvd          (%rax), %xmm17, %xmm19
202vpshrdvd          (%rax){1to4}, %xmm17, %xmm19
203vpshrdvd          %xmm16, %xmm17, %xmm19 {k1}
204vpshrdvd          (%rax), %xmm17, %xmm19 {k1}
205vpshrdvd          (%rax){1to4}, %xmm17, %xmm19 {k1}
206vpshrdvd          %xmm16, %xmm17, %xmm19 {k1}{z}
207vpshrdvd          (%rax), %xmm17, %xmm19 {k1}{z}
208vpshrdvd          (%rax){1to4}, %xmm17, %xmm19 {k1}{z}
209
210vpshrdvd          %ymm16, %ymm17, %ymm19
211vpshrdvd          (%rax), %ymm17, %ymm19
212vpshrdvd          (%rax){1to8}, %ymm17, %ymm19
213vpshrdvd          %ymm16, %ymm17, %ymm19 {k1}
214vpshrdvd          (%rax), %ymm17, %ymm19 {k1}
215vpshrdvd          (%rax){1to8}, %ymm17, %ymm19 {k1}
216vpshrdvd          %ymm16, %ymm17, %ymm19 {k1}{z}
217vpshrdvd          (%rax), %ymm17, %ymm19 {k1}{z}
218vpshrdvd          (%rax){1to8}, %ymm17, %ymm19 {k1}{z}
219
220vpshrdvq          %xmm16, %xmm17, %xmm19
221vpshrdvq          (%rax), %xmm17, %xmm19
222vpshrdvq          (%rax){1to2}, %xmm17, %xmm19
223vpshrdvq          %xmm16, %xmm17, %xmm19 {k1}
224vpshrdvq          (%rax), %xmm17, %xmm19 {k1}
225vpshrdvq          (%rax){1to2}, %xmm17, %xmm19 {k1}
226vpshrdvq          %xmm16, %xmm17, %xmm19 {k1}{z}
227vpshrdvq          (%rax), %xmm17, %xmm19 {k1}{z}
228vpshrdvq          (%rax){1to2}, %xmm17, %xmm19 {k1}{z}
229
230vpshrdvq          %ymm16, %ymm17, %ymm19
231vpshrdvq          (%rax), %ymm17, %ymm19
232vpshrdvq          (%rax){1to4}, %ymm17, %ymm19
233vpshrdvq          %ymm16, %ymm17, %ymm19 {k1}
234vpshrdvq          (%rax), %ymm17, %ymm19 {k1}
235vpshrdvq          (%rax){1to4}, %ymm17, %ymm19 {k1}
236vpshrdvq          %ymm16, %ymm17, %ymm19 {k1}{z}
237vpshrdvq          (%rax), %ymm17, %ymm19 {k1}{z}
238vpshrdvq          (%rax){1to4}, %ymm17, %ymm19 {k1}{z}
239
240vpshrdvw          %xmm16, %xmm17, %xmm19
241vpshrdvw          (%rax), %xmm17, %xmm19
242vpshrdvw          %xmm16, %xmm17, %xmm19 {k1}
243vpshrdvw          (%rax), %xmm17, %xmm19 {k1}
244vpshrdvw          %xmm16, %xmm17, %xmm19 {k1}{z}
245vpshrdvw          (%rax), %xmm17, %xmm19 {k1}{z}
246
247vpshrdvw          %ymm16, %ymm17, %ymm19
248vpshrdvw          (%rax), %ymm17, %ymm19
249vpshrdvw          %ymm16, %ymm17, %ymm19 {k1}
250vpshrdvw          (%rax), %ymm17, %ymm19 {k1}
251vpshrdvw          %ymm16, %ymm17, %ymm19 {k1}{z}
252vpshrdvw          (%rax), %ymm17, %ymm19 {k1}{z}
253
254vpshrdw           $1, %xmm16, %xmm17, %xmm19
255vpshrdw           $1, (%rax), %xmm17, %xmm19
256vpshrdw           $1, %xmm16, %xmm17, %xmm19 {k1}
257vpshrdw           $1, (%rax), %xmm17, %xmm19 {k1}
258vpshrdw           $1, %xmm16, %xmm17, %xmm19 {k1}{z}
259vpshrdw           $1, (%rax), %xmm17, %xmm19 {k1}{z}
260
261vpshrdw           $1, %ymm16, %ymm17, %ymm19
262vpshrdw           $1, (%rax), %ymm17, %ymm19
263vpshrdw           $1, %ymm16, %ymm17, %ymm19 {k1}
264vpshrdw           $1, (%rax), %ymm17, %ymm19 {k1}
265vpshrdw           $1, %ymm16, %ymm17, %ymm19 {k1}{z}
266vpshrdw           $1, (%rax), %ymm17, %ymm19 {k1}{z}
267
268# CHECK:      Instruction Info:
269# CHECK-NEXT: [1]: #uOps
270# CHECK-NEXT: [2]: Latency
271# CHECK-NEXT: [3]: RThroughput
272# CHECK-NEXT: [4]: MayLoad
273# CHECK-NEXT: [5]: MayStore
274# CHECK-NEXT: [6]: HasSideEffects (U)
275
276# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
277# CHECK-NEXT:  1      1     1.00                  U     vpcompressb	%xmm16, %xmm19
278# CHECK-NEXT:  2      8     1.00           *            vpcompressb	%xmm16, (%rax)
279# CHECK-NEXT:  1      1     1.00                        vpcompressb	%xmm16, %xmm19 {%k1}
280# CHECK-NEXT:  2      8     1.00           *            vpcompressb	%xmm16, (%rax) {%k1}
281# CHECK-NEXT:  1      1     1.00                        vpcompressb	%xmm16, %xmm19 {%k1} {z}
282# CHECK-NEXT:  1      1     1.00                  U     vpcompressb	%ymm16, %ymm19
283# CHECK-NEXT:  2      8     1.00           *            vpcompressb	%ymm16, (%rax)
284# CHECK-NEXT:  1      1     1.00                        vpcompressb	%ymm16, %ymm19 {%k1}
285# CHECK-NEXT:  2      8     1.00           *            vpcompressb	%ymm16, (%rax) {%k1}
286# CHECK-NEXT:  1      1     1.00                        vpcompressb	%ymm16, %ymm19 {%k1} {z}
287# CHECK-NEXT:  1      1     1.00                  U     vpcompressw	%xmm16, %xmm19
288# CHECK-NEXT:  2      8     1.00           *            vpcompressw	%xmm16, (%rax)
289# CHECK-NEXT:  1      1     1.00                        vpcompressw	%xmm16, %xmm19 {%k1}
290# CHECK-NEXT:  2      8     1.00           *            vpcompressw	%xmm16, (%rax) {%k1}
291# CHECK-NEXT:  1      1     1.00                        vpcompressw	%xmm16, %xmm19 {%k1} {z}
292# CHECK-NEXT:  1      1     1.00                  U     vpcompressw	%ymm16, %ymm19
293# CHECK-NEXT:  2      8     1.00           *            vpcompressw	%ymm16, (%rax)
294# CHECK-NEXT:  1      1     1.00                        vpcompressw	%ymm16, %ymm19 {%k1}
295# CHECK-NEXT:  2      8     1.00           *            vpcompressw	%ymm16, (%rax) {%k1}
296# CHECK-NEXT:  1      1     1.00                        vpcompressw	%ymm16, %ymm19 {%k1} {z}
297# CHECK-NEXT:  1      1     1.00                  U     vpexpandb	%xmm16, %xmm19
298# CHECK-NEXT:  2      8     1.00                  U     vpexpandb	(%rax), %xmm19
299# CHECK-NEXT:  1      1     1.00                        vpexpandb	%xmm16, %xmm19 {%k1}
300# CHECK-NEXT:  2      8     1.00    *                   vpexpandb	(%rax), %xmm19 {%k1}
301# CHECK-NEXT:  1      1     1.00                        vpexpandb	%xmm16, %xmm19 {%k1} {z}
302# CHECK-NEXT:  1      1     1.00                  U     vpexpandb	%ymm16, %ymm19
303# CHECK-NEXT:  2      8     1.00                  U     vpexpandb	(%rax), %ymm19
304# CHECK-NEXT:  1      1     1.00                        vpexpandb	%ymm16, %ymm19 {%k1}
305# CHECK-NEXT:  2      8     1.00    *                   vpexpandb	(%rax), %ymm19 {%k1}
306# CHECK-NEXT:  1      1     1.00                        vpexpandb	%ymm16, %ymm19 {%k1} {z}
307# CHECK-NEXT:  1      1     1.00                  U     vpexpandw	%xmm16, %xmm19
308# CHECK-NEXT:  2      8     1.00                  U     vpexpandw	(%rax), %xmm19
309# CHECK-NEXT:  1      1     1.00                        vpexpandw	%xmm16, %xmm19 {%k1}
310# CHECK-NEXT:  2      8     1.00    *                   vpexpandw	(%rax), %xmm19 {%k1}
311# CHECK-NEXT:  1      1     1.00                        vpexpandw	%xmm16, %xmm19 {%k1} {z}
312# CHECK-NEXT:  1      1     1.00                  U     vpexpandw	%ymm16, %ymm19
313# CHECK-NEXT:  2      8     1.00                  U     vpexpandw	(%rax), %ymm19
314# CHECK-NEXT:  1      1     1.00                        vpexpandw	%ymm16, %ymm19 {%k1}
315# CHECK-NEXT:  2      8     1.00    *                   vpexpandw	(%rax), %ymm19 {%k1}
316# CHECK-NEXT:  1      1     1.00                        vpexpandw	%ymm16, %ymm19 {%k1} {z}
317# CHECK-NEXT:  1      5     1.00                        vpshldd	$1, %xmm16, %xmm17, %xmm19
318# CHECK-NEXT:  2      11    1.00    *                   vpshldd	$1, (%rax), %xmm17, %xmm19
319# CHECK-NEXT:  2      11    1.00    *                   vpshldd	$1, (%rax){1to4}, %xmm17, %xmm19
320# CHECK-NEXT:  1      5     1.00                        vpshldd	$1, %xmm16, %xmm17, %xmm19 {%k1}
321# CHECK-NEXT:  2      11    1.00    *                   vpshldd	$1, (%rax), %xmm17, %xmm19 {%k1}
322# CHECK-NEXT:  2      11    1.00    *                   vpshldd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1}
323# CHECK-NEXT:  1      5     1.00                        vpshldd	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
324# CHECK-NEXT:  2      11    1.00    *                   vpshldd	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
325# CHECK-NEXT:  2      11    1.00    *                   vpshldd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
326# CHECK-NEXT:  1      5     1.00                        vpshldd	$1, %ymm16, %ymm17, %ymm19
327# CHECK-NEXT:  2      12    1.00    *                   vpshldd	$1, (%rax), %ymm17, %ymm19
328# CHECK-NEXT:  2      12    1.00    *                   vpshldd	$1, (%rax){1to8}, %ymm17, %ymm19
329# CHECK-NEXT:  1      5     1.00                        vpshldd	$1, %ymm16, %ymm17, %ymm19 {%k1}
330# CHECK-NEXT:  2      12    1.00    *                   vpshldd	$1, (%rax), %ymm17, %ymm19 {%k1}
331# CHECK-NEXT:  2      12    1.00    *                   vpshldd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1}
332# CHECK-NEXT:  1      5     1.00                        vpshldd	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
333# CHECK-NEXT:  2      12    1.00    *                   vpshldd	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
334# CHECK-NEXT:  2      12    1.00    *                   vpshldd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
335# CHECK-NEXT:  1      5     1.00                        vpshldq	$1, %xmm16, %xmm17, %xmm19
336# CHECK-NEXT:  2      11    1.00    *                   vpshldq	$1, (%rax), %xmm17, %xmm19
337# CHECK-NEXT:  2      11    1.00    *                   vpshldq	$1, (%rax){1to2}, %xmm17, %xmm19
338# CHECK-NEXT:  1      5     1.00                        vpshldq	$1, %xmm16, %xmm17, %xmm19 {%k1}
339# CHECK-NEXT:  2      11    1.00    *                   vpshldq	$1, (%rax), %xmm17, %xmm19 {%k1}
340# CHECK-NEXT:  2      11    1.00    *                   vpshldq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1}
341# CHECK-NEXT:  1      5     1.00                        vpshldq	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
342# CHECK-NEXT:  2      11    1.00    *                   vpshldq	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
343# CHECK-NEXT:  2      11    1.00    *                   vpshldq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
344# CHECK-NEXT:  1      5     1.00                        vpshldq	$1, %ymm16, %ymm17, %ymm19
345# CHECK-NEXT:  2      12    1.00    *                   vpshldq	$1, (%rax), %ymm17, %ymm19
346# CHECK-NEXT:  2      12    1.00    *                   vpshldq	$1, (%rax){1to4}, %ymm17, %ymm19
347# CHECK-NEXT:  1      5     1.00                        vpshldq	$1, %ymm16, %ymm17, %ymm19 {%k1}
348# CHECK-NEXT:  2      12    1.00    *                   vpshldq	$1, (%rax), %ymm17, %ymm19 {%k1}
349# CHECK-NEXT:  2      12    1.00    *                   vpshldq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1}
350# CHECK-NEXT:  1      5     1.00                        vpshldq	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
351# CHECK-NEXT:  2      12    1.00    *                   vpshldq	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
352# CHECK-NEXT:  2      12    1.00    *                   vpshldq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
353# CHECK-NEXT:  1      5     1.00                        vpshldvd	%xmm16, %xmm17, %xmm19
354# CHECK-NEXT:  2      11    1.00    *                   vpshldvd	(%rax), %xmm17, %xmm19
355# CHECK-NEXT:  2      11    1.00    *                   vpshldvd	(%rax){1to4}, %xmm17, %xmm19
356# CHECK-NEXT:  1      5     1.00                        vpshldvd	%xmm16, %xmm17, %xmm19 {%k1}
357# CHECK-NEXT:  2      11    1.00    *                   vpshldvd	(%rax), %xmm17, %xmm19 {%k1}
358# CHECK-NEXT:  2      11    1.00    *                   vpshldvd	(%rax){1to4}, %xmm17, %xmm19 {%k1}
359# CHECK-NEXT:  1      5     1.00                        vpshldvd	%xmm16, %xmm17, %xmm19 {%k1} {z}
360# CHECK-NEXT:  2      11    1.00    *                   vpshldvd	(%rax), %xmm17, %xmm19 {%k1} {z}
361# CHECK-NEXT:  2      11    1.00    *                   vpshldvd	(%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
362# CHECK-NEXT:  1      5     1.00                        vpshldvd	%ymm16, %ymm17, %ymm19
363# CHECK-NEXT:  2      12    1.00    *                   vpshldvd	(%rax), %ymm17, %ymm19
364# CHECK-NEXT:  2      12    1.00    *                   vpshldvd	(%rax){1to8}, %ymm17, %ymm19
365# CHECK-NEXT:  1      5     1.00                        vpshldvd	%ymm16, %ymm17, %ymm19 {%k1}
366# CHECK-NEXT:  2      12    1.00    *                   vpshldvd	(%rax), %ymm17, %ymm19 {%k1}
367# CHECK-NEXT:  2      12    1.00    *                   vpshldvd	(%rax){1to8}, %ymm17, %ymm19 {%k1}
368# CHECK-NEXT:  1      5     1.00                        vpshldvd	%ymm16, %ymm17, %ymm19 {%k1} {z}
369# CHECK-NEXT:  2      12    1.00    *                   vpshldvd	(%rax), %ymm17, %ymm19 {%k1} {z}
370# CHECK-NEXT:  2      12    1.00    *                   vpshldvd	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
371# CHECK-NEXT:  1      5     1.00                        vpshldvq	%xmm16, %xmm17, %xmm19
372# CHECK-NEXT:  2      11    1.00    *                   vpshldvq	(%rax), %xmm17, %xmm19
373# CHECK-NEXT:  2      11    1.00    *                   vpshldvq	(%rax){1to2}, %xmm17, %xmm19
374# CHECK-NEXT:  1      5     1.00                        vpshldvq	%xmm16, %xmm17, %xmm19 {%k1}
375# CHECK-NEXT:  2      11    1.00    *                   vpshldvq	(%rax), %xmm17, %xmm19 {%k1}
376# CHECK-NEXT:  2      11    1.00    *                   vpshldvq	(%rax){1to2}, %xmm17, %xmm19 {%k1}
377# CHECK-NEXT:  1      5     1.00                        vpshldvq	%xmm16, %xmm17, %xmm19 {%k1} {z}
378# CHECK-NEXT:  2      11    1.00    *                   vpshldvq	(%rax), %xmm17, %xmm19 {%k1} {z}
379# CHECK-NEXT:  2      11    1.00    *                   vpshldvq	(%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
380# CHECK-NEXT:  1      5     1.00                        vpshldvq	%ymm16, %ymm17, %ymm19
381# CHECK-NEXT:  2      12    1.00    *                   vpshldvq	(%rax), %ymm17, %ymm19
382# CHECK-NEXT:  2      12    1.00    *                   vpshldvq	(%rax){1to4}, %ymm17, %ymm19
383# CHECK-NEXT:  1      5     1.00                        vpshldvq	%ymm16, %ymm17, %ymm19 {%k1}
384# CHECK-NEXT:  2      12    1.00    *                   vpshldvq	(%rax), %ymm17, %ymm19 {%k1}
385# CHECK-NEXT:  2      12    1.00    *                   vpshldvq	(%rax){1to4}, %ymm17, %ymm19 {%k1}
386# CHECK-NEXT:  1      5     1.00                        vpshldvq	%ymm16, %ymm17, %ymm19 {%k1} {z}
387# CHECK-NEXT:  2      12    1.00    *                   vpshldvq	(%rax), %ymm17, %ymm19 {%k1} {z}
388# CHECK-NEXT:  2      12    1.00    *                   vpshldvq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
389# CHECK-NEXT:  1      5     1.00                        vpshldvw	%xmm16, %xmm17, %xmm19
390# CHECK-NEXT:  2      11    1.00    *                   vpshldvw	(%rax), %xmm17, %xmm19
391# CHECK-NEXT:  1      5     1.00                        vpshldvw	%xmm16, %xmm17, %xmm19 {%k1}
392# CHECK-NEXT:  2      11    1.00    *                   vpshldvw	(%rax), %xmm17, %xmm19 {%k1}
393# CHECK-NEXT:  1      5     1.00                        vpshldvw	%xmm16, %xmm17, %xmm19 {%k1} {z}
394# CHECK-NEXT:  2      11    1.00    *                   vpshldvw	(%rax), %xmm17, %xmm19 {%k1} {z}
395# CHECK-NEXT:  1      5     1.00                        vpshldvw	%ymm16, %ymm17, %ymm19
396# CHECK-NEXT:  2      12    1.00    *                   vpshldvw	(%rax), %ymm17, %ymm19
397# CHECK-NEXT:  1      5     1.00                        vpshldvw	%ymm16, %ymm17, %ymm19 {%k1}
398# CHECK-NEXT:  2      12    1.00    *                   vpshldvw	(%rax), %ymm17, %ymm19 {%k1}
399# CHECK-NEXT:  1      5     1.00                        vpshldvw	%ymm16, %ymm17, %ymm19 {%k1} {z}
400# CHECK-NEXT:  2      12    1.00    *                   vpshldvw	(%rax), %ymm17, %ymm19 {%k1} {z}
401# CHECK-NEXT:  1      5     1.00                        vpshldw	$1, %xmm16, %xmm17, %xmm19
402# CHECK-NEXT:  2      11    1.00    *                   vpshldw	$1, (%rax), %xmm17, %xmm19
403# CHECK-NEXT:  1      5     1.00                        vpshldw	$1, %xmm16, %xmm17, %xmm19 {%k1}
404# CHECK-NEXT:  2      11    1.00    *                   vpshldw	$1, (%rax), %xmm17, %xmm19 {%k1}
405# CHECK-NEXT:  1      5     1.00                        vpshldw	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
406# CHECK-NEXT:  2      11    1.00    *                   vpshldw	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
407# CHECK-NEXT:  1      5     1.00                        vpshldw	$1, %ymm16, %ymm17, %ymm19
408# CHECK-NEXT:  2      12    1.00    *                   vpshldw	$1, (%rax), %ymm17, %ymm19
409# CHECK-NEXT:  1      5     1.00                        vpshldw	$1, %ymm16, %ymm17, %ymm19 {%k1}
410# CHECK-NEXT:  2      12    1.00    *                   vpshldw	$1, (%rax), %ymm17, %ymm19 {%k1}
411# CHECK-NEXT:  1      5     1.00                        vpshldw	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
412# CHECK-NEXT:  2      12    1.00    *                   vpshldw	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
413# CHECK-NEXT:  1      5     1.00                        vpshrdd	$1, %xmm16, %xmm17, %xmm19
414# CHECK-NEXT:  2      11    1.00    *                   vpshrdd	$1, (%rax), %xmm17, %xmm19
415# CHECK-NEXT:  2      11    1.00    *                   vpshrdd	$1, (%rax){1to4}, %xmm17, %xmm19
416# CHECK-NEXT:  1      5     1.00                        vpshrdd	$1, %xmm16, %xmm17, %xmm19 {%k1}
417# CHECK-NEXT:  2      11    1.00    *                   vpshrdd	$1, (%rax), %xmm17, %xmm19 {%k1}
418# CHECK-NEXT:  2      11    1.00    *                   vpshrdd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1}
419# CHECK-NEXT:  1      5     1.00                        vpshrdd	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
420# CHECK-NEXT:  2      11    1.00    *                   vpshrdd	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
421# CHECK-NEXT:  2      11    1.00    *                   vpshrdd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
422# CHECK-NEXT:  1      5     1.00                        vpshrdd	$1, %ymm16, %ymm17, %ymm19
423# CHECK-NEXT:  2      12    1.00    *                   vpshrdd	$1, (%rax), %ymm17, %ymm19
424# CHECK-NEXT:  2      12    1.00    *                   vpshrdd	$1, (%rax){1to8}, %ymm17, %ymm19
425# CHECK-NEXT:  1      5     1.00                        vpshrdd	$1, %ymm16, %ymm17, %ymm19 {%k1}
426# CHECK-NEXT:  2      12    1.00    *                   vpshrdd	$1, (%rax), %ymm17, %ymm19 {%k1}
427# CHECK-NEXT:  2      12    1.00    *                   vpshrdd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1}
428# CHECK-NEXT:  1      5     1.00                        vpshrdd	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
429# CHECK-NEXT:  2      12    1.00    *                   vpshrdd	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
430# CHECK-NEXT:  2      12    1.00    *                   vpshrdd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
431# CHECK-NEXT:  1      5     1.00                        vpshrdq	$1, %xmm16, %xmm17, %xmm19
432# CHECK-NEXT:  2      11    1.00    *                   vpshrdq	$1, (%rax), %xmm17, %xmm19
433# CHECK-NEXT:  2      11    1.00    *                   vpshrdq	$1, (%rax){1to2}, %xmm17, %xmm19
434# CHECK-NEXT:  1      5     1.00                        vpshrdq	$1, %xmm16, %xmm17, %xmm19 {%k1}
435# CHECK-NEXT:  2      11    1.00    *                   vpshrdq	$1, (%rax), %xmm17, %xmm19 {%k1}
436# CHECK-NEXT:  2      11    1.00    *                   vpshrdq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1}
437# CHECK-NEXT:  1      5     1.00                        vpshrdq	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
438# CHECK-NEXT:  2      11    1.00    *                   vpshrdq	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
439# CHECK-NEXT:  2      11    1.00    *                   vpshrdq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
440# CHECK-NEXT:  1      5     1.00                        vpshrdq	$1, %ymm16, %ymm17, %ymm19
441# CHECK-NEXT:  2      12    1.00    *                   vpshrdq	$1, (%rax), %ymm17, %ymm19
442# CHECK-NEXT:  2      12    1.00    *                   vpshrdq	$1, (%rax){1to4}, %ymm17, %ymm19
443# CHECK-NEXT:  1      5     1.00                        vpshrdq	$1, %ymm16, %ymm17, %ymm19 {%k1}
444# CHECK-NEXT:  2      12    1.00    *                   vpshrdq	$1, (%rax), %ymm17, %ymm19 {%k1}
445# CHECK-NEXT:  2      12    1.00    *                   vpshrdq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1}
446# CHECK-NEXT:  1      5     1.00                        vpshrdq	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
447# CHECK-NEXT:  2      12    1.00    *                   vpshrdq	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
448# CHECK-NEXT:  2      12    1.00    *                   vpshrdq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
449# CHECK-NEXT:  1      5     1.00                        vpshrdvd	%xmm16, %xmm17, %xmm19
450# CHECK-NEXT:  2      11    1.00    *                   vpshrdvd	(%rax), %xmm17, %xmm19
451# CHECK-NEXT:  2      11    1.00    *                   vpshrdvd	(%rax){1to4}, %xmm17, %xmm19
452# CHECK-NEXT:  1      5     1.00                        vpshrdvd	%xmm16, %xmm17, %xmm19 {%k1}
453# CHECK-NEXT:  2      11    1.00    *                   vpshrdvd	(%rax), %xmm17, %xmm19 {%k1}
454# CHECK-NEXT:  2      11    1.00    *                   vpshrdvd	(%rax){1to4}, %xmm17, %xmm19 {%k1}
455# CHECK-NEXT:  1      5     1.00                        vpshrdvd	%xmm16, %xmm17, %xmm19 {%k1} {z}
456# CHECK-NEXT:  2      11    1.00    *                   vpshrdvd	(%rax), %xmm17, %xmm19 {%k1} {z}
457# CHECK-NEXT:  2      11    1.00    *                   vpshrdvd	(%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
458# CHECK-NEXT:  1      5     1.00                        vpshrdvd	%ymm16, %ymm17, %ymm19
459# CHECK-NEXT:  2      12    1.00    *                   vpshrdvd	(%rax), %ymm17, %ymm19
460# CHECK-NEXT:  2      12    1.00    *                   vpshrdvd	(%rax){1to8}, %ymm17, %ymm19
461# CHECK-NEXT:  1      5     1.00                        vpshrdvd	%ymm16, %ymm17, %ymm19 {%k1}
462# CHECK-NEXT:  2      12    1.00    *                   vpshrdvd	(%rax), %ymm17, %ymm19 {%k1}
463# CHECK-NEXT:  2      12    1.00    *                   vpshrdvd	(%rax){1to8}, %ymm17, %ymm19 {%k1}
464# CHECK-NEXT:  1      5     1.00                        vpshrdvd	%ymm16, %ymm17, %ymm19 {%k1} {z}
465# CHECK-NEXT:  2      12    1.00    *                   vpshrdvd	(%rax), %ymm17, %ymm19 {%k1} {z}
466# CHECK-NEXT:  2      12    1.00    *                   vpshrdvd	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
467# CHECK-NEXT:  1      5     1.00                        vpshrdvq	%xmm16, %xmm17, %xmm19
468# CHECK-NEXT:  2      11    1.00    *                   vpshrdvq	(%rax), %xmm17, %xmm19
469# CHECK-NEXT:  2      11    1.00    *                   vpshrdvq	(%rax){1to2}, %xmm17, %xmm19
470# CHECK-NEXT:  1      5     1.00                        vpshrdvq	%xmm16, %xmm17, %xmm19 {%k1}
471# CHECK-NEXT:  2      11    1.00    *                   vpshrdvq	(%rax), %xmm17, %xmm19 {%k1}
472# CHECK-NEXT:  2      11    1.00    *                   vpshrdvq	(%rax){1to2}, %xmm17, %xmm19 {%k1}
473# CHECK-NEXT:  1      5     1.00                        vpshrdvq	%xmm16, %xmm17, %xmm19 {%k1} {z}
474# CHECK-NEXT:  2      11    1.00    *                   vpshrdvq	(%rax), %xmm17, %xmm19 {%k1} {z}
475# CHECK-NEXT:  2      11    1.00    *                   vpshrdvq	(%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
476# CHECK-NEXT:  1      5     1.00                        vpshrdvq	%ymm16, %ymm17, %ymm19
477# CHECK-NEXT:  2      12    1.00    *                   vpshrdvq	(%rax), %ymm17, %ymm19
478# CHECK-NEXT:  2      12    1.00    *                   vpshrdvq	(%rax){1to4}, %ymm17, %ymm19
479# CHECK-NEXT:  1      5     1.00                        vpshrdvq	%ymm16, %ymm17, %ymm19 {%k1}
480# CHECK-NEXT:  2      12    1.00    *                   vpshrdvq	(%rax), %ymm17, %ymm19 {%k1}
481# CHECK-NEXT:  2      12    1.00    *                   vpshrdvq	(%rax){1to4}, %ymm17, %ymm19 {%k1}
482# CHECK-NEXT:  1      5     1.00                        vpshrdvq	%ymm16, %ymm17, %ymm19 {%k1} {z}
483# CHECK-NEXT:  2      12    1.00    *                   vpshrdvq	(%rax), %ymm17, %ymm19 {%k1} {z}
484# CHECK-NEXT:  2      12    1.00    *                   vpshrdvq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
485# CHECK-NEXT:  1      5     1.00                        vpshrdvw	%xmm16, %xmm17, %xmm19
486# CHECK-NEXT:  2      11    1.00    *                   vpshrdvw	(%rax), %xmm17, %xmm19
487# CHECK-NEXT:  1      5     1.00                        vpshrdvw	%xmm16, %xmm17, %xmm19 {%k1}
488# CHECK-NEXT:  2      11    1.00    *                   vpshrdvw	(%rax), %xmm17, %xmm19 {%k1}
489# CHECK-NEXT:  1      5     1.00                        vpshrdvw	%xmm16, %xmm17, %xmm19 {%k1} {z}
490# CHECK-NEXT:  2      11    1.00    *                   vpshrdvw	(%rax), %xmm17, %xmm19 {%k1} {z}
491# CHECK-NEXT:  1      5     1.00                        vpshrdvw	%ymm16, %ymm17, %ymm19
492# CHECK-NEXT:  2      12    1.00    *                   vpshrdvw	(%rax), %ymm17, %ymm19
493# CHECK-NEXT:  1      5     1.00                        vpshrdvw	%ymm16, %ymm17, %ymm19 {%k1}
494# CHECK-NEXT:  2      12    1.00    *                   vpshrdvw	(%rax), %ymm17, %ymm19 {%k1}
495# CHECK-NEXT:  1      5     1.00                        vpshrdvw	%ymm16, %ymm17, %ymm19 {%k1} {z}
496# CHECK-NEXT:  2      12    1.00    *                   vpshrdvw	(%rax), %ymm17, %ymm19 {%k1} {z}
497# CHECK-NEXT:  1      5     1.00                        vpshrdw	$1, %xmm16, %xmm17, %xmm19
498# CHECK-NEXT:  2      11    1.00    *                   vpshrdw	$1, (%rax), %xmm17, %xmm19
499# CHECK-NEXT:  1      5     1.00                        vpshrdw	$1, %xmm16, %xmm17, %xmm19 {%k1}
500# CHECK-NEXT:  2      11    1.00    *                   vpshrdw	$1, (%rax), %xmm17, %xmm19 {%k1}
501# CHECK-NEXT:  1      5     1.00                        vpshrdw	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
502# CHECK-NEXT:  2      11    1.00    *                   vpshrdw	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
503# CHECK-NEXT:  1      5     1.00                        vpshrdw	$1, %ymm16, %ymm17, %ymm19
504# CHECK-NEXT:  2      12    1.00    *                   vpshrdw	$1, (%rax), %ymm17, %ymm19
505# CHECK-NEXT:  1      5     1.00                        vpshrdw	$1, %ymm16, %ymm17, %ymm19 {%k1}
506# CHECK-NEXT:  2      12    1.00    *                   vpshrdw	$1, (%rax), %ymm17, %ymm19 {%k1}
507# CHECK-NEXT:  1      5     1.00                        vpshrdw	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
508# CHECK-NEXT:  2      12    1.00    *                   vpshrdw	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
509
510# CHECK:      Resources:
511# CHECK-NEXT: [0]   - SBDivider
512# CHECK-NEXT: [1]   - SBFPDivider
513# CHECK-NEXT: [2]   - SBPort0
514# CHECK-NEXT: [3]   - SBPort1
515# CHECK-NEXT: [4]   - SBPort4
516# CHECK-NEXT: [5]   - SBPort5
517# CHECK-NEXT: [6.0] - SBPort23
518# CHECK-NEXT: [6.1] - SBPort23
519
520# CHECK:      Resource pressure per iteration:
521# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]
522# CHECK-NEXT:  -      -     192.00  -      -     40.00  68.00  68.00
523
524# CHECK:      Resource pressure by instruction:
525# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6.0]  [6.1]  Instructions:
526# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressb	%xmm16, %xmm19
527# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressb	%xmm16, (%rax)
528# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressb	%xmm16, %xmm19 {%k1}
529# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressb	%xmm16, (%rax) {%k1}
530# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressb	%xmm16, %xmm19 {%k1} {z}
531# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressb	%ymm16, %ymm19
532# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressb	%ymm16, (%rax)
533# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressb	%ymm16, %ymm19 {%k1}
534# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressb	%ymm16, (%rax) {%k1}
535# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressb	%ymm16, %ymm19 {%k1} {z}
536# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressw	%xmm16, %xmm19
537# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressw	%xmm16, (%rax)
538# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressw	%xmm16, %xmm19 {%k1}
539# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressw	%xmm16, (%rax) {%k1}
540# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressw	%xmm16, %xmm19 {%k1} {z}
541# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressw	%ymm16, %ymm19
542# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressw	%ymm16, (%rax)
543# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressw	%ymm16, %ymm19 {%k1}
544# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpcompressw	%ymm16, (%rax) {%k1}
545# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpcompressw	%ymm16, %ymm19 {%k1} {z}
546# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandb	%xmm16, %xmm19
547# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandb	(%rax), %xmm19
548# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandb	%xmm16, %xmm19 {%k1}
549# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandb	(%rax), %xmm19 {%k1}
550# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandb	%xmm16, %xmm19 {%k1} {z}
551# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandb	%ymm16, %ymm19
552# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandb	(%rax), %ymm19
553# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandb	%ymm16, %ymm19 {%k1}
554# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandb	(%rax), %ymm19 {%k1}
555# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandb	%ymm16, %ymm19 {%k1} {z}
556# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandw	%xmm16, %xmm19
557# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandw	(%rax), %xmm19
558# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandw	%xmm16, %xmm19 {%k1}
559# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandw	(%rax), %xmm19 {%k1}
560# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandw	%xmm16, %xmm19 {%k1} {z}
561# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandw	%ymm16, %ymm19
562# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandw	(%rax), %ymm19
563# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandw	%ymm16, %ymm19 {%k1}
564# CHECK-NEXT:  -      -      -      -      -     1.00   0.50   0.50   vpexpandw	(%rax), %ymm19 {%k1}
565# CHECK-NEXT:  -      -      -      -      -     1.00    -      -     vpexpandw	%ymm16, %ymm19 {%k1} {z}
566# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldd	$1, %xmm16, %xmm17, %xmm19
567# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax), %xmm17, %xmm19
568# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax){1to4}, %xmm17, %xmm19
569# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldd	$1, %xmm16, %xmm17, %xmm19 {%k1}
570# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax), %xmm17, %xmm19 {%k1}
571# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1}
572# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldd	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
573# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
574# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
575# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldd	$1, %ymm16, %ymm17, %ymm19
576# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax), %ymm17, %ymm19
577# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax){1to8}, %ymm17, %ymm19
578# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldd	$1, %ymm16, %ymm17, %ymm19 {%k1}
579# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax), %ymm17, %ymm19 {%k1}
580# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1}
581# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldd	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
582# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
583# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
584# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldq	$1, %xmm16, %xmm17, %xmm19
585# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax), %xmm17, %xmm19
586# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax){1to2}, %xmm17, %xmm19
587# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldq	$1, %xmm16, %xmm17, %xmm19 {%k1}
588# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax), %xmm17, %xmm19 {%k1}
589# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1}
590# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldq	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
591# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
592# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
593# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldq	$1, %ymm16, %ymm17, %ymm19
594# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax), %ymm17, %ymm19
595# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax){1to4}, %ymm17, %ymm19
596# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldq	$1, %ymm16, %ymm17, %ymm19 {%k1}
597# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax), %ymm17, %ymm19 {%k1}
598# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1}
599# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldq	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
600# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
601# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
602# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvd	%xmm16, %xmm17, %xmm19
603# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax), %xmm17, %xmm19
604# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax){1to4}, %xmm17, %xmm19
605# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvd	%xmm16, %xmm17, %xmm19 {%k1}
606# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax), %xmm17, %xmm19 {%k1}
607# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax){1to4}, %xmm17, %xmm19 {%k1}
608# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvd	%xmm16, %xmm17, %xmm19 {%k1} {z}
609# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax), %xmm17, %xmm19 {%k1} {z}
610# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
611# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvd	%ymm16, %ymm17, %ymm19
612# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax), %ymm17, %ymm19
613# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax){1to8}, %ymm17, %ymm19
614# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvd	%ymm16, %ymm17, %ymm19 {%k1}
615# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax), %ymm17, %ymm19 {%k1}
616# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax){1to8}, %ymm17, %ymm19 {%k1}
617# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvd	%ymm16, %ymm17, %ymm19 {%k1} {z}
618# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax), %ymm17, %ymm19 {%k1} {z}
619# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvd	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
620# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvq	%xmm16, %xmm17, %xmm19
621# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax), %xmm17, %xmm19
622# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax){1to2}, %xmm17, %xmm19
623# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvq	%xmm16, %xmm17, %xmm19 {%k1}
624# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax), %xmm17, %xmm19 {%k1}
625# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax){1to2}, %xmm17, %xmm19 {%k1}
626# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvq	%xmm16, %xmm17, %xmm19 {%k1} {z}
627# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax), %xmm17, %xmm19 {%k1} {z}
628# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
629# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvq	%ymm16, %ymm17, %ymm19
630# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax), %ymm17, %ymm19
631# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax){1to4}, %ymm17, %ymm19
632# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvq	%ymm16, %ymm17, %ymm19 {%k1}
633# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax), %ymm17, %ymm19 {%k1}
634# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax){1to4}, %ymm17, %ymm19 {%k1}
635# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvq	%ymm16, %ymm17, %ymm19 {%k1} {z}
636# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax), %ymm17, %ymm19 {%k1} {z}
637# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
638# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvw	%xmm16, %xmm17, %xmm19
639# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvw	(%rax), %xmm17, %xmm19
640# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvw	%xmm16, %xmm17, %xmm19 {%k1}
641# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvw	(%rax), %xmm17, %xmm19 {%k1}
642# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvw	%xmm16, %xmm17, %xmm19 {%k1} {z}
643# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvw	(%rax), %xmm17, %xmm19 {%k1} {z}
644# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvw	%ymm16, %ymm17, %ymm19
645# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvw	(%rax), %ymm17, %ymm19
646# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvw	%ymm16, %ymm17, %ymm19 {%k1}
647# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvw	(%rax), %ymm17, %ymm19 {%k1}
648# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldvw	%ymm16, %ymm17, %ymm19 {%k1} {z}
649# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldvw	(%rax), %ymm17, %ymm19 {%k1} {z}
650# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldw	$1, %xmm16, %xmm17, %xmm19
651# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldw	$1, (%rax), %xmm17, %xmm19
652# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldw	$1, %xmm16, %xmm17, %xmm19 {%k1}
653# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldw	$1, (%rax), %xmm17, %xmm19 {%k1}
654# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldw	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
655# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldw	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
656# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldw	$1, %ymm16, %ymm17, %ymm19
657# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldw	$1, (%rax), %ymm17, %ymm19
658# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldw	$1, %ymm16, %ymm17, %ymm19 {%k1}
659# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldw	$1, (%rax), %ymm17, %ymm19 {%k1}
660# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshldw	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
661# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshldw	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
662# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdd	$1, %xmm16, %xmm17, %xmm19
663# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax), %xmm17, %xmm19
664# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax){1to4}, %xmm17, %xmm19
665# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdd	$1, %xmm16, %xmm17, %xmm19 {%k1}
666# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax), %xmm17, %xmm19 {%k1}
667# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1}
668# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdd	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
669# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
670# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
671# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdd	$1, %ymm16, %ymm17, %ymm19
672# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax), %ymm17, %ymm19
673# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax){1to8}, %ymm17, %ymm19
674# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdd	$1, %ymm16, %ymm17, %ymm19 {%k1}
675# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax), %ymm17, %ymm19 {%k1}
676# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1}
677# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdd	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
678# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
679# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdd	$1, (%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
680# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdq	$1, %xmm16, %xmm17, %xmm19
681# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax), %xmm17, %xmm19
682# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax){1to2}, %xmm17, %xmm19
683# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdq	$1, %xmm16, %xmm17, %xmm19 {%k1}
684# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax), %xmm17, %xmm19 {%k1}
685# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1}
686# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdq	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
687# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
688# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
689# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdq	$1, %ymm16, %ymm17, %ymm19
690# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax), %ymm17, %ymm19
691# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax){1to4}, %ymm17, %ymm19
692# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdq	$1, %ymm16, %ymm17, %ymm19 {%k1}
693# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax), %ymm17, %ymm19 {%k1}
694# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1}
695# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdq	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
696# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
697# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdq	$1, (%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
698# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvd	%xmm16, %xmm17, %xmm19
699# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax), %xmm17, %xmm19
700# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax){1to4}, %xmm17, %xmm19
701# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvd	%xmm16, %xmm17, %xmm19 {%k1}
702# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax), %xmm17, %xmm19 {%k1}
703# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax){1to4}, %xmm17, %xmm19 {%k1}
704# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvd	%xmm16, %xmm17, %xmm19 {%k1} {z}
705# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax), %xmm17, %xmm19 {%k1} {z}
706# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax){1to4}, %xmm17, %xmm19 {%k1} {z}
707# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvd	%ymm16, %ymm17, %ymm19
708# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax), %ymm17, %ymm19
709# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax){1to8}, %ymm17, %ymm19
710# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvd	%ymm16, %ymm17, %ymm19 {%k1}
711# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax), %ymm17, %ymm19 {%k1}
712# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax){1to8}, %ymm17, %ymm19 {%k1}
713# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvd	%ymm16, %ymm17, %ymm19 {%k1} {z}
714# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax), %ymm17, %ymm19 {%k1} {z}
715# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvd	(%rax){1to8}, %ymm17, %ymm19 {%k1} {z}
716# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvq	%xmm16, %xmm17, %xmm19
717# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax), %xmm17, %xmm19
718# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax){1to2}, %xmm17, %xmm19
719# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvq	%xmm16, %xmm17, %xmm19 {%k1}
720# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax), %xmm17, %xmm19 {%k1}
721# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax){1to2}, %xmm17, %xmm19 {%k1}
722# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvq	%xmm16, %xmm17, %xmm19 {%k1} {z}
723# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax), %xmm17, %xmm19 {%k1} {z}
724# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax){1to2}, %xmm17, %xmm19 {%k1} {z}
725# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvq	%ymm16, %ymm17, %ymm19
726# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax), %ymm17, %ymm19
727# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax){1to4}, %ymm17, %ymm19
728# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvq	%ymm16, %ymm17, %ymm19 {%k1}
729# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax), %ymm17, %ymm19 {%k1}
730# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax){1to4}, %ymm17, %ymm19 {%k1}
731# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvq	%ymm16, %ymm17, %ymm19 {%k1} {z}
732# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax), %ymm17, %ymm19 {%k1} {z}
733# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvq	(%rax){1to4}, %ymm17, %ymm19 {%k1} {z}
734# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvw	%xmm16, %xmm17, %xmm19
735# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvw	(%rax), %xmm17, %xmm19
736# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvw	%xmm16, %xmm17, %xmm19 {%k1}
737# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvw	(%rax), %xmm17, %xmm19 {%k1}
738# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvw	%xmm16, %xmm17, %xmm19 {%k1} {z}
739# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvw	(%rax), %xmm17, %xmm19 {%k1} {z}
740# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvw	%ymm16, %ymm17, %ymm19
741# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvw	(%rax), %ymm17, %ymm19
742# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvw	%ymm16, %ymm17, %ymm19 {%k1}
743# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvw	(%rax), %ymm17, %ymm19 {%k1}
744# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdvw	%ymm16, %ymm17, %ymm19 {%k1} {z}
745# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdvw	(%rax), %ymm17, %ymm19 {%k1} {z}
746# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdw	$1, %xmm16, %xmm17, %xmm19
747# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdw	$1, (%rax), %xmm17, %xmm19
748# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdw	$1, %xmm16, %xmm17, %xmm19 {%k1}
749# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdw	$1, (%rax), %xmm17, %xmm19 {%k1}
750# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdw	$1, %xmm16, %xmm17, %xmm19 {%k1} {z}
751# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdw	$1, (%rax), %xmm17, %xmm19 {%k1} {z}
752# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdw	$1, %ymm16, %ymm17, %ymm19
753# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdw	$1, (%rax), %ymm17, %ymm19
754# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdw	$1, %ymm16, %ymm17, %ymm19 {%k1}
755# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdw	$1, (%rax), %ymm17, %ymm19 {%k1}
756# CHECK-NEXT:  -      -     1.00    -      -      -      -      -     vpshrdw	$1, %ymm16, %ymm17, %ymm19 {%k1} {z}
757# CHECK-NEXT:  -      -     1.00    -      -      -     0.50   0.50   vpshrdw	$1, (%rax), %ymm17, %ymm19 {%k1} {z}
758