1# NOTE: Assertions have been autogenerated by utils/update_mca_test_checks.py
2# RUN: llvm-mca -mtriple=x86_64-unknown-unknown -mcpu=skylake-avx512 -instruction-tables < %s | FileCheck %s
3
4kandw             %k0, %k1, %k2
5kandnw            %k0, %k1, %k2
6korw              %k0, %k1, %k2
7kxnorw            %k0, %k1, %k2
8kxorw             %k0, %k1, %k2
9kshiftlw          $2, %k1, %k2
10kshiftrw          $2, %k1, %k2
11kunpckbw          %k0, %k1, %k2
12
13vaddpd            %zmm16, %zmm17, %zmm19
14vaddpd            (%rax), %zmm17, %zmm19
15vaddpd            (%rax){1to8}, %zmm17, %zmm19
16vaddpd            %zmm16, %zmm17, %zmm19 {k1}
17vaddpd            (%rax), %zmm17, %zmm19 {k1}
18vaddpd            (%rax){1to8}, %zmm17, %zmm19 {k1}
19vaddpd            %zmm16, %zmm17, %zmm19 {z}{k1}
20vaddpd            (%rax), %zmm17, %zmm19 {z}{k1}
21vaddpd            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
22
23vaddps            %zmm16, %zmm17, %zmm19
24vaddps            (%rax), %zmm17, %zmm19
25vaddps            (%rax){1to16}, %zmm17, %zmm19
26vaddps            %zmm16, %zmm17, %zmm19 {k1}
27vaddps            (%rax), %zmm17, %zmm19 {k1}
28vaddps            (%rax){1to16}, %zmm17, %zmm19 {k1}
29vaddps            %zmm16, %zmm17, %zmm19 {z}{k1}
30vaddps            (%rax), %zmm17, %zmm19 {z}{k1}
31vaddps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
32
33vcmppd            $0, %zmm0, %zmm1, %k2
34vcmppd            $0, (%rax), %zmm1, %k2
35vcmppd            $0, (%rax){1to8}, %zmm1, %k2
36vcmppd            $0, %zmm0, %zmm1, %k2 {k3}
37vcmppd            $0, (%rax), %zmm1, %k2 {k3}
38vcmppd            $0, (%rax){1to8}, %zmm1, %k2 {k3}
39
40vcmpps            $0, %zmm0, %zmm1, %k2
41vcmpps            $0, (%rax), %zmm1, %k2
42vcmpps            $0, (%rax){1to16}, %zmm1, %k2
43vcmpps            $0, %zmm0, %zmm1, %k2 {k3}
44vcmpps            $0, (%rax), %zmm1, %k2 {k3}
45vcmpps            $0, (%rax){1to16}, %zmm1, %k2 {k3}
46
47vcmpsd            $0, %xmm0, %xmm1, %k2
48vcmpsd            $0, (%rax), %xmm1, %k2
49vcmpsd            $0, %xmm0, %xmm1, %k2 {k3}
50vcmpsd            $0, (%rax), %xmm1, %k2 {k3}
51
52vcmpss            $0, %xmm0, %xmm1, %k2
53vcmpss            $0, (%rax), %xmm1, %k2
54vcmpss            $0, %xmm0, %xmm1, %k2 {k3}
55vcmpss            $0, (%rax), %xmm1, %k2 {k3}
56
57vcomiss           %xmm16, %xmm17
58vcomiss           (%rax), %xmm17
59
60vcvtdq2pd         %ymm16, %zmm19
61vcvtdq2pd         (%rax), %zmm19
62vcvtdq2pd         (%rax){1to8}, %zmm19
63vcvtdq2pd         %ymm16, %zmm19 {k1}
64vcvtdq2pd         (%rax), %zmm19 {k1}
65vcvtdq2pd         (%rax){1to8}, %zmm19 {k1}
66vcvtdq2pd         %ymm16, %zmm19 {z}{k1}
67vcvtdq2pd         (%rax), %zmm19 {z}{k1}
68vcvtdq2pd         (%rax){1to8}, %zmm19 {z}{k1}
69
70vcvtdq2ps         %zmm16, %zmm19
71vcvtdq2ps         (%rax), %zmm19
72vcvtdq2ps         (%rax){1to16}, %zmm19
73vcvtdq2ps         %zmm16, %zmm19 {k1}
74vcvtdq2ps         (%rax), %zmm19 {k1}
75vcvtdq2ps         (%rax){1to16}, %zmm19 {k1}
76vcvtdq2ps         %zmm16, %zmm19 {z}{k1}
77vcvtdq2ps         (%rax), %zmm19 {z}{k1}
78vcvtdq2ps         (%rax){1to16}, %zmm19 {z}{k1}
79
80vcvtps2dq         %zmm16, %zmm19
81vcvtps2dq         (%rax), %zmm19
82vcvtps2dq         (%rax){1to16}, %zmm19
83vcvtps2dq         %zmm16, %zmm19 {k1}
84vcvtps2dq         (%rax), %zmm19 {k1}
85vcvtps2dq         (%rax){1to16}, %zmm19 {k1}
86vcvtps2dq         %zmm16, %zmm19 {z}{k1}
87vcvtps2dq         (%rax), %zmm19 {z}{k1}
88vcvtps2dq         (%rax){1to16}, %zmm19 {z}{k1}
89
90vcvttps2dq        %zmm16, %zmm19
91vcvttps2dq        (%rax), %zmm19
92vcvttps2dq        (%rax){1to16}, %zmm19
93vcvttps2dq        %zmm16, %zmm19 {k1}
94vcvttps2dq        (%rax), %zmm19 {k1}
95vcvttps2dq        (%rax){1to16}, %zmm19 {k1}
96vcvttps2dq        %zmm16, %zmm19 {z}{k1}
97vcvttps2dq        (%rax), %zmm19 {z}{k1}
98vcvttps2dq        (%rax){1to16}, %zmm19 {z}{k1}
99
100vdivpd            %zmm16, %zmm17, %zmm19
101vdivpd            (%rax), %zmm17, %zmm19
102vdivpd            (%rax){1to8}, %zmm17, %zmm19
103vdivpd            %zmm16, %zmm17, %zmm19 {k1}
104vdivpd            (%rax), %zmm17, %zmm19 {k1}
105vdivpd            (%rax){1to8}, %zmm17, %zmm19 {k1}
106vdivpd            %zmm16, %zmm17, %zmm19 {z}{k1}
107vdivpd            (%rax), %zmm17, %zmm19 {z}{k1}
108vdivpd            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
109
110vdivps            %zmm16, %zmm17, %zmm19
111vdivps            (%rax), %zmm17, %zmm19
112vdivps            (%rax){1to16}, %zmm17, %zmm19
113vdivps            %zmm16, %zmm17, %zmm19 {k1}
114vdivps            (%rax), %zmm17, %zmm19 {k1}
115vdivps            (%rax){1to16}, %zmm17, %zmm19 {k1}
116vdivps            %zmm16, %zmm17, %zmm19 {z}{k1}
117vdivps            (%rax), %zmm17, %zmm19 {z}{k1}
118vdivps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
119
120vgatherdpd        (%rax,%ymm1,2), %zmm2 {k1}
121vgatherdps        (%rax,%zmm1,2), %zmm2 {k1}
122vgatherqpd        (%rax,%zmm1,2), %zmm2 {k1}
123vgatherqps        (%rax,%zmm1,2), %ymm2 {k1}
124
125vmaxpd            %zmm16, %zmm17, %zmm19
126vmaxpd            (%rax), %zmm17, %zmm19
127vmaxpd            (%rax){1to8}, %zmm17, %zmm19
128vmaxpd            %zmm16, %zmm17, %zmm19 {k1}
129vmaxpd            (%rax), %zmm17, %zmm19 {k1}
130vmaxpd            (%rax){1to8}, %zmm17, %zmm19 {k1}
131vmaxpd            %zmm16, %zmm17, %zmm19 {z}{k1}
132vmaxpd            (%rax), %zmm17, %zmm19 {z}{k1}
133vmaxpd            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
134
135vmaxps            %zmm16, %zmm17, %zmm19
136vmaxps            (%rax), %zmm17, %zmm19
137vmaxps            (%rax){1to16}, %zmm17, %zmm19
138vmaxps            %zmm16, %zmm17, %zmm19 {k1}
139vmaxps            (%rax), %zmm17, %zmm19 {k1}
140vmaxps            (%rax){1to16}, %zmm17, %zmm19 {k1}
141vmaxps            %zmm16, %zmm17, %zmm19 {z}{k1}
142vmaxps            (%rax), %zmm17, %zmm19 {z}{k1}
143vmaxps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
144
145vminpd            %zmm16, %zmm17, %zmm19
146vminpd            (%rax), %zmm17, %zmm19
147vminpd            (%rax){1to8}, %zmm17, %zmm19
148vminpd            %zmm16, %zmm17, %zmm19 {k1}
149vminpd            (%rax), %zmm17, %zmm19 {k1}
150vminpd            (%rax){1to8}, %zmm17, %zmm19 {k1}
151vminpd            %zmm16, %zmm17, %zmm19 {z}{k1}
152vminpd            (%rax), %zmm17, %zmm19 {z}{k1}
153vminpd            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
154
155vminps            %zmm16, %zmm17, %zmm19
156vminps            (%rax), %zmm17, %zmm19
157vminps            (%rax){1to16}, %zmm17, %zmm19
158vminps            %zmm16, %zmm17, %zmm19 {k1}
159vminps            (%rax), %zmm17, %zmm19 {k1}
160vminps            (%rax){1to16}, %zmm17, %zmm19 {k1}
161vminps            %zmm16, %zmm17, %zmm19 {z}{k1}
162vminps            (%rax), %zmm17, %zmm19 {z}{k1}
163vminps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
164
165vmulpd            %zmm16, %zmm17, %zmm19
166vmulpd            (%rax), %zmm17, %zmm19
167vmulpd            (%rax){1to8}, %zmm17, %zmm19
168vmulpd            %zmm16, %zmm17, %zmm19 {k1}
169vmulpd            (%rax), %zmm17, %zmm19 {k1}
170vmulpd            (%rax){1to8}, %zmm17, %zmm19 {k1}
171vmulpd            %zmm16, %zmm17, %zmm19 {z}{k1}
172vmulpd            (%rax), %zmm17, %zmm19 {z}{k1}
173vmulpd            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
174
175vmulps            %zmm16, %zmm17, %zmm19
176vmulps            (%rax), %zmm17, %zmm19
177vmulps            (%rax){1to16}, %zmm17, %zmm19
178vmulps            %zmm16, %zmm17, %zmm19 {k1}
179vmulps            (%rax), %zmm17, %zmm19 {k1}
180vmulps            (%rax){1to16}, %zmm17, %zmm19 {k1}
181vmulps            %zmm16, %zmm17, %zmm19 {z}{k1}
182vmulps            (%rax), %zmm17, %zmm19 {z}{k1}
183vmulps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
184
185vpabsd            %zmm16, %zmm19
186vpabsd            (%rax), %zmm19
187vpabsd            (%rax){1to16}, %zmm19
188vpabsd            %zmm16, %zmm19 {k1}
189vpabsd            (%rax), %zmm19 {k1}
190vpabsd            (%rax){1to16}, %zmm19 {k1}
191vpabsd            %zmm16, %zmm19 {z}{k1}
192vpabsd            (%rax), %zmm19 {z}{k1}
193vpabsd            (%rax){1to16}, %zmm19 {z}{k1}
194
195vpabsq            %zmm16, %zmm19
196vpabsq            (%rax), %zmm19
197vpabsq            (%rax){1to8}, %zmm19
198vpabsq            %zmm16, %zmm19 {k1}
199vpabsq            (%rax), %zmm19 {k1}
200vpabsq            (%rax){1to8}, %zmm19 {k1}
201vpabsq            %zmm16, %zmm19 {z}{k1}
202vpabsq            (%rax), %zmm19 {z}{k1}
203vpabsq            (%rax){1to8}, %zmm19 {z}{k1}
204
205vpaddd            %zmm16, %zmm17, %zmm19
206vpaddd            (%rax), %zmm17, %zmm19
207vpaddd            (%rax){1to16}, %zmm17, %zmm19
208vpaddd            %zmm16, %zmm17, %zmm19 {k1}
209vpaddd            (%rax), %zmm17, %zmm19 {k1}
210vpaddd            (%rax){1to16}, %zmm17, %zmm19 {k1}
211vpaddd            %zmm16, %zmm17, %zmm19 {z}{k1}
212vpaddd            (%rax), %zmm17, %zmm19 {z}{k1}
213vpaddd            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
214
215vpaddq            %zmm16, %zmm17, %zmm19
216vpaddq            (%rax), %zmm17, %zmm19
217vpaddq            (%rax){1to8}, %zmm17, %zmm19
218vpaddq            %zmm16, %zmm17, %zmm19 {k1}
219vpaddq            (%rax), %zmm17, %zmm19 {k1}
220vpaddq            (%rax){1to8}, %zmm17, %zmm19 {k1}
221vpaddq            %zmm16, %zmm17, %zmm19 {z}{k1}
222vpaddq            (%rax), %zmm17, %zmm19 {z}{k1}
223vpaddq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
224
225vpcmpd            $0, %zmm0, %zmm1, %k2
226vpcmpd            $0, (%rax), %zmm1, %k2
227vpcmpd            $0, (%rax){1to16}, %zmm1, %k2
228vpcmpd            $0, %zmm0, %zmm1, %k2 {k3}
229vpcmpd            $0, (%rax), %zmm1, %k2 {k3}
230vpcmpd            $0, (%rax){1to16}, %zmm1, %k2 {k3}
231
232vpcmpeqd          %zmm0, %zmm1, %k2
233vpcmpeqd          (%rax), %zmm1, %k2
234vpcmpeqd          (%rax){1to16}, %zmm1, %k2
235vpcmpeqd          %zmm0, %zmm1, %k2 {k3}
236vpcmpeqd          (%rax), %zmm1, %k2 {k3}
237vpcmpeqd          (%rax){1to16}, %zmm1, %k2 {k3}
238
239vpcmpeqq          %zmm0, %zmm1, %k2
240vpcmpeqq          (%rax), %zmm1, %k2
241vpcmpeqq          (%rax){1to8}, %zmm1, %k2
242vpcmpeqq          %zmm0, %zmm1, %k2 {k3}
243vpcmpeqq          (%rax), %zmm1, %k2 {k3}
244vpcmpeqq          (%rax){1to8}, %zmm1, %k2 {k3}
245
246vpcmpgtd          %zmm0, %zmm1, %k2
247vpcmpgtd          (%rax), %zmm1, %k2
248vpcmpgtd          (%rax){1to16}, %zmm1, %k2
249vpcmpgtd          %zmm0, %zmm1, %k2 {k3}
250vpcmpgtd          (%rax), %zmm1, %k2 {k3}
251vpcmpgtd          (%rax){1to16}, %zmm1, %k2 {k3}
252
253vpcmpgtq          %zmm0, %zmm1, %k2
254vpcmpgtq          (%rax), %zmm1, %k2
255vpcmpgtq          (%rax){1to8}, %zmm1, %k2
256vpcmpgtq          %zmm0, %zmm1, %k2 {k3}
257vpcmpgtq          (%rax), %zmm1, %k2 {k3}
258vpcmpgtq          (%rax){1to8}, %zmm1, %k2 {k3}
259
260vpcmpq            $0, %zmm0, %zmm1, %k2
261vpcmpq            $0, (%rax), %zmm1, %k2
262vpcmpq            $0, (%rax){1to8}, %zmm1, %k2
263vpcmpq            $0, %zmm0, %zmm1, %k2 {k3}
264vpcmpq            $0, (%rax), %zmm1, %k2 {k3}
265vpcmpq            $0, (%rax){1to8}, %zmm1, %k2 {k3}
266
267vpcmpud           $0, %zmm0, %zmm1, %k2
268vpcmpud           $0, (%rax), %zmm1, %k2
269vpcmpud           $0, (%rax){1to16}, %zmm1, %k2
270vpcmpud           $0, %zmm0, %zmm1, %k2 {k3}
271vpcmpud           $0, (%rax), %zmm1, %k2 {k3}
272vpcmpud           $0, (%rax){1to16}, %zmm1, %k2 {k3}
273
274vpcmpuq           $0, %zmm0, %zmm1, %k2
275vpcmpuq           $0, (%rax), %zmm1, %k2
276vpcmpuq           $0, (%rax){1to8}, %zmm1, %k2
277vpcmpuq           $0, %zmm0, %zmm1, %k2 {k3}
278vpcmpuq           $0, (%rax), %zmm1, %k2 {k3}
279vpcmpuq           $0, (%rax){1to8}, %zmm1, %k2 {k3}
280
281vpgatherdq        (%rax,%ymm1,2), %zmm2 {k1}
282vpgatherdd        (%rax,%zmm1,2), %zmm2 {k1}
283vpgatherqq        (%rax,%zmm1,2), %zmm2 {k1}
284vpgatherqd        (%rax,%zmm1,2), %ymm2 {k1}
285
286vpmulld           %zmm16, %zmm17, %zmm19
287vpmulld           (%rax), %zmm17, %zmm19
288vpmulld           (%rax){1to16}, %zmm17, %zmm19
289vpmulld           %zmm16, %zmm17, %zmm19 {k1}
290vpmulld           (%rax), %zmm17, %zmm19 {k1}
291vpmulld           (%rax){1to16}, %zmm17, %zmm19 {k1}
292vpmulld           %zmm16, %zmm17, %zmm19 {z}{k1}
293vpmulld           (%rax), %zmm17, %zmm19 {z}{k1}
294vpmulld           (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
295
296vpermd            %zmm16, %zmm17, %zmm19
297vpermd            (%rax), %zmm17, %zmm19
298vpermd            (%rax){1to16}, %zmm17, %zmm19
299vpermd            %zmm16, %zmm17, %zmm19 {k1}
300vpermd            (%rax), %zmm17, %zmm19 {k1}
301vpermd            (%rax){1to16}, %zmm17, %zmm19 {k1}
302vpermd            %zmm16, %zmm17, %zmm19 {z}{k1}
303vpermd            (%rax), %zmm17, %zmm19 {z}{k1}
304vpermd            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
305
306vpermilpd         $0, %zmm16, %zmm19
307vpermilpd         $0, (%rax), %zmm19
308vpermilpd         $0, (%rax){1to8}, %zmm19
309vpermilpd         $0, %zmm16, %zmm19 {k1}
310vpermilpd         $0, (%rax), %zmm19 {k1}
311vpermilpd         $0, (%rax){1to8}, %zmm19 {k1}
312vpermilpd         $0, %zmm16, %zmm19 {z}{k1}
313vpermilpd         $0, (%rax), %zmm19 {z}{k1}
314vpermilpd         $0, (%rax){1to8}, %zmm19 {z}{k1}
315
316vpermilpd         %zmm16, %zmm17, %zmm19
317vpermilpd         (%rax), %zmm17, %zmm19
318vpermilpd         (%rax){1to8}, %zmm17, %zmm19
319vpermilpd         %zmm16, %zmm17, %zmm19 {k1}
320vpermilpd         (%rax), %zmm17, %zmm19 {k1}
321vpermilpd         (%rax){1to8}, %zmm17, %zmm19 {k1}
322vpermilpd         %zmm16, %zmm17, %zmm19 {z}{k1}
323vpermilpd         (%rax), %zmm17, %zmm19 {z}{k1}
324vpermilpd         (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
325
326vpermilps         $0, %zmm16, %zmm19
327vpermilps         $0, (%rax), %zmm19
328vpermilps         $0, (%rax){1to16}, %zmm19
329vpermilps         $0, %zmm16, %zmm19 {k1}
330vpermilps         $0, (%rax), %zmm19 {k1}
331vpermilps         $0, (%rax){1to16}, %zmm19 {k1}
332vpermilps         $0, %zmm16, %zmm19 {z}{k1}
333vpermilps         $0, (%rax), %zmm19 {z}{k1}
334vpermilps         $0, (%rax){1to16}, %zmm19 {z}{k1}
335
336vpermilps         %zmm16, %zmm17, %zmm19
337vpermilps         (%rax), %zmm17, %zmm19
338vpermilps         (%rax){1to16}, %zmm17, %zmm19
339vpermilps         %zmm16, %zmm17, %zmm19 {k1}
340vpermilps         (%rax), %zmm17, %zmm19 {k1}
341vpermilps         (%rax){1to16}, %zmm17, %zmm19 {k1}
342vpermilps         %zmm16, %zmm17, %zmm19 {z}{k1}
343vpermilps         (%rax), %zmm17, %zmm19 {z}{k1}
344vpermilps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
345
346vpermpd           $0, %zmm16, %zmm19
347vpermpd           $0, (%rax), %zmm19
348vpermpd           $0, (%rax){1to8}, %zmm19
349vpermpd           $0, %zmm16, %zmm19 {k1}
350vpermpd           $0, (%rax), %zmm19 {k1}
351vpermpd           $0, (%rax){1to8}, %zmm19 {k1}
352vpermpd           $0, %zmm16, %zmm19 {z}{k1}
353vpermpd           $0, (%rax), %zmm19 {z}{k1}
354vpermpd           $0, (%rax){1to8}, %zmm19 {z}{k1}
355
356vpermpd           %zmm16, %zmm17, %zmm19
357vpermpd           (%rax), %zmm17, %zmm19
358vpermpd           (%rax){1to8}, %zmm17, %zmm19
359vpermpd           %zmm16, %zmm17, %zmm19 {k1}
360vpermpd           (%rax), %zmm17, %zmm19 {k1}
361vpermpd           (%rax){1to8}, %zmm17, %zmm19 {k1}
362vpermpd           %zmm16, %zmm17, %zmm19 {z}{k1}
363vpermpd           (%rax), %zmm17, %zmm19 {z}{k1}
364vpermpd           (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
365
366vpermps           %zmm16, %zmm17, %zmm19
367vpermps           (%rax), %zmm17, %zmm19
368vpermps           (%rax){1to16}, %zmm17, %zmm19
369vpermps           %zmm16, %zmm17, %zmm19 {k1}
370vpermps           (%rax), %zmm17, %zmm19 {k1}
371vpermps           (%rax){1to16}, %zmm17, %zmm19 {k1}
372vpermps           %zmm16, %zmm17, %zmm19 {z}{k1}
373vpermps           (%rax), %zmm17, %zmm19 {z}{k1}
374vpermps           (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
375
376vpermq            $0, %zmm16, %zmm19
377vpermq            $0, (%rax), %zmm19
378vpermq            $0, (%rax){1to8}, %zmm19
379vpermq            $0, %zmm16, %zmm19 {k1}
380vpermq            $0, (%rax), %zmm19 {k1}
381vpermq            $0, (%rax){1to8}, %zmm19 {k1}
382vpermq            $0, %zmm16, %zmm19 {z}{k1}
383vpermq            $0, (%rax), %zmm19 {z}{k1}
384vpermq            $0, (%rax){1to8}, %zmm19 {z}{k1}
385
386vpermq            %zmm16, %zmm17, %zmm19
387vpermq            (%rax), %zmm17, %zmm19
388vpermq            (%rax){1to8}, %zmm17, %zmm19
389vpermq            %zmm16, %zmm17, %zmm19 {k1}
390vpermq            (%rax), %zmm17, %zmm19 {k1}
391vpermq            (%rax){1to8}, %zmm17, %zmm19 {k1}
392vpermq            %zmm16, %zmm17, %zmm19 {z}{k1}
393vpermq            (%rax), %zmm17, %zmm19 {z}{k1}
394vpermq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
395
396vpshufd           $0, %zmm16, %zmm19
397vpshufd           $0, (%rax), %zmm19
398vpshufd           $0, (%rax){1to16}, %zmm19
399vpshufd           $0, %zmm16, %zmm19 {k1}
400vpshufd           $0, (%rax), %zmm19 {k1}
401vpshufd           $0, (%rax){1to16}, %zmm19 {k1}
402vpshufd           $0, %zmm16, %zmm19 {z}{k1}
403vpshufd           $0, (%rax), %zmm19 {z}{k1}
404vpshufd           $0, (%rax){1to16}, %zmm19 {z}{k1}
405
406vpsubd            %zmm16, %zmm17, %zmm19
407vpsubd            (%rax), %zmm17, %zmm19
408vpsubd            (%rax){1to16}, %zmm17, %zmm19
409vpsubd            %zmm16, %zmm17, %zmm19 {k1}
410vpsubd            (%rax), %zmm17, %zmm19 {k1}
411vpsubd            (%rax){1to16}, %zmm17, %zmm19 {k1}
412vpsubd            %zmm16, %zmm17, %zmm19 {z}{k1}
413vpsubd            (%rax), %zmm17, %zmm19 {z}{k1}
414vpsubd            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
415
416vpsubq            %zmm16, %zmm17, %zmm19
417vpsubq            (%rax), %zmm17, %zmm19
418vpsubq            (%rax){1to8}, %zmm17, %zmm19
419vpsubq            %zmm16, %zmm17, %zmm19 {k1}
420vpsubq            (%rax), %zmm17, %zmm19 {k1}
421vpsubq            (%rax){1to8}, %zmm17, %zmm19 {k1}
422vpsubq            %zmm16, %zmm17, %zmm19 {z}{k1}
423vpsubq            (%rax), %zmm17, %zmm19 {z}{k1}
424vpsubq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
425
426vpunpckhdq        %zmm16, %zmm17, %zmm19
427vpunpckhdq        (%rax), %zmm17, %zmm19
428vpunpckhdq        (%rax){1to16}, %zmm17, %zmm19
429vpunpckhdq        %zmm16, %zmm17, %zmm19 {k1}
430vpunpckhdq        (%rax), %zmm17, %zmm19 {k1}
431vpunpckhdq        (%rax){1to16}, %zmm17, %zmm19 {k1}
432vpunpckhdq        %zmm16, %zmm17, %zmm19 {z}{k1}
433vpunpckhdq        (%rax), %zmm17, %zmm19 {z}{k1}
434vpunpckhdq        (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
435
436vpunpckhqdq       %zmm16, %zmm17, %zmm19
437vpunpckhqdq       (%rax), %zmm17, %zmm19
438vpunpckhqdq       (%rax){1to8}, %zmm17, %zmm19
439vpunpckhqdq       %zmm16, %zmm17, %zmm19 {k1}
440vpunpckhqdq       (%rax), %zmm17, %zmm19 {k1}
441vpunpckhqdq       (%rax){1to8}, %zmm17, %zmm19 {k1}
442vpunpckhqdq       %zmm16, %zmm17, %zmm19 {z}{k1}
443vpunpckhqdq       (%rax), %zmm17, %zmm19 {z}{k1}
444vpunpckhqdq       (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
445
446vpunpckldq        %zmm16, %zmm17, %zmm19
447vpunpckldq        (%rax), %zmm17, %zmm19
448vpunpckldq        (%rax){1to16}, %zmm17, %zmm19
449vpunpckldq        %zmm16, %zmm17, %zmm19 {k1}
450vpunpckldq        (%rax), %zmm17, %zmm19 {k1}
451vpunpckldq        (%rax){1to16}, %zmm17, %zmm19 {k1}
452vpunpckldq        %zmm16, %zmm17, %zmm19 {z}{k1}
453vpunpckldq        (%rax), %zmm17, %zmm19 {z}{k1}
454vpunpckldq        (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
455
456vpunpcklqdq       %zmm16, %zmm17, %zmm19
457vpunpcklqdq       (%rax), %zmm17, %zmm19
458vpunpcklqdq       (%rax){1to8}, %zmm17, %zmm19
459vpunpcklqdq       %zmm16, %zmm17, %zmm19 {k1}
460vpunpcklqdq       (%rax), %zmm17, %zmm19 {k1}
461vpunpcklqdq       (%rax){1to8}, %zmm17, %zmm19 {k1}
462vpunpcklqdq       %zmm16, %zmm17, %zmm19 {z}{k1}
463vpunpcklqdq       (%rax), %zmm17, %zmm19 {z}{k1}
464vpunpcklqdq       (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
465
466vshuff32x4        $0, %zmm16, %zmm17, %zmm19
467vshuff32x4        $0, (%rax), %zmm17, %zmm19
468vshuff32x4        $0, (%rax){1to16}, %zmm17, %zmm19
469vshuff32x4        $0, %zmm16, %zmm17, %zmm19 {k1}
470vshuff32x4        $0, (%rax), %zmm17, %zmm19 {k1}
471vshuff32x4        $0, (%rax){1to16}, %zmm17, %zmm19 {k1}
472vshuff32x4        $0, %zmm16, %zmm17, %zmm19 {z}{k1}
473vshuff32x4        $0, (%rax), %zmm17, %zmm19 {z}{k1}
474vshuff32x4        $0, (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
475
476vshuff64x2        $0, %zmm16, %zmm17, %zmm19
477vshuff64x2        $0, (%rax), %zmm17, %zmm19
478vshuff64x2        $0, (%rax){1to8}, %zmm17, %zmm19
479vshuff64x2        $0, %zmm16, %zmm17, %zmm19 {k1}
480vshuff64x2        $0, (%rax), %zmm17, %zmm19 {k1}
481vshuff64x2        $0, (%rax){1to8}, %zmm17, %zmm19 {k1}
482vshuff64x2        $0, %zmm16, %zmm17, %zmm19 {z}{k1}
483vshuff64x2        $0, (%rax), %zmm17, %zmm19 {z}{k1}
484vshuff64x2        $0, (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
485
486vshufi32x4        $0, %zmm16, %zmm17, %zmm19
487vshufi32x4        $0, (%rax), %zmm17, %zmm19
488vshufi32x4        $0, (%rax){1to16}, %zmm17, %zmm19
489vshufi32x4        $0, %zmm16, %zmm17, %zmm19 {k1}
490vshufi32x4        $0, (%rax), %zmm17, %zmm19 {k1}
491vshufi32x4        $0, (%rax){1to16}, %zmm17, %zmm19 {k1}
492vshufi32x4        $0, %zmm16, %zmm17, %zmm19 {z}{k1}
493vshufi32x4        $0, (%rax), %zmm17, %zmm19 {z}{k1}
494vshufi32x4        $0, (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
495
496vshufi64x2        $0, %zmm16, %zmm17, %zmm19
497vshufi64x2        $0, (%rax), %zmm17, %zmm19
498vshufi64x2        $0, (%rax){1to8}, %zmm17, %zmm19
499vshufi64x2        $0, %zmm16, %zmm17, %zmm19 {k1}
500vshufi64x2        $0, (%rax), %zmm17, %zmm19 {k1}
501vshufi64x2        $0, (%rax){1to8}, %zmm17, %zmm19 {k1}
502vshufi64x2        $0, %zmm16, %zmm17, %zmm19 {z}{k1}
503vshufi64x2        $0, (%rax), %zmm17, %zmm19 {z}{k1}
504vshufi64x2        $0, (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
505
506vsqrtpd           %zmm16, %zmm19
507vsqrtpd           (%rax), %zmm19
508vsqrtpd           (%rax){1to8}, %zmm19
509vsqrtpd           %zmm16, %zmm19 {k1}
510vsqrtpd           (%rax), %zmm19 {k1}
511vsqrtpd           (%rax){1to8}, %zmm19 {k1}
512vsqrtpd           %zmm16, %zmm19 {z}{k1}
513vsqrtpd           (%rax), %zmm19 {z}{k1}
514vsqrtpd           (%rax){1to8}, %zmm19 {z}{k1}
515
516vsqrtps           %zmm16, %zmm19
517vsqrtps           (%rax), %zmm19
518vsqrtps           (%rax){1to16}, %zmm19
519vsqrtps           %zmm16, %zmm19 {k1}
520vsqrtps           (%rax), %zmm19 {k1}
521vsqrtps           (%rax){1to16}, %zmm19 {k1}
522vsqrtps           %zmm16, %zmm19 {z}{k1}
523vsqrtps           (%rax), %zmm19 {z}{k1}
524vsqrtps           (%rax){1to16}, %zmm19 {z}{k1}
525
526vsqrtsd           %xmm16, %xmm17, %xmm19
527vsqrtsd           (%rax), %xmm17, %xmm19
528vsqrtsd           %xmm16, %xmm17, %xmm19 {k1}
529vsqrtsd           (%rax), %xmm17, %xmm19 {k1}
530vsqrtsd           %xmm16, %xmm17, %xmm19 {z}{k1}
531vsqrtsd           (%rax), %xmm17, %xmm19 {z}{k1}
532
533vsqrtss           %xmm16, %xmm17, %xmm19
534vsqrtss           (%rax), %xmm17, %xmm19
535vsqrtss           %xmm16, %xmm17, %xmm19 {k1}
536vsqrtss           (%rax), %xmm17, %xmm19 {k1}
537vsqrtss           %xmm16, %xmm17, %xmm19 {z}{k1}
538vsqrtss           (%rax), %xmm17, %xmm19 {z}{k1}
539
540vpsubd            %zmm16, %zmm17, %zmm19
541vpsubd            (%rax), %zmm17, %zmm19
542vpsubd            (%rax){1to16}, %zmm17, %zmm19
543vpsubd            %zmm16, %zmm17, %zmm19 {k1}
544vpsubd            (%rax), %zmm17, %zmm19 {k1}
545vpsubd            (%rax){1to16}, %zmm17, %zmm19 {k1}
546vpsubd            %zmm16, %zmm17, %zmm19 {z}{k1}
547vpsubd            (%rax), %zmm17, %zmm19 {z}{k1}
548vpsubd            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
549
550vpsubq            %zmm16, %zmm17, %zmm19
551vpsubq            (%rax), %zmm17, %zmm19
552vpsubq            (%rax){1to8}, %zmm17, %zmm19
553vpsubq            %zmm16, %zmm17, %zmm19 {k1}
554vpsubq            (%rax), %zmm17, %zmm19 {k1}
555vpsubq            (%rax){1to8}, %zmm17, %zmm19 {k1}
556vpsubq            %zmm16, %zmm17, %zmm19 {z}{k1}
557vpsubq            (%rax), %zmm17, %zmm19 {z}{k1}
558vpsubq            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
559
560vptestmd          %zmm0, %zmm1, %k2
561vptestmd          (%rax), %zmm1, %k2
562vptestmd          (%rax){1to16}, %zmm1, %k2
563vptestmd          %zmm0, %zmm1, %k2 {k3}
564vptestmd          (%rax), %zmm1, %k2 {k3}
565vptestmd          (%rax){1to16}, %zmm1, %k2 {k3}
566
567vptestmq          %zmm0, %zmm1, %k2
568vptestmq          (%rax), %zmm1, %k2
569vptestmq          (%rax){1to8}, %zmm1, %k2
570vptestmq          %zmm0, %zmm1, %k2 {k3}
571vptestmq          (%rax), %zmm1, %k2 {k3}
572vptestmq          (%rax){1to8}, %zmm1, %k2 {k3}
573
574vptestnmd         %zmm0, %zmm1, %k2
575vptestnmd         (%rax), %zmm1, %k2
576vptestnmd         (%rax){1to16}, %zmm1, %k2
577vptestnmd         %zmm0, %zmm1, %k2 {k3}
578vptestnmd         (%rax), %zmm1, %k2 {k3}
579vptestnmd         (%rax){1to16}, %zmm1, %k2 {k3}
580
581vptestnmq         %zmm0, %zmm1, %k2
582vptestnmq         (%rax), %zmm1, %k2
583vptestnmq         (%rax){1to8}, %zmm1, %k2
584vptestnmq         %zmm0, %zmm1, %k2 {k3}
585vptestnmq         (%rax), %zmm1, %k2 {k3}
586vptestnmq         (%rax){1to8}, %zmm1, %k2 {k3}
587
588vsubpd            %zmm16, %zmm17, %zmm19
589vsubpd            (%rax), %zmm17, %zmm19
590vsubpd            (%rax){1to8}, %zmm17, %zmm19
591vsubpd            %zmm16, %zmm17, %zmm19 {k1}
592vsubpd            (%rax), %zmm17, %zmm19 {k1}
593vsubpd            (%rax){1to8}, %zmm17, %zmm19 {k1}
594vsubpd            %zmm16, %zmm17, %zmm19 {z}{k1}
595vsubpd            (%rax), %zmm17, %zmm19 {z}{k1}
596vsubpd            (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
597
598vsubps            %zmm16, %zmm17, %zmm19
599vsubps            (%rax), %zmm17, %zmm19
600vsubps            (%rax){1to16}, %zmm17, %zmm19
601vsubps            %zmm16, %zmm17, %zmm19 {k1}
602vsubps            (%rax), %zmm17, %zmm19 {k1}
603vsubps            (%rax){1to16}, %zmm17, %zmm19 {k1}
604vsubps            %zmm16, %zmm17, %zmm19 {z}{k1}
605vsubps            (%rax), %zmm17, %zmm19 {z}{k1}
606vsubps            (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
607
608vucomiss          %xmm16, %xmm17
609vucomiss          (%rax), %xmm17
610
611vunpckhpd         %zmm16, %zmm17, %zmm19
612vunpckhpd         (%rax), %zmm17, %zmm19
613vunpckhpd         (%rax){1to8}, %zmm17, %zmm19
614vunpckhpd         %zmm16, %zmm17, %zmm19 {k1}
615vunpckhpd         (%rax), %zmm17, %zmm19 {k1}
616vunpckhpd         (%rax){1to8}, %zmm17, %zmm19 {k1}
617vunpckhpd         %zmm16, %zmm17, %zmm19 {z}{k1}
618vunpckhpd         (%rax), %zmm17, %zmm19 {z}{k1}
619vunpckhpd         (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
620
621vunpckhps         %zmm16, %zmm17, %zmm19
622vunpckhps         (%rax), %zmm17, %zmm19
623vunpckhps         (%rax){1to16}, %zmm17, %zmm19
624vunpckhps         %zmm16, %zmm17, %zmm19 {k1}
625vunpckhps         (%rax), %zmm17, %zmm19 {k1}
626vunpckhps         (%rax){1to16}, %zmm17, %zmm19 {k1}
627vunpckhps         %zmm16, %zmm17, %zmm19 {z}{k1}
628vunpckhps         (%rax), %zmm17, %zmm19 {z}{k1}
629vunpckhps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
630
631vunpcklpd         %zmm16, %zmm17, %zmm19
632vunpcklpd         (%rax), %zmm17, %zmm19
633vunpcklpd         (%rax){1to8}, %zmm17, %zmm19
634vunpcklpd         %zmm16, %zmm17, %zmm19 {k1}
635vunpcklpd         (%rax), %zmm17, %zmm19 {k1}
636vunpcklpd         (%rax){1to8}, %zmm17, %zmm19 {k1}
637vunpcklpd         %zmm16, %zmm17, %zmm19 {z}{k1}
638vunpcklpd         (%rax), %zmm17, %zmm19 {z}{k1}
639vunpcklpd         (%rax){1to8}, %zmm17, %zmm19 {z}{k1}
640
641vunpcklps         %zmm16, %zmm17, %zmm19
642vunpcklps         (%rax), %zmm17, %zmm19
643vunpcklps         (%rax){1to16}, %zmm17, %zmm19
644vunpcklps         %zmm16, %zmm17, %zmm19 {k1}
645vunpcklps         (%rax), %zmm17, %zmm19 {k1}
646vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {k1}
647vunpcklps         %zmm16, %zmm17, %zmm19 {z}{k1}
648vunpcklps         (%rax), %zmm17, %zmm19 {z}{k1}
649vunpcklps         (%rax){1to16}, %zmm17, %zmm19 {z}{k1}
650
651# CHECK:      Instruction Info:
652# CHECK-NEXT: [1]: #uOps
653# CHECK-NEXT: [2]: Latency
654# CHECK-NEXT: [3]: RThroughput
655# CHECK-NEXT: [4]: MayLoad
656# CHECK-NEXT: [5]: MayStore
657# CHECK-NEXT: [6]: HasSideEffects (U)
658
659# CHECK:      [1]    [2]    [3]    [4]    [5]    [6]    Instructions:
660# CHECK-NEXT:  1      1     1.00                        kandw	%k0, %k1, %k2
661# CHECK-NEXT:  1      1     1.00                        kandnw	%k0, %k1, %k2
662# CHECK-NEXT:  1      1     1.00                        korw	%k0, %k1, %k2
663# CHECK-NEXT:  1      1     1.00                        kxnorw	%k0, %k1, %k2
664# CHECK-NEXT:  1      1     1.00                        kxorw	%k0, %k1, %k2
665# CHECK-NEXT:  1      4     1.00                        kshiftlw	$2, %k1, %k2
666# CHECK-NEXT:  1      4     1.00                        kshiftrw	$2, %k1, %k2
667# CHECK-NEXT:  1      4     1.00                        kunpckbw	%k0, %k1, %k2
668# CHECK-NEXT:  1      4     0.50                        vaddpd	%zmm16, %zmm17, %zmm19
669# CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax), %zmm17, %zmm19
670# CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax){1to8}, %zmm17, %zmm19
671# CHECK-NEXT:  1      4     0.50                        vaddpd	%zmm16, %zmm17, %zmm19 {%k1}
672# CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax), %zmm17, %zmm19 {%k1}
673# CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
674# CHECK-NEXT:  1      4     0.50                        vaddpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
675# CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax), %zmm17, %zmm19 {%k1} {z}
676# CHECK-NEXT:  2      11    0.50    *                   vaddpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
677# CHECK-NEXT:  1      4     0.50                        vaddps	%zmm16, %zmm17, %zmm19
678# CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax), %zmm17, %zmm19
679# CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax){1to16}, %zmm17, %zmm19
680# CHECK-NEXT:  1      4     0.50                        vaddps	%zmm16, %zmm17, %zmm19 {%k1}
681# CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax), %zmm17, %zmm19 {%k1}
682# CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
683# CHECK-NEXT:  1      4     0.50                        vaddps	%zmm16, %zmm17, %zmm19 {%k1} {z}
684# CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax), %zmm17, %zmm19 {%k1} {z}
685# CHECK-NEXT:  2      11    0.50    *                   vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
686# CHECK-NEXT:  1      4     1.00                        vcmpeqpd	%zmm0, %zmm1, %k2
687# CHECK-NEXT:  2      11    1.00    *                   vcmpeqpd	(%rax), %zmm1, %k2
688# CHECK-NEXT:  2      11    1.00    *                   vcmpeqpd	(%rax){1to8}, %zmm1, %k2
689# CHECK-NEXT:  1      4     1.00                        vcmpeqpd	%zmm0, %zmm1, %k2 {%k3}
690# CHECK-NEXT:  2      11    1.00    *                   vcmpeqpd	(%rax), %zmm1, %k2 {%k3}
691# CHECK-NEXT:  2      11    1.00    *                   vcmpeqpd	(%rax){1to8}, %zmm1, %k2 {%k3}
692# CHECK-NEXT:  1      4     1.00                        vcmpeqps	%zmm0, %zmm1, %k2
693# CHECK-NEXT:  2      11    1.00    *                   vcmpeqps	(%rax), %zmm1, %k2
694# CHECK-NEXT:  2      11    1.00    *                   vcmpeqps	(%rax){1to16}, %zmm1, %k2
695# CHECK-NEXT:  1      4     1.00                        vcmpeqps	%zmm0, %zmm1, %k2 {%k3}
696# CHECK-NEXT:  2      11    1.00    *                   vcmpeqps	(%rax), %zmm1, %k2 {%k3}
697# CHECK-NEXT:  2      11    1.00    *                   vcmpeqps	(%rax){1to16}, %zmm1, %k2 {%k3}
698# CHECK-NEXT:  1      4     1.00                        vcmpeqsd	%xmm0, %xmm1, %k2
699# CHECK-NEXT:  2      10    1.00    *                   vcmpeqsd	(%rax), %xmm1, %k2
700# CHECK-NEXT:  1      4     1.00                        vcmpeqsd	%xmm0, %xmm1, %k2 {%k3}
701# CHECK-NEXT:  2      10    1.00    *                   vcmpeqsd	(%rax), %xmm1, %k2 {%k3}
702# CHECK-NEXT:  1      4     1.00                        vcmpeqss	%xmm0, %xmm1, %k2
703# CHECK-NEXT:  2      10    1.00    *                   vcmpeqss	(%rax), %xmm1, %k2
704# CHECK-NEXT:  1      4     1.00                        vcmpeqss	%xmm0, %xmm1, %k2 {%k3}
705# CHECK-NEXT:  2      10    1.00    *                   vcmpeqss	(%rax), %xmm1, %k2 {%k3}
706# CHECK-NEXT:  1      2     1.00                        vcomiss	%xmm16, %xmm17
707# CHECK-NEXT:  2      7     1.00    *                   vcomiss	(%rax), %xmm17
708# CHECK-NEXT:  2      7     1.00                        vcvtdq2pd	%ymm16, %zmm19
709# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax), %zmm19
710# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax){1to8}, %zmm19
711# CHECK-NEXT:  1      4     0.50                        vcvtdq2pd	%ymm16, %zmm19 {%k1}
712# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax), %zmm19 {%k1}
713# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax){1to8}, %zmm19 {%k1}
714# CHECK-NEXT:  1      4     0.50                        vcvtdq2pd	%ymm16, %zmm19 {%k1} {z}
715# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax), %zmm19 {%k1} {z}
716# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2pd	(%rax){1to8}, %zmm19 {%k1} {z}
717# CHECK-NEXT:  1      4     0.50                        vcvtdq2ps	%zmm16, %zmm19
718# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2ps	(%rax), %zmm19
719# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2ps	(%rax){1to16}, %zmm19
720# CHECK-NEXT:  1      4     0.50                        vcvtdq2ps	%zmm16, %zmm19 {%k1}
721# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2ps	(%rax), %zmm19 {%k1}
722# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2ps	(%rax){1to16}, %zmm19 {%k1}
723# CHECK-NEXT:  1      4     0.50                        vcvtdq2ps	%zmm16, %zmm19 {%k1} {z}
724# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2ps	(%rax), %zmm19 {%k1} {z}
725# CHECK-NEXT:  2      11    0.50    *                   vcvtdq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
726# CHECK-NEXT:  1      4     0.50                        vcvtps2dq	%zmm16, %zmm19
727# CHECK-NEXT:  2      11    0.50    *                   vcvtps2dq	(%rax), %zmm19
728# CHECK-NEXT:  2      11    0.50    *                   vcvtps2dq	(%rax){1to16}, %zmm19
729# CHECK-NEXT:  1      3     0.50                        vcvtps2dq	%zmm16, %zmm19 {%k1}
730# CHECK-NEXT:  2      11    0.50    *                   vcvtps2dq	(%rax), %zmm19 {%k1}
731# CHECK-NEXT:  2      11    0.50    *                   vcvtps2dq	(%rax){1to16}, %zmm19 {%k1}
732# CHECK-NEXT:  1      3     0.50                        vcvtps2dq	%zmm16, %zmm19 {%k1} {z}
733# CHECK-NEXT:  2      11    0.50    *                   vcvtps2dq	(%rax), %zmm19 {%k1} {z}
734# CHECK-NEXT:  2      11    0.50    *                   vcvtps2dq	(%rax){1to16}, %zmm19 {%k1} {z}
735# CHECK-NEXT:  1      4     0.50                        vcvttps2dq	%zmm16, %zmm19
736# CHECK-NEXT:  2      11    0.50    *                   vcvttps2dq	(%rax), %zmm19
737# CHECK-NEXT:  2      11    0.50    *                   vcvttps2dq	(%rax){1to16}, %zmm19
738# CHECK-NEXT:  1      3     0.50                        vcvttps2dq	%zmm16, %zmm19 {%k1}
739# CHECK-NEXT:  2      11    0.50    *                   vcvttps2dq	(%rax), %zmm19 {%k1}
740# CHECK-NEXT:  2      11    0.50    *                   vcvttps2dq	(%rax){1to16}, %zmm19 {%k1}
741# CHECK-NEXT:  1      3     0.50                        vcvttps2dq	%zmm16, %zmm19 {%k1} {z}
742# CHECK-NEXT:  2      11    0.50    *                   vcvttps2dq	(%rax), %zmm19 {%k1} {z}
743# CHECK-NEXT:  2      11    0.50    *                   vcvttps2dq	(%rax){1to16}, %zmm19 {%k1} {z}
744# CHECK-NEXT:  3      23    16.00                       vdivpd	%zmm16, %zmm17, %zmm19
745# CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax), %zmm17, %zmm19
746# CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax){1to8}, %zmm17, %zmm19
747# CHECK-NEXT:  3      23    16.00                       vdivpd	%zmm16, %zmm17, %zmm19 {%k1}
748# CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax), %zmm17, %zmm19 {%k1}
749# CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
750# CHECK-NEXT:  3      23    16.00                       vdivpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
751# CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax), %zmm17, %zmm19 {%k1} {z}
752# CHECK-NEXT:  4      30    16.00   *                   vdivpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
753# CHECK-NEXT:  3      18    10.00                       vdivps	%zmm16, %zmm17, %zmm19
754# CHECK-NEXT:  4      25    10.00   *                   vdivps	(%rax), %zmm17, %zmm19
755# CHECK-NEXT:  4      25    10.00   *                   vdivps	(%rax){1to16}, %zmm17, %zmm19
756# CHECK-NEXT:  3      18    10.00                       vdivps	%zmm16, %zmm17, %zmm19 {%k1}
757# CHECK-NEXT:  4      25    10.00   *                   vdivps	(%rax), %zmm17, %zmm19 {%k1}
758# CHECK-NEXT:  4      25    10.00   *                   vdivps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
759# CHECK-NEXT:  3      18    10.00                       vdivps	%zmm16, %zmm17, %zmm19 {%k1} {z}
760# CHECK-NEXT:  4      25    10.00   *                   vdivps	(%rax), %zmm17, %zmm19 {%k1} {z}
761# CHECK-NEXT:  4      25    10.00   *                   vdivps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
762# CHECK-NEXT:  5      21    4.00    *                   vgatherdpd	(%rax,%ymm1,2), %zmm2 {%k1}
763# CHECK-NEXT:  5      25    8.00    *                   vgatherdps	(%rax,%zmm1,2), %zmm2 {%k1}
764# CHECK-NEXT:  5      21    4.00    *                   vgatherqpd	(%rax,%zmm1,2), %zmm2 {%k1}
765# CHECK-NEXT:  5      21    4.00    *                   vgatherqps	(%rax,%zmm1,2), %ymm2 {%k1}
766# CHECK-NEXT:  1      4     0.50                        vmaxpd	%zmm16, %zmm17, %zmm19
767# CHECK-NEXT:  2      11    0.50    *                   vmaxpd	(%rax), %zmm17, %zmm19
768# CHECK-NEXT:  2      11    0.50    *                   vmaxpd	(%rax){1to8}, %zmm17, %zmm19
769# CHECK-NEXT:  1      4     0.50                        vmaxpd	%zmm16, %zmm17, %zmm19 {%k1}
770# CHECK-NEXT:  2      11    0.50    *                   vmaxpd	(%rax), %zmm17, %zmm19 {%k1}
771# CHECK-NEXT:  2      11    0.50    *                   vmaxpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
772# CHECK-NEXT:  1      4     0.50                        vmaxpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
773# CHECK-NEXT:  2      11    0.50    *                   vmaxpd	(%rax), %zmm17, %zmm19 {%k1} {z}
774# CHECK-NEXT:  2      11    0.50    *                   vmaxpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
775# CHECK-NEXT:  1      4     0.50                        vmaxps	%zmm16, %zmm17, %zmm19
776# CHECK-NEXT:  2      11    0.50    *                   vmaxps	(%rax), %zmm17, %zmm19
777# CHECK-NEXT:  2      11    0.50    *                   vmaxps	(%rax){1to16}, %zmm17, %zmm19
778# CHECK-NEXT:  1      4     0.50                        vmaxps	%zmm16, %zmm17, %zmm19 {%k1}
779# CHECK-NEXT:  2      11    0.50    *                   vmaxps	(%rax), %zmm17, %zmm19 {%k1}
780# CHECK-NEXT:  2      11    0.50    *                   vmaxps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
781# CHECK-NEXT:  1      4     0.50                        vmaxps	%zmm16, %zmm17, %zmm19 {%k1} {z}
782# CHECK-NEXT:  2      11    0.50    *                   vmaxps	(%rax), %zmm17, %zmm19 {%k1} {z}
783# CHECK-NEXT:  2      11    0.50    *                   vmaxps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
784# CHECK-NEXT:  1      4     0.50                        vminpd	%zmm16, %zmm17, %zmm19
785# CHECK-NEXT:  2      11    0.50    *                   vminpd	(%rax), %zmm17, %zmm19
786# CHECK-NEXT:  2      11    0.50    *                   vminpd	(%rax){1to8}, %zmm17, %zmm19
787# CHECK-NEXT:  1      4     0.50                        vminpd	%zmm16, %zmm17, %zmm19 {%k1}
788# CHECK-NEXT:  2      11    0.50    *                   vminpd	(%rax), %zmm17, %zmm19 {%k1}
789# CHECK-NEXT:  2      11    0.50    *                   vminpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
790# CHECK-NEXT:  1      4     0.50                        vminpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
791# CHECK-NEXT:  2      11    0.50    *                   vminpd	(%rax), %zmm17, %zmm19 {%k1} {z}
792# CHECK-NEXT:  2      11    0.50    *                   vminpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
793# CHECK-NEXT:  1      4     0.50                        vminps	%zmm16, %zmm17, %zmm19
794# CHECK-NEXT:  2      11    0.50    *                   vminps	(%rax), %zmm17, %zmm19
795# CHECK-NEXT:  2      11    0.50    *                   vminps	(%rax){1to16}, %zmm17, %zmm19
796# CHECK-NEXT:  1      4     0.50                        vminps	%zmm16, %zmm17, %zmm19 {%k1}
797# CHECK-NEXT:  2      11    0.50    *                   vminps	(%rax), %zmm17, %zmm19 {%k1}
798# CHECK-NEXT:  2      11    0.50    *                   vminps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
799# CHECK-NEXT:  1      4     0.50                        vminps	%zmm16, %zmm17, %zmm19 {%k1} {z}
800# CHECK-NEXT:  2      11    0.50    *                   vminps	(%rax), %zmm17, %zmm19 {%k1} {z}
801# CHECK-NEXT:  2      11    0.50    *                   vminps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
802# CHECK-NEXT:  1      4     0.50                        vmulpd	%zmm16, %zmm17, %zmm19
803# CHECK-NEXT:  2      11    0.50    *                   vmulpd	(%rax), %zmm17, %zmm19
804# CHECK-NEXT:  2      11    0.50    *                   vmulpd	(%rax){1to8}, %zmm17, %zmm19
805# CHECK-NEXT:  1      4     0.50                        vmulpd	%zmm16, %zmm17, %zmm19 {%k1}
806# CHECK-NEXT:  2      11    0.50    *                   vmulpd	(%rax), %zmm17, %zmm19 {%k1}
807# CHECK-NEXT:  2      11    0.50    *                   vmulpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
808# CHECK-NEXT:  1      4     0.50                        vmulpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
809# CHECK-NEXT:  2      11    0.50    *                   vmulpd	(%rax), %zmm17, %zmm19 {%k1} {z}
810# CHECK-NEXT:  2      11    0.50    *                   vmulpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
811# CHECK-NEXT:  1      4     0.50                        vmulps	%zmm16, %zmm17, %zmm19
812# CHECK-NEXT:  2      11    0.50    *                   vmulps	(%rax), %zmm17, %zmm19
813# CHECK-NEXT:  2      11    0.50    *                   vmulps	(%rax){1to16}, %zmm17, %zmm19
814# CHECK-NEXT:  1      4     0.50                        vmulps	%zmm16, %zmm17, %zmm19 {%k1}
815# CHECK-NEXT:  2      11    0.50    *                   vmulps	(%rax), %zmm17, %zmm19 {%k1}
816# CHECK-NEXT:  2      11    0.50    *                   vmulps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
817# CHECK-NEXT:  1      4     0.50                        vmulps	%zmm16, %zmm17, %zmm19 {%k1} {z}
818# CHECK-NEXT:  2      11    0.50    *                   vmulps	(%rax), %zmm17, %zmm19 {%k1} {z}
819# CHECK-NEXT:  2      11    0.50    *                   vmulps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
820# CHECK-NEXT:  1      1     1.00                        vpabsd	%zmm16, %zmm19
821# CHECK-NEXT:  2      8     1.00    *                   vpabsd	(%rax), %zmm19
822# CHECK-NEXT:  2      8     1.00    *                   vpabsd	(%rax){1to16}, %zmm19
823# CHECK-NEXT:  1      1     1.00                        vpabsd	%zmm16, %zmm19 {%k1}
824# CHECK-NEXT:  2      8     1.00    *                   vpabsd	(%rax), %zmm19 {%k1}
825# CHECK-NEXT:  2      8     1.00    *                   vpabsd	(%rax){1to16}, %zmm19 {%k1}
826# CHECK-NEXT:  1      1     1.00                        vpabsd	%zmm16, %zmm19 {%k1} {z}
827# CHECK-NEXT:  2      8     1.00    *                   vpabsd	(%rax), %zmm19 {%k1} {z}
828# CHECK-NEXT:  2      8     1.00    *                   vpabsd	(%rax){1to16}, %zmm19 {%k1} {z}
829# CHECK-NEXT:  1      1     1.00                        vpabsq	%zmm16, %zmm19
830# CHECK-NEXT:  2      8     1.00    *                   vpabsq	(%rax), %zmm19
831# CHECK-NEXT:  2      8     1.00    *                   vpabsq	(%rax){1to8}, %zmm19
832# CHECK-NEXT:  1      1     1.00                        vpabsq	%zmm16, %zmm19 {%k1}
833# CHECK-NEXT:  2      8     1.00    *                   vpabsq	(%rax), %zmm19 {%k1}
834# CHECK-NEXT:  2      8     1.00    *                   vpabsq	(%rax){1to8}, %zmm19 {%k1}
835# CHECK-NEXT:  1      1     1.00                        vpabsq	%zmm16, %zmm19 {%k1} {z}
836# CHECK-NEXT:  2      8     1.00    *                   vpabsq	(%rax), %zmm19 {%k1} {z}
837# CHECK-NEXT:  2      8     1.00    *                   vpabsq	(%rax){1to8}, %zmm19 {%k1} {z}
838# CHECK-NEXT:  1      1     0.33                        vpaddd	%zmm16, %zmm17, %zmm19
839# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax), %zmm17, %zmm19
840# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax){1to16}, %zmm17, %zmm19
841# CHECK-NEXT:  1      1     0.33                        vpaddd	%zmm16, %zmm17, %zmm19 {%k1}
842# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax), %zmm17, %zmm19 {%k1}
843# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
844# CHECK-NEXT:  1      1     0.33                        vpaddd	%zmm16, %zmm17, %zmm19 {%k1} {z}
845# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax), %zmm17, %zmm19 {%k1} {z}
846# CHECK-NEXT:  2      8     0.50    *                   vpaddd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
847# CHECK-NEXT:  1      1     0.33                        vpaddq	%zmm16, %zmm17, %zmm19
848# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %zmm17, %zmm19
849# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to8}, %zmm17, %zmm19
850# CHECK-NEXT:  1      1     0.33                        vpaddq	%zmm16, %zmm17, %zmm19 {%k1}
851# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %zmm17, %zmm19 {%k1}
852# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
853# CHECK-NEXT:  1      1     0.33                        vpaddq	%zmm16, %zmm17, %zmm19 {%k1} {z}
854# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax), %zmm17, %zmm19 {%k1} {z}
855# CHECK-NEXT:  2      8     0.50    *                   vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
856# CHECK-NEXT:  1      4     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2
857# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2
858# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
859# CHECK-NEXT:  1      4     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
860# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
861# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
862# CHECK-NEXT:  1      4     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2
863# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2
864# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2
865# CHECK-NEXT:  1      4     1.00                        vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
866# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
867# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
868# CHECK-NEXT:  1      4     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2
869# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2
870# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
871# CHECK-NEXT:  1      4     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
872# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
873# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
874# CHECK-NEXT:  1      4     1.00                        vpcmpgtd	%zmm0, %zmm1, %k2
875# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtd	(%rax), %zmm1, %k2
876# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtd	(%rax){1to16}, %zmm1, %k2
877# CHECK-NEXT:  1      4     1.00                        vpcmpgtd	%zmm0, %zmm1, %k2 {%k3}
878# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtd	(%rax), %zmm1, %k2 {%k3}
879# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtd	(%rax){1to16}, %zmm1, %k2 {%k3}
880# CHECK-NEXT:  1      4     1.00                        vpcmpgtq	%zmm0, %zmm1, %k2
881# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtq	(%rax), %zmm1, %k2
882# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtq	(%rax){1to8}, %zmm1, %k2
883# CHECK-NEXT:  1      4     1.00                        vpcmpgtq	%zmm0, %zmm1, %k2 {%k3}
884# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtq	(%rax), %zmm1, %k2 {%k3}
885# CHECK-NEXT:  2      11    1.00    *                   vpcmpgtq	(%rax){1to8}, %zmm1, %k2 {%k3}
886# CHECK-NEXT:  1      4     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2
887# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2
888# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2
889# CHECK-NEXT:  1      4     1.00                        vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
890# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
891# CHECK-NEXT:  2      11    1.00    *                   vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
892# CHECK-NEXT:  1      4     1.00                        vpcmpequd	%zmm0, %zmm1, %k2
893# CHECK-NEXT:  2      11    1.00    *                   vpcmpequd	(%rax), %zmm1, %k2
894# CHECK-NEXT:  2      11    1.00    *                   vpcmpequd	(%rax){1to16}, %zmm1, %k2
895# CHECK-NEXT:  1      4     1.00                        vpcmpequd	%zmm0, %zmm1, %k2 {%k3}
896# CHECK-NEXT:  2      11    1.00    *                   vpcmpequd	(%rax), %zmm1, %k2 {%k3}
897# CHECK-NEXT:  2      11    1.00    *                   vpcmpequd	(%rax){1to16}, %zmm1, %k2 {%k3}
898# CHECK-NEXT:  1      4     1.00                        vpcmpequq	%zmm0, %zmm1, %k2
899# CHECK-NEXT:  2      11    1.00    *                   vpcmpequq	(%rax), %zmm1, %k2
900# CHECK-NEXT:  2      11    1.00    *                   vpcmpequq	(%rax){1to8}, %zmm1, %k2
901# CHECK-NEXT:  1      4     1.00                        vpcmpequq	%zmm0, %zmm1, %k2 {%k3}
902# CHECK-NEXT:  2      11    1.00    *                   vpcmpequq	(%rax), %zmm1, %k2 {%k3}
903# CHECK-NEXT:  2      11    1.00    *                   vpcmpequq	(%rax){1to8}, %zmm1, %k2 {%k3}
904# CHECK-NEXT:  5      21    4.00    *                   vpgatherdq	(%rax,%ymm1,2), %zmm2 {%k1}
905# CHECK-NEXT:  5      25    8.00    *                   vpgatherdd	(%rax,%zmm1,2), %zmm2 {%k1}
906# CHECK-NEXT:  5      21    4.00    *                   vpgatherqq	(%rax,%zmm1,2), %zmm2 {%k1}
907# CHECK-NEXT:  5      21    4.00    *                   vpgatherqd	(%rax,%zmm1,2), %ymm2 {%k1}
908# CHECK-NEXT:  2      10    1.00                        vpmulld	%zmm16, %zmm17, %zmm19
909# CHECK-NEXT:  3      17    1.00    *                   vpmulld	(%rax), %zmm17, %zmm19
910# CHECK-NEXT:  3      17    1.00    *                   vpmulld	(%rax){1to16}, %zmm17, %zmm19
911# CHECK-NEXT:  2      10    1.00                        vpmulld	%zmm16, %zmm17, %zmm19 {%k1}
912# CHECK-NEXT:  3      17    1.00    *                   vpmulld	(%rax), %zmm17, %zmm19 {%k1}
913# CHECK-NEXT:  3      17    1.00    *                   vpmulld	(%rax){1to16}, %zmm17, %zmm19 {%k1}
914# CHECK-NEXT:  2      10    1.00                        vpmulld	%zmm16, %zmm17, %zmm19 {%k1} {z}
915# CHECK-NEXT:  3      17    1.00    *                   vpmulld	(%rax), %zmm17, %zmm19 {%k1} {z}
916# CHECK-NEXT:  3      17    1.00    *                   vpmulld	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
917# CHECK-NEXT:  1      3     1.00                        vpermd	%zmm16, %zmm17, %zmm19
918# CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax), %zmm17, %zmm19
919# CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax){1to16}, %zmm17, %zmm19
920# CHECK-NEXT:  1      3     1.00                        vpermd	%zmm16, %zmm17, %zmm19 {%k1}
921# CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax), %zmm17, %zmm19 {%k1}
922# CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
923# CHECK-NEXT:  1      3     1.00                        vpermd	%zmm16, %zmm17, %zmm19 {%k1} {z}
924# CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax), %zmm17, %zmm19 {%k1} {z}
925# CHECK-NEXT:  2      10    1.00    *                   vpermd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
926# CHECK-NEXT:  1      1     1.00                        vpermilpd	$0, %zmm16, %zmm19
927# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	$0, (%rax), %zmm19
928# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	$0, (%rax){1to8}, %zmm19
929# CHECK-NEXT:  1      1     1.00                        vpermilpd	$0, %zmm16, %zmm19 {%k1}
930# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	$0, (%rax), %zmm19 {%k1}
931# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	$0, (%rax){1to8}, %zmm19 {%k1}
932# CHECK-NEXT:  1      1     1.00                        vpermilpd	$0, %zmm16, %zmm19 {%k1} {z}
933# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	$0, (%rax), %zmm19 {%k1} {z}
934# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	$0, (%rax){1to8}, %zmm19 {%k1} {z}
935# CHECK-NEXT:  1      1     1.00                        vpermilpd	%zmm16, %zmm17, %zmm19
936# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	(%rax), %zmm17, %zmm19
937# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	(%rax){1to8}, %zmm17, %zmm19
938# CHECK-NEXT:  1      1     1.00                        vpermilpd	%zmm16, %zmm17, %zmm19 {%k1}
939# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	(%rax), %zmm17, %zmm19 {%k1}
940# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
941# CHECK-NEXT:  1      1     1.00                        vpermilpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
942# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	(%rax), %zmm17, %zmm19 {%k1} {z}
943# CHECK-NEXT:  2      8     1.00    *                   vpermilpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
944# CHECK-NEXT:  1      1     1.00                        vpermilps	$0, %zmm16, %zmm19
945# CHECK-NEXT:  2      8     1.00    *                   vpermilps	$0, (%rax), %zmm19
946# CHECK-NEXT:  2      8     1.00    *                   vpermilps	$0, (%rax){1to16}, %zmm19
947# CHECK-NEXT:  1      1     1.00                        vpermilps	$0, %zmm16, %zmm19 {%k1}
948# CHECK-NEXT:  2      8     1.00    *                   vpermilps	$0, (%rax), %zmm19 {%k1}
949# CHECK-NEXT:  2      8     1.00    *                   vpermilps	$0, (%rax){1to16}, %zmm19 {%k1}
950# CHECK-NEXT:  1      1     1.00                        vpermilps	$0, %zmm16, %zmm19 {%k1} {z}
951# CHECK-NEXT:  2      8     1.00    *                   vpermilps	$0, (%rax), %zmm19 {%k1} {z}
952# CHECK-NEXT:  2      8     1.00    *                   vpermilps	$0, (%rax){1to16}, %zmm19 {%k1} {z}
953# CHECK-NEXT:  1      1     1.00                        vpermilps	%zmm16, %zmm17, %zmm19
954# CHECK-NEXT:  2      8     1.00    *                   vpermilps	(%rax), %zmm17, %zmm19
955# CHECK-NEXT:  2      8     1.00    *                   vpermilps	(%rax){1to16}, %zmm17, %zmm19
956# CHECK-NEXT:  1      1     1.00                        vpermilps	%zmm16, %zmm17, %zmm19 {%k1}
957# CHECK-NEXT:  2      8     1.00    *                   vpermilps	(%rax), %zmm17, %zmm19 {%k1}
958# CHECK-NEXT:  2      8     1.00    *                   vpermilps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
959# CHECK-NEXT:  1      1     1.00                        vpermilps	%zmm16, %zmm17, %zmm19 {%k1} {z}
960# CHECK-NEXT:  2      8     1.00    *                   vpermilps	(%rax), %zmm17, %zmm19 {%k1} {z}
961# CHECK-NEXT:  2      8     1.00    *                   vpermilps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
962# CHECK-NEXT:  1      3     1.00                        vpermpd	$0, %zmm16, %zmm19
963# CHECK-NEXT:  2      10    1.00    *                   vpermpd	$0, (%rax), %zmm19
964# CHECK-NEXT:  2      10    1.00    *                   vpermpd	$0, (%rax){1to8}, %zmm19
965# CHECK-NEXT:  1      3     1.00                        vpermpd	$0, %zmm16, %zmm19 {%k1}
966# CHECK-NEXT:  2      10    1.00    *                   vpermpd	$0, (%rax), %zmm19 {%k1}
967# CHECK-NEXT:  2      10    1.00    *                   vpermpd	$0, (%rax){1to8}, %zmm19 {%k1}
968# CHECK-NEXT:  1      3     1.00                        vpermpd	$0, %zmm16, %zmm19 {%k1} {z}
969# CHECK-NEXT:  2      10    1.00    *                   vpermpd	$0, (%rax), %zmm19 {%k1} {z}
970# CHECK-NEXT:  2      10    1.00    *                   vpermpd	$0, (%rax){1to8}, %zmm19 {%k1} {z}
971# CHECK-NEXT:  1      3     1.00                        vpermpd	%zmm16, %zmm17, %zmm19
972# CHECK-NEXT:  2      10    1.00    *                   vpermpd	(%rax), %zmm17, %zmm19
973# CHECK-NEXT:  2      10    1.00    *                   vpermpd	(%rax){1to8}, %zmm17, %zmm19
974# CHECK-NEXT:  1      3     1.00                        vpermpd	%zmm16, %zmm17, %zmm19 {%k1}
975# CHECK-NEXT:  2      10    1.00    *                   vpermpd	(%rax), %zmm17, %zmm19 {%k1}
976# CHECK-NEXT:  2      10    1.00    *                   vpermpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
977# CHECK-NEXT:  1      3     1.00                        vpermpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
978# CHECK-NEXT:  2      10    1.00    *                   vpermpd	(%rax), %zmm17, %zmm19 {%k1} {z}
979# CHECK-NEXT:  2      10    1.00    *                   vpermpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
980# CHECK-NEXT:  1      3     1.00                        vpermps	%zmm16, %zmm17, %zmm19
981# CHECK-NEXT:  2      10    1.00    *                   vpermps	(%rax), %zmm17, %zmm19
982# CHECK-NEXT:  2      10    1.00    *                   vpermps	(%rax){1to16}, %zmm17, %zmm19
983# CHECK-NEXT:  1      3     1.00                        vpermps	%zmm16, %zmm17, %zmm19 {%k1}
984# CHECK-NEXT:  2      10    1.00    *                   vpermps	(%rax), %zmm17, %zmm19 {%k1}
985# CHECK-NEXT:  2      10    1.00    *                   vpermps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
986# CHECK-NEXT:  1      3     1.00                        vpermps	%zmm16, %zmm17, %zmm19 {%k1} {z}
987# CHECK-NEXT:  2      10    1.00    *                   vpermps	(%rax), %zmm17, %zmm19 {%k1} {z}
988# CHECK-NEXT:  2      10    1.00    *                   vpermps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
989# CHECK-NEXT:  1      3     1.00                        vpermq	$0, %zmm16, %zmm19
990# CHECK-NEXT:  2      10    1.00    *                   vpermq	$0, (%rax), %zmm19
991# CHECK-NEXT:  2      10    1.00    *                   vpermq	$0, (%rax){1to8}, %zmm19
992# CHECK-NEXT:  1      3     1.00                        vpermq	$0, %zmm16, %zmm19 {%k1}
993# CHECK-NEXT:  2      10    1.00    *                   vpermq	$0, (%rax), %zmm19 {%k1}
994# CHECK-NEXT:  2      10    1.00    *                   vpermq	$0, (%rax){1to8}, %zmm19 {%k1}
995# CHECK-NEXT:  1      3     1.00                        vpermq	$0, %zmm16, %zmm19 {%k1} {z}
996# CHECK-NEXT:  2      10    1.00    *                   vpermq	$0, (%rax), %zmm19 {%k1} {z}
997# CHECK-NEXT:  2      10    1.00    *                   vpermq	$0, (%rax){1to8}, %zmm19 {%k1} {z}
998# CHECK-NEXT:  1      3     1.00                        vpermq	%zmm16, %zmm17, %zmm19
999# CHECK-NEXT:  2      10    1.00    *                   vpermq	(%rax), %zmm17, %zmm19
1000# CHECK-NEXT:  2      10    1.00    *                   vpermq	(%rax){1to8}, %zmm17, %zmm19
1001# CHECK-NEXT:  1      3     1.00                        vpermq	%zmm16, %zmm17, %zmm19 {%k1}
1002# CHECK-NEXT:  2      10    1.00    *                   vpermq	(%rax), %zmm17, %zmm19 {%k1}
1003# CHECK-NEXT:  2      10    1.00    *                   vpermq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1004# CHECK-NEXT:  1      3     1.00                        vpermq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1005# CHECK-NEXT:  2      10    1.00    *                   vpermq	(%rax), %zmm17, %zmm19 {%k1} {z}
1006# CHECK-NEXT:  2      10    1.00    *                   vpermq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1007# CHECK-NEXT:  1      1     1.00                        vpshufd	$0, %zmm16, %zmm19
1008# CHECK-NEXT:  2      8     1.00    *                   vpshufd	$0, (%rax), %zmm19
1009# CHECK-NEXT:  2      8     1.00    *                   vpshufd	$0, (%rax){1to16}, %zmm19
1010# CHECK-NEXT:  1      1     1.00                        vpshufd	$0, %zmm16, %zmm19 {%k1}
1011# CHECK-NEXT:  2      8     1.00    *                   vpshufd	$0, (%rax), %zmm19 {%k1}
1012# CHECK-NEXT:  2      8     1.00    *                   vpshufd	$0, (%rax){1to16}, %zmm19 {%k1}
1013# CHECK-NEXT:  1      1     1.00                        vpshufd	$0, %zmm16, %zmm19 {%k1} {z}
1014# CHECK-NEXT:  2      8     1.00    *                   vpshufd	$0, (%rax), %zmm19 {%k1} {z}
1015# CHECK-NEXT:  2      8     1.00    *                   vpshufd	$0, (%rax){1to16}, %zmm19 {%k1} {z}
1016# CHECK-NEXT:  1      1     0.33                        vpsubd	%zmm16, %zmm17, %zmm19
1017# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %zmm17, %zmm19
1018# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax){1to16}, %zmm17, %zmm19
1019# CHECK-NEXT:  1      1     0.33                        vpsubd	%zmm16, %zmm17, %zmm19 {%k1}
1020# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %zmm17, %zmm19 {%k1}
1021# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1022# CHECK-NEXT:  1      1     0.33                        vpsubd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1023# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %zmm17, %zmm19 {%k1} {z}
1024# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1025# CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19
1026# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19
1027# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19
1028# CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19 {%k1}
1029# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19 {%k1}
1030# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1031# CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1032# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
1033# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1034# CHECK-NEXT:  1      1     1.00                        vpunpckhdq	%zmm16, %zmm17, %zmm19
1035# CHECK-NEXT:  2      8     1.00    *                   vpunpckhdq	(%rax), %zmm17, %zmm19
1036# CHECK-NEXT:  2      8     1.00    *                   vpunpckhdq	(%rax){1to16}, %zmm17, %zmm19
1037# CHECK-NEXT:  1      1     1.00                        vpunpckhdq	%zmm16, %zmm17, %zmm19 {%k1}
1038# CHECK-NEXT:  2      8     1.00    *                   vpunpckhdq	(%rax), %zmm17, %zmm19 {%k1}
1039# CHECK-NEXT:  2      8     1.00    *                   vpunpckhdq	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1040# CHECK-NEXT:  1      1     1.00                        vpunpckhdq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1041# CHECK-NEXT:  2      8     1.00    *                   vpunpckhdq	(%rax), %zmm17, %zmm19 {%k1} {z}
1042# CHECK-NEXT:  2      8     1.00    *                   vpunpckhdq	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1043# CHECK-NEXT:  1      1     1.00                        vpunpckhqdq	%zmm16, %zmm17, %zmm19
1044# CHECK-NEXT:  2      8     1.00    *                   vpunpckhqdq	(%rax), %zmm17, %zmm19
1045# CHECK-NEXT:  2      8     1.00    *                   vpunpckhqdq	(%rax){1to8}, %zmm17, %zmm19
1046# CHECK-NEXT:  1      1     1.00                        vpunpckhqdq	%zmm16, %zmm17, %zmm19 {%k1}
1047# CHECK-NEXT:  2      8     1.00    *                   vpunpckhqdq	(%rax), %zmm17, %zmm19 {%k1}
1048# CHECK-NEXT:  2      8     1.00    *                   vpunpckhqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1049# CHECK-NEXT:  1      1     1.00                        vpunpckhqdq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1050# CHECK-NEXT:  2      8     1.00    *                   vpunpckhqdq	(%rax), %zmm17, %zmm19 {%k1} {z}
1051# CHECK-NEXT:  2      8     1.00    *                   vpunpckhqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1052# CHECK-NEXT:  1      1     1.00                        vpunpckldq	%zmm16, %zmm17, %zmm19
1053# CHECK-NEXT:  2      8     1.00    *                   vpunpckldq	(%rax), %zmm17, %zmm19
1054# CHECK-NEXT:  2      8     1.00    *                   vpunpckldq	(%rax){1to16}, %zmm17, %zmm19
1055# CHECK-NEXT:  1      1     1.00                        vpunpckldq	%zmm16, %zmm17, %zmm19 {%k1}
1056# CHECK-NEXT:  2      8     1.00    *                   vpunpckldq	(%rax), %zmm17, %zmm19 {%k1}
1057# CHECK-NEXT:  2      8     1.00    *                   vpunpckldq	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1058# CHECK-NEXT:  1      1     1.00                        vpunpckldq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1059# CHECK-NEXT:  2      8     1.00    *                   vpunpckldq	(%rax), %zmm17, %zmm19 {%k1} {z}
1060# CHECK-NEXT:  2      8     1.00    *                   vpunpckldq	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1061# CHECK-NEXT:  1      1     1.00                        vpunpcklqdq	%zmm16, %zmm17, %zmm19
1062# CHECK-NEXT:  2      8     1.00    *                   vpunpcklqdq	(%rax), %zmm17, %zmm19
1063# CHECK-NEXT:  2      8     1.00    *                   vpunpcklqdq	(%rax){1to8}, %zmm17, %zmm19
1064# CHECK-NEXT:  1      1     1.00                        vpunpcklqdq	%zmm16, %zmm17, %zmm19 {%k1}
1065# CHECK-NEXT:  2      8     1.00    *                   vpunpcklqdq	(%rax), %zmm17, %zmm19 {%k1}
1066# CHECK-NEXT:  2      8     1.00    *                   vpunpcklqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1067# CHECK-NEXT:  1      1     1.00                        vpunpcklqdq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1068# CHECK-NEXT:  2      8     1.00    *                   vpunpcklqdq	(%rax), %zmm17, %zmm19 {%k1} {z}
1069# CHECK-NEXT:  2      8     1.00    *                   vpunpcklqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1070# CHECK-NEXT:  1      3     1.00                        vshuff32x4	$0, %zmm16, %zmm17, %zmm19
1071# CHECK-NEXT:  2      10    1.00    *                   vshuff32x4	$0, (%rax), %zmm17, %zmm19
1072# CHECK-NEXT:  2      10    1.00    *                   vshuff32x4	$0, (%rax){1to16}, %zmm17, %zmm19
1073# CHECK-NEXT:  1      3     1.00                        vshuff32x4	$0, %zmm16, %zmm17, %zmm19 {%k1}
1074# CHECK-NEXT:  2      10    1.00    *                   vshuff32x4	$0, (%rax), %zmm17, %zmm19 {%k1}
1075# CHECK-NEXT:  2      10    1.00    *                   vshuff32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1}
1076# CHECK-NEXT:  1      3     1.00                        vshuff32x4	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1077# CHECK-NEXT:  2      10    1.00    *                   vshuff32x4	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1078# CHECK-NEXT:  2      10    1.00    *                   vshuff32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1079# CHECK-NEXT:  1      3     1.00                        vshuff64x2	$0, %zmm16, %zmm17, %zmm19
1080# CHECK-NEXT:  2      10    1.00    *                   vshuff64x2	$0, (%rax), %zmm17, %zmm19
1081# CHECK-NEXT:  2      10    1.00    *                   vshuff64x2	$0, (%rax){1to8}, %zmm17, %zmm19
1082# CHECK-NEXT:  1      3     1.00                        vshuff64x2	$0, %zmm16, %zmm17, %zmm19 {%k1}
1083# CHECK-NEXT:  2      10    1.00    *                   vshuff64x2	$0, (%rax), %zmm17, %zmm19 {%k1}
1084# CHECK-NEXT:  2      10    1.00    *                   vshuff64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1}
1085# CHECK-NEXT:  1      3     1.00                        vshuff64x2	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1086# CHECK-NEXT:  2      10    1.00    *                   vshuff64x2	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1087# CHECK-NEXT:  2      10    1.00    *                   vshuff64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1088# CHECK-NEXT:  1      3     1.00                        vshufi32x4	$0, %zmm16, %zmm17, %zmm19
1089# CHECK-NEXT:  2      10    1.00    *                   vshufi32x4	$0, (%rax), %zmm17, %zmm19
1090# CHECK-NEXT:  2      10    1.00    *                   vshufi32x4	$0, (%rax){1to16}, %zmm17, %zmm19
1091# CHECK-NEXT:  1      3     1.00                        vshufi32x4	$0, %zmm16, %zmm17, %zmm19 {%k1}
1092# CHECK-NEXT:  2      10    1.00    *                   vshufi32x4	$0, (%rax), %zmm17, %zmm19 {%k1}
1093# CHECK-NEXT:  2      10    1.00    *                   vshufi32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1}
1094# CHECK-NEXT:  1      3     1.00                        vshufi32x4	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1095# CHECK-NEXT:  2      10    1.00    *                   vshufi32x4	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1096# CHECK-NEXT:  2      10    1.00    *                   vshufi32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1097# CHECK-NEXT:  1      3     1.00                        vshufi64x2	$0, %zmm16, %zmm17, %zmm19
1098# CHECK-NEXT:  2      10    1.00    *                   vshufi64x2	$0, (%rax), %zmm17, %zmm19
1099# CHECK-NEXT:  2      10    1.00    *                   vshufi64x2	$0, (%rax){1to8}, %zmm17, %zmm19
1100# CHECK-NEXT:  1      3     1.00                        vshufi64x2	$0, %zmm16, %zmm17, %zmm19 {%k1}
1101# CHECK-NEXT:  2      10    1.00    *                   vshufi64x2	$0, (%rax), %zmm17, %zmm19 {%k1}
1102# CHECK-NEXT:  2      10    1.00    *                   vshufi64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1}
1103# CHECK-NEXT:  1      3     1.00                        vshufi64x2	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1104# CHECK-NEXT:  2      10    1.00    *                   vshufi64x2	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1105# CHECK-NEXT:  2      10    1.00    *                   vshufi64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1106# CHECK-NEXT:  3      32    24.00                       vsqrtpd	%zmm16, %zmm19
1107# CHECK-NEXT:  4      39    24.00   *                   vsqrtpd	(%rax), %zmm19
1108# CHECK-NEXT:  4      39    24.00   *                   vsqrtpd	(%rax){1to8}, %zmm19
1109# CHECK-NEXT:  3      32    24.00                       vsqrtpd	%zmm16, %zmm19 {%k1}
1110# CHECK-NEXT:  4      39    24.00   *                   vsqrtpd	(%rax), %zmm19 {%k1}
1111# CHECK-NEXT:  4      39    24.00   *                   vsqrtpd	(%rax){1to8}, %zmm19 {%k1}
1112# CHECK-NEXT:  3      32    24.00                       vsqrtpd	%zmm16, %zmm19 {%k1} {z}
1113# CHECK-NEXT:  4      39    24.00   *                   vsqrtpd	(%rax), %zmm19 {%k1} {z}
1114# CHECK-NEXT:  4      39    24.00   *                   vsqrtpd	(%rax){1to8}, %zmm19 {%k1} {z}
1115# CHECK-NEXT:  3      20    12.00                       vsqrtps	%zmm16, %zmm19
1116# CHECK-NEXT:  4      27    12.00   *                   vsqrtps	(%rax), %zmm19
1117# CHECK-NEXT:  4      27    12.00   *                   vsqrtps	(%rax){1to16}, %zmm19
1118# CHECK-NEXT:  3      20    12.00                       vsqrtps	%zmm16, %zmm19 {%k1}
1119# CHECK-NEXT:  4      27    12.00   *                   vsqrtps	(%rax), %zmm19 {%k1}
1120# CHECK-NEXT:  4      27    12.00   *                   vsqrtps	(%rax){1to16}, %zmm19 {%k1}
1121# CHECK-NEXT:  3      20    12.00                       vsqrtps	%zmm16, %zmm19 {%k1} {z}
1122# CHECK-NEXT:  4      27    12.00   *                   vsqrtps	(%rax), %zmm19 {%k1} {z}
1123# CHECK-NEXT:  4      27    12.00   *                   vsqrtps	(%rax){1to16}, %zmm19 {%k1} {z}
1124# CHECK-NEXT:  1      18    6.00                        vsqrtsd	%xmm16, %xmm17, %xmm19
1125# CHECK-NEXT:  2      23    6.00    *                   vsqrtsd	(%rax), %xmm17, %xmm19
1126# CHECK-NEXT:  1      18    6.00                        vsqrtsd	%xmm16, %xmm17, %xmm19 {%k1}
1127# CHECK-NEXT:  2      23    6.00    *                   vsqrtsd	(%rax), %xmm17, %xmm19 {%k1}
1128# CHECK-NEXT:  1      18    6.00                        vsqrtsd	%xmm16, %xmm17, %xmm19 {%k1} {z}
1129# CHECK-NEXT:  2      23    6.00    *                   vsqrtsd	(%rax), %xmm17, %xmm19 {%k1} {z}
1130# CHECK-NEXT:  1      12    3.00                        vsqrtss	%xmm16, %xmm17, %xmm19
1131# CHECK-NEXT:  2      17    3.00    *                   vsqrtss	(%rax), %xmm17, %xmm19
1132# CHECK-NEXT:  1      12    3.00                        vsqrtss	%xmm16, %xmm17, %xmm19 {%k1}
1133# CHECK-NEXT:  2      17    3.00    *                   vsqrtss	(%rax), %xmm17, %xmm19 {%k1}
1134# CHECK-NEXT:  1      12    3.00                        vsqrtss	%xmm16, %xmm17, %xmm19 {%k1} {z}
1135# CHECK-NEXT:  2      17    3.00    *                   vsqrtss	(%rax), %xmm17, %xmm19 {%k1} {z}
1136# CHECK-NEXT:  1      1     0.33                        vpsubd	%zmm16, %zmm17, %zmm19
1137# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %zmm17, %zmm19
1138# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax){1to16}, %zmm17, %zmm19
1139# CHECK-NEXT:  1      1     0.33                        vpsubd	%zmm16, %zmm17, %zmm19 {%k1}
1140# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %zmm17, %zmm19 {%k1}
1141# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1142# CHECK-NEXT:  1      1     0.33                        vpsubd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1143# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax), %zmm17, %zmm19 {%k1} {z}
1144# CHECK-NEXT:  2      8     0.50    *                   vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1145# CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19
1146# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19
1147# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19
1148# CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19 {%k1}
1149# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19 {%k1}
1150# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1151# CHECK-NEXT:  1      1     0.33                        vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1152# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
1153# CHECK-NEXT:  2      8     0.50    *                   vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1154# CHECK-NEXT:  1      4     1.00                        vptestmd	%zmm0, %zmm1, %k2
1155# CHECK-NEXT:  2      11    1.00    *                   vptestmd	(%rax), %zmm1, %k2
1156# CHECK-NEXT:  2      11    1.00    *                   vptestmd	(%rax){1to16}, %zmm1, %k2
1157# CHECK-NEXT:  1      4     1.00                        vptestmd	%zmm0, %zmm1, %k2 {%k3}
1158# CHECK-NEXT:  2      11    1.00    *                   vptestmd	(%rax), %zmm1, %k2 {%k3}
1159# CHECK-NEXT:  2      11    1.00    *                   vptestmd	(%rax){1to16}, %zmm1, %k2 {%k3}
1160# CHECK-NEXT:  1      4     1.00                        vptestmq	%zmm0, %zmm1, %k2
1161# CHECK-NEXT:  2      11    1.00    *                   vptestmq	(%rax), %zmm1, %k2
1162# CHECK-NEXT:  2      11    1.00    *                   vptestmq	(%rax){1to8}, %zmm1, %k2
1163# CHECK-NEXT:  1      4     1.00                        vptestmq	%zmm0, %zmm1, %k2 {%k3}
1164# CHECK-NEXT:  2      11    1.00    *                   vptestmq	(%rax), %zmm1, %k2 {%k3}
1165# CHECK-NEXT:  2      11    1.00    *                   vptestmq	(%rax){1to8}, %zmm1, %k2 {%k3}
1166# CHECK-NEXT:  1      4     1.00                        vptestnmd	%zmm0, %zmm1, %k2
1167# CHECK-NEXT:  2      11    1.00    *                   vptestnmd	(%rax), %zmm1, %k2
1168# CHECK-NEXT:  2      11    1.00    *                   vptestnmd	(%rax){1to16}, %zmm1, %k2
1169# CHECK-NEXT:  1      4     1.00                        vptestnmd	%zmm0, %zmm1, %k2 {%k3}
1170# CHECK-NEXT:  2      11    1.00    *                   vptestnmd	(%rax), %zmm1, %k2 {%k3}
1171# CHECK-NEXT:  2      11    1.00    *                   vptestnmd	(%rax){1to16}, %zmm1, %k2 {%k3}
1172# CHECK-NEXT:  1      4     1.00                        vptestnmq	%zmm0, %zmm1, %k2
1173# CHECK-NEXT:  2      11    1.00    *                   vptestnmq	(%rax), %zmm1, %k2
1174# CHECK-NEXT:  2      11    1.00    *                   vptestnmq	(%rax){1to8}, %zmm1, %k2
1175# CHECK-NEXT:  1      4     1.00                        vptestnmq	%zmm0, %zmm1, %k2 {%k3}
1176# CHECK-NEXT:  2      11    1.00    *                   vptestnmq	(%rax), %zmm1, %k2 {%k3}
1177# CHECK-NEXT:  2      11    1.00    *                   vptestnmq	(%rax){1to8}, %zmm1, %k2 {%k3}
1178# CHECK-NEXT:  1      4     0.50                        vsubpd	%zmm16, %zmm17, %zmm19
1179# CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax), %zmm17, %zmm19
1180# CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax){1to8}, %zmm17, %zmm19
1181# CHECK-NEXT:  1      4     0.50                        vsubpd	%zmm16, %zmm17, %zmm19 {%k1}
1182# CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax), %zmm17, %zmm19 {%k1}
1183# CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1184# CHECK-NEXT:  1      4     0.50                        vsubpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1185# CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1186# CHECK-NEXT:  2      11    0.50    *                   vsubpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1187# CHECK-NEXT:  1      4     0.50                        vsubps	%zmm16, %zmm17, %zmm19
1188# CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax), %zmm17, %zmm19
1189# CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax){1to16}, %zmm17, %zmm19
1190# CHECK-NEXT:  1      4     0.50                        vsubps	%zmm16, %zmm17, %zmm19 {%k1}
1191# CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax), %zmm17, %zmm19 {%k1}
1192# CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1193# CHECK-NEXT:  1      4     0.50                        vsubps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1194# CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax), %zmm17, %zmm19 {%k1} {z}
1195# CHECK-NEXT:  2      11    0.50    *                   vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1196# CHECK-NEXT:  1      2     1.00                        vucomiss	%xmm16, %xmm17
1197# CHECK-NEXT:  2      7     1.00    *                   vucomiss	(%rax), %xmm17
1198# CHECK-NEXT:  1      1     1.00                        vunpckhpd	%zmm16, %zmm17, %zmm19
1199# CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax), %zmm17, %zmm19
1200# CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax){1to8}, %zmm17, %zmm19
1201# CHECK-NEXT:  1      1     1.00                        vunpckhpd	%zmm16, %zmm17, %zmm19 {%k1}
1202# CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax), %zmm17, %zmm19 {%k1}
1203# CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1204# CHECK-NEXT:  1      1     1.00                        vunpckhpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1205# CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1206# CHECK-NEXT:  2      8     1.00    *                   vunpckhpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1207# CHECK-NEXT:  1      1     1.00                        vunpckhps	%zmm16, %zmm17, %zmm19
1208# CHECK-NEXT:  2      8     1.00    *                   vunpckhps	(%rax), %zmm17, %zmm19
1209# CHECK-NEXT:  2      8     1.00    *                   vunpckhps	(%rax){1to16}, %zmm17, %zmm19
1210# CHECK-NEXT:  1      1     1.00                        vunpckhps	%zmm16, %zmm17, %zmm19 {%k1}
1211# CHECK-NEXT:  2      8     1.00    *                   vunpckhps	(%rax), %zmm17, %zmm19 {%k1}
1212# CHECK-NEXT:  2      8     1.00    *                   vunpckhps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1213# CHECK-NEXT:  1      1     1.00                        vunpckhps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1214# CHECK-NEXT:  2      8     1.00    *                   vunpckhps	(%rax), %zmm17, %zmm19 {%k1} {z}
1215# CHECK-NEXT:  2      8     1.00    *                   vunpckhps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1216# CHECK-NEXT:  1      1     1.00                        vunpcklpd	%zmm16, %zmm17, %zmm19
1217# CHECK-NEXT:  2      8     1.00    *                   vunpcklpd	(%rax), %zmm17, %zmm19
1218# CHECK-NEXT:  2      8     1.00    *                   vunpcklpd	(%rax){1to8}, %zmm17, %zmm19
1219# CHECK-NEXT:  1      1     1.00                        vunpcklpd	%zmm16, %zmm17, %zmm19 {%k1}
1220# CHECK-NEXT:  2      8     1.00    *                   vunpcklpd	(%rax), %zmm17, %zmm19 {%k1}
1221# CHECK-NEXT:  2      8     1.00    *                   vunpcklpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1222# CHECK-NEXT:  1      1     1.00                        vunpcklpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1223# CHECK-NEXT:  2      8     1.00    *                   vunpcklpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1224# CHECK-NEXT:  2      8     1.00    *                   vunpcklpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1225# CHECK-NEXT:  1      1     1.00                        vunpcklps	%zmm16, %zmm17, %zmm19
1226# CHECK-NEXT:  2      8     1.00    *                   vunpcklps	(%rax), %zmm17, %zmm19
1227# CHECK-NEXT:  2      8     1.00    *                   vunpcklps	(%rax){1to16}, %zmm17, %zmm19
1228# CHECK-NEXT:  1      1     1.00                        vunpcklps	%zmm16, %zmm17, %zmm19 {%k1}
1229# CHECK-NEXT:  2      8     1.00    *                   vunpcklps	(%rax), %zmm17, %zmm19 {%k1}
1230# CHECK-NEXT:  2      8     1.00    *                   vunpcklps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1231# CHECK-NEXT:  1      1     1.00                        vunpcklps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1232# CHECK-NEXT:  2      8     1.00    *                   vunpcklps	(%rax), %zmm17, %zmm19 {%k1} {z}
1233# CHECK-NEXT:  2      8     1.00    *                   vunpcklps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1234
1235# CHECK:      Resources:
1236# CHECK-NEXT: [0]   - SKXDivider
1237# CHECK-NEXT: [1]   - SKXFPDivider
1238# CHECK-NEXT: [2]   - SKXPort0
1239# CHECK-NEXT: [3]   - SKXPort1
1240# CHECK-NEXT: [4]   - SKXPort2
1241# CHECK-NEXT: [5]   - SKXPort3
1242# CHECK-NEXT: [6]   - SKXPort4
1243# CHECK-NEXT: [7]   - SKXPort5
1244# CHECK-NEXT: [8]   - SKXPort6
1245# CHECK-NEXT: [9]   - SKXPort7
1246
1247# CHECK:      Resource pressure per iteration:
1248# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]
1249# CHECK-NEXT:  -     612.00 209.67 30.67  224.00 224.00  -     429.67 2.00    -
1250
1251# CHECK:      Resource pressure by instruction:
1252# CHECK-NEXT: [0]    [1]    [2]    [3]    [4]    [5]    [6]    [7]    [8]    [9]    Instructions:
1253# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandw	%k0, %k1, %k2
1254# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kandnw	%k0, %k1, %k2
1255# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     korw	%k0, %k1, %k2
1256# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxnorw	%k0, %k1, %k2
1257# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     kxorw	%k0, %k1, %k2
1258# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftlw	$2, %k1, %k2
1259# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kshiftrw	$2, %k1, %k2
1260# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     kunpckbw	%k0, %k1, %k2
1261# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddpd	%zmm16, %zmm17, %zmm19
1262# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax), %zmm17, %zmm19
1263# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax){1to8}, %zmm17, %zmm19
1264# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddpd	%zmm16, %zmm17, %zmm19 {%k1}
1265# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax), %zmm17, %zmm19 {%k1}
1266# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1267# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1268# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1269# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1270# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddps	%zmm16, %zmm17, %zmm19
1271# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax), %zmm17, %zmm19
1272# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax){1to16}, %zmm17, %zmm19
1273# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddps	%zmm16, %zmm17, %zmm19 {%k1}
1274# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax), %zmm17, %zmm19 {%k1}
1275# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1276# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vaddps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1277# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax), %zmm17, %zmm19 {%k1} {z}
1278# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vaddps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1279# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%zmm0, %zmm1, %k2
1280# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %zmm1, %k2
1281# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to8}, %zmm1, %k2
1282# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqpd	%zmm0, %zmm1, %k2 {%k3}
1283# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax), %zmm1, %k2 {%k3}
1284# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqpd	(%rax){1to8}, %zmm1, %k2 {%k3}
1285# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%zmm0, %zmm1, %k2
1286# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %zmm1, %k2
1287# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to16}, %zmm1, %k2
1288# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqps	%zmm0, %zmm1, %k2 {%k3}
1289# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax), %zmm1, %k2 {%k3}
1290# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqps	(%rax){1to16}, %zmm1, %k2 {%k3}
1291# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqsd	%xmm0, %xmm1, %k2
1292# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqsd	(%rax), %xmm1, %k2
1293# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqsd	%xmm0, %xmm1, %k2 {%k3}
1294# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqsd	(%rax), %xmm1, %k2 {%k3}
1295# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqss	%xmm0, %xmm1, %k2
1296# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqss	(%rax), %xmm1, %k2
1297# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vcmpeqss	%xmm0, %xmm1, %k2 {%k3}
1298# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vcmpeqss	(%rax), %xmm1, %k2 {%k3}
1299# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vcomiss	%xmm16, %xmm17
1300# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vcomiss	(%rax), %xmm17
1301# CHECK-NEXT:  -      -     0.50    -      -      -      -     1.50    -      -     vcvtdq2pd	%ymm16, %zmm19
1302# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax), %zmm19
1303# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax){1to8}, %zmm19
1304# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtdq2pd	%ymm16, %zmm19 {%k1}
1305# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax), %zmm19 {%k1}
1306# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax){1to8}, %zmm19 {%k1}
1307# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtdq2pd	%ymm16, %zmm19 {%k1} {z}
1308# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax), %zmm19 {%k1} {z}
1309# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2pd	(%rax){1to8}, %zmm19 {%k1} {z}
1310# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtdq2ps	%zmm16, %zmm19
1311# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2ps	(%rax), %zmm19
1312# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2ps	(%rax){1to16}, %zmm19
1313# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtdq2ps	%zmm16, %zmm19 {%k1}
1314# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2ps	(%rax), %zmm19 {%k1}
1315# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2ps	(%rax){1to16}, %zmm19 {%k1}
1316# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtdq2ps	%zmm16, %zmm19 {%k1} {z}
1317# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2ps	(%rax), %zmm19 {%k1} {z}
1318# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtdq2ps	(%rax){1to16}, %zmm19 {%k1} {z}
1319# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtps2dq	%zmm16, %zmm19
1320# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtps2dq	(%rax), %zmm19
1321# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtps2dq	(%rax){1to16}, %zmm19
1322# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtps2dq	%zmm16, %zmm19 {%k1}
1323# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtps2dq	(%rax), %zmm19 {%k1}
1324# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtps2dq	(%rax){1to16}, %zmm19 {%k1}
1325# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvtps2dq	%zmm16, %zmm19 {%k1} {z}
1326# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtps2dq	(%rax), %zmm19 {%k1} {z}
1327# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvtps2dq	(%rax){1to16}, %zmm19 {%k1} {z}
1328# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvttps2dq	%zmm16, %zmm19
1329# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvttps2dq	(%rax), %zmm19
1330# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvttps2dq	(%rax){1to16}, %zmm19
1331# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvttps2dq	%zmm16, %zmm19 {%k1}
1332# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvttps2dq	(%rax), %zmm19 {%k1}
1333# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvttps2dq	(%rax){1to16}, %zmm19 {%k1}
1334# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vcvttps2dq	%zmm16, %zmm19 {%k1} {z}
1335# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvttps2dq	(%rax), %zmm19 {%k1} {z}
1336# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vcvttps2dq	(%rax){1to16}, %zmm19 {%k1} {z}
1337# CHECK-NEXT:  -     16.00  2.00    -      -      -      -     1.00    -      -     vdivpd	%zmm16, %zmm17, %zmm19
1338# CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax), %zmm17, %zmm19
1339# CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax){1to8}, %zmm17, %zmm19
1340# CHECK-NEXT:  -     16.00  2.00    -      -      -      -     1.00    -      -     vdivpd	%zmm16, %zmm17, %zmm19 {%k1}
1341# CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax), %zmm17, %zmm19 {%k1}
1342# CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1343# CHECK-NEXT:  -     16.00  2.00    -      -      -      -     1.00    -      -     vdivpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1344# CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1345# CHECK-NEXT:  -     16.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1346# CHECK-NEXT:  -     10.00  2.00    -      -      -      -     1.00    -      -     vdivps	%zmm16, %zmm17, %zmm19
1347# CHECK-NEXT:  -     10.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivps	(%rax), %zmm17, %zmm19
1348# CHECK-NEXT:  -     10.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivps	(%rax){1to16}, %zmm17, %zmm19
1349# CHECK-NEXT:  -     10.00  2.00    -      -      -      -     1.00    -      -     vdivps	%zmm16, %zmm17, %zmm19 {%k1}
1350# CHECK-NEXT:  -     10.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivps	(%rax), %zmm17, %zmm19 {%k1}
1351# CHECK-NEXT:  -     10.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1352# CHECK-NEXT:  -     10.00  2.00    -      -      -      -     1.00    -      -     vdivps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1353# CHECK-NEXT:  -     10.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivps	(%rax), %zmm17, %zmm19 {%k1} {z}
1354# CHECK-NEXT:  -     10.00  2.00    -     0.50   0.50    -     1.00    -      -     vdivps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1355# CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vgatherdpd	(%rax,%ymm1,2), %zmm2 {%k1}
1356# CHECK-NEXT:  -      -     1.58   0.58   8.00   8.00    -     0.58   0.25    -     vgatherdps	(%rax,%zmm1,2), %zmm2 {%k1}
1357# CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vgatherqpd	(%rax,%zmm1,2), %zmm2 {%k1}
1358# CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vgatherqps	(%rax,%zmm1,2), %ymm2 {%k1}
1359# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmaxpd	%zmm16, %zmm17, %zmm19
1360# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxpd	(%rax), %zmm17, %zmm19
1361# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxpd	(%rax){1to8}, %zmm17, %zmm19
1362# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmaxpd	%zmm16, %zmm17, %zmm19 {%k1}
1363# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxpd	(%rax), %zmm17, %zmm19 {%k1}
1364# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1365# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmaxpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1366# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1367# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1368# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmaxps	%zmm16, %zmm17, %zmm19
1369# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxps	(%rax), %zmm17, %zmm19
1370# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxps	(%rax){1to16}, %zmm17, %zmm19
1371# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmaxps	%zmm16, %zmm17, %zmm19 {%k1}
1372# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxps	(%rax), %zmm17, %zmm19 {%k1}
1373# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1374# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmaxps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1375# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxps	(%rax), %zmm17, %zmm19 {%k1} {z}
1376# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmaxps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1377# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vminpd	%zmm16, %zmm17, %zmm19
1378# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminpd	(%rax), %zmm17, %zmm19
1379# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminpd	(%rax){1to8}, %zmm17, %zmm19
1380# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vminpd	%zmm16, %zmm17, %zmm19 {%k1}
1381# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminpd	(%rax), %zmm17, %zmm19 {%k1}
1382# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1383# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vminpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1384# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1385# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1386# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vminps	%zmm16, %zmm17, %zmm19
1387# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminps	(%rax), %zmm17, %zmm19
1388# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminps	(%rax){1to16}, %zmm17, %zmm19
1389# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vminps	%zmm16, %zmm17, %zmm19 {%k1}
1390# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminps	(%rax), %zmm17, %zmm19 {%k1}
1391# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1392# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vminps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1393# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminps	(%rax), %zmm17, %zmm19 {%k1} {z}
1394# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vminps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1395# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmulpd	%zmm16, %zmm17, %zmm19
1396# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulpd	(%rax), %zmm17, %zmm19
1397# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulpd	(%rax){1to8}, %zmm17, %zmm19
1398# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmulpd	%zmm16, %zmm17, %zmm19 {%k1}
1399# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulpd	(%rax), %zmm17, %zmm19 {%k1}
1400# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1401# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmulpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1402# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1403# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1404# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmulps	%zmm16, %zmm17, %zmm19
1405# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulps	(%rax), %zmm17, %zmm19
1406# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulps	(%rax){1to16}, %zmm17, %zmm19
1407# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmulps	%zmm16, %zmm17, %zmm19 {%k1}
1408# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulps	(%rax), %zmm17, %zmm19 {%k1}
1409# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1410# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vmulps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1411# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulps	(%rax), %zmm17, %zmm19 {%k1} {z}
1412# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vmulps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1413# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsd	%zmm16, %zmm19
1414# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsd	(%rax), %zmm19
1415# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsd	(%rax){1to16}, %zmm19
1416# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsd	%zmm16, %zmm19 {%k1}
1417# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsd	(%rax), %zmm19 {%k1}
1418# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsd	(%rax){1to16}, %zmm19 {%k1}
1419# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsd	%zmm16, %zmm19 {%k1} {z}
1420# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsd	(%rax), %zmm19 {%k1} {z}
1421# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsd	(%rax){1to16}, %zmm19 {%k1} {z}
1422# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsq	%zmm16, %zmm19
1423# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsq	(%rax), %zmm19
1424# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsq	(%rax){1to8}, %zmm19
1425# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsq	%zmm16, %zmm19 {%k1}
1426# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsq	(%rax), %zmm19 {%k1}
1427# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsq	(%rax){1to8}, %zmm19 {%k1}
1428# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vpabsq	%zmm16, %zmm19 {%k1} {z}
1429# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsq	(%rax), %zmm19 {%k1} {z}
1430# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vpabsq	(%rax){1to8}, %zmm19 {%k1} {z}
1431# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddd	%zmm16, %zmm17, %zmm19
1432# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddd	(%rax), %zmm17, %zmm19
1433# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddd	(%rax){1to16}, %zmm17, %zmm19
1434# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddd	%zmm16, %zmm17, %zmm19 {%k1}
1435# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddd	(%rax), %zmm17, %zmm19 {%k1}
1436# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1437# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1438# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddd	(%rax), %zmm17, %zmm19 {%k1} {z}
1439# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1440# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddq	%zmm16, %zmm17, %zmm19
1441# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax), %zmm17, %zmm19
1442# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax){1to8}, %zmm17, %zmm19
1443# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddq	%zmm16, %zmm17, %zmm19 {%k1}
1444# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax), %zmm17, %zmm19 {%k1}
1445# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1446# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpaddq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1447# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax), %zmm17, %zmm19 {%k1} {z}
1448# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpaddq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1449# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2
1450# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2
1451# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2
1452# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
1453# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
1454# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
1455# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2
1456# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2
1457# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2
1458# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqd	%zmm0, %zmm1, %k2 {%k3}
1459# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax), %zmm1, %k2 {%k3}
1460# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqd	(%rax){1to16}, %zmm1, %k2 {%k3}
1461# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2
1462# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2
1463# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2
1464# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
1465# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
1466# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
1467# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%zmm0, %zmm1, %k2
1468# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %zmm1, %k2
1469# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to16}, %zmm1, %k2
1470# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtd	%zmm0, %zmm1, %k2 {%k3}
1471# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax), %zmm1, %k2 {%k3}
1472# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtd	(%rax){1to16}, %zmm1, %k2 {%k3}
1473# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%zmm0, %zmm1, %k2
1474# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %zmm1, %k2
1475# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to8}, %zmm1, %k2
1476# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpgtq	%zmm0, %zmm1, %k2 {%k3}
1477# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax), %zmm1, %k2 {%k3}
1478# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpgtq	(%rax){1to8}, %zmm1, %k2 {%k3}
1479# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2
1480# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2
1481# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2
1482# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpeqq	%zmm0, %zmm1, %k2 {%k3}
1483# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax), %zmm1, %k2 {%k3}
1484# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpeqq	(%rax){1to8}, %zmm1, %k2 {%k3}
1485# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%zmm0, %zmm1, %k2
1486# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %zmm1, %k2
1487# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to16}, %zmm1, %k2
1488# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequd	%zmm0, %zmm1, %k2 {%k3}
1489# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax), %zmm1, %k2 {%k3}
1490# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequd	(%rax){1to16}, %zmm1, %k2 {%k3}
1491# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%zmm0, %zmm1, %k2
1492# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %zmm1, %k2
1493# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to8}, %zmm1, %k2
1494# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpcmpequq	%zmm0, %zmm1, %k2 {%k3}
1495# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax), %zmm1, %k2 {%k3}
1496# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpcmpequq	(%rax){1to8}, %zmm1, %k2 {%k3}
1497# CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vpgatherdq	(%rax,%ymm1,2), %zmm2 {%k1}
1498# CHECK-NEXT:  -      -     1.58   0.58   8.00   8.00    -     0.58   0.25    -     vpgatherdd	(%rax,%zmm1,2), %zmm2 {%k1}
1499# CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vpgatherqq	(%rax,%zmm1,2), %zmm2 {%k1}
1500# CHECK-NEXT:  -      -     1.58   0.58   4.00   4.00    -     0.58   0.25    -     vpgatherqd	(%rax,%zmm1,2), %ymm2 {%k1}
1501# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     vpmulld	%zmm16, %zmm17, %zmm19
1502# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     1.00    -      -     vpmulld	(%rax), %zmm17, %zmm19
1503# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     1.00    -      -     vpmulld	(%rax){1to16}, %zmm17, %zmm19
1504# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     vpmulld	%zmm16, %zmm17, %zmm19 {%k1}
1505# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     1.00    -      -     vpmulld	(%rax), %zmm17, %zmm19 {%k1}
1506# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     1.00    -      -     vpmulld	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1507# CHECK-NEXT:  -      -     1.00    -      -      -      -     1.00    -      -     vpmulld	%zmm16, %zmm17, %zmm19 {%k1} {z}
1508# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     1.00    -      -     vpmulld	(%rax), %zmm17, %zmm19 {%k1} {z}
1509# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -     1.00    -      -     vpmulld	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1510# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermd	%zmm16, %zmm17, %zmm19
1511# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax), %zmm17, %zmm19
1512# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax){1to16}, %zmm17, %zmm19
1513# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermd	%zmm16, %zmm17, %zmm19 {%k1}
1514# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax), %zmm17, %zmm19 {%k1}
1515# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1516# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1517# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax), %zmm17, %zmm19 {%k1} {z}
1518# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1519# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilpd	$0, %zmm16, %zmm19
1520# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	$0, (%rax), %zmm19
1521# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	$0, (%rax){1to8}, %zmm19
1522# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilpd	$0, %zmm16, %zmm19 {%k1}
1523# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	$0, (%rax), %zmm19 {%k1}
1524# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	$0, (%rax){1to8}, %zmm19 {%k1}
1525# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilpd	$0, %zmm16, %zmm19 {%k1} {z}
1526# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	$0, (%rax), %zmm19 {%k1} {z}
1527# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	$0, (%rax){1to8}, %zmm19 {%k1} {z}
1528# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilpd	%zmm16, %zmm17, %zmm19
1529# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	(%rax), %zmm17, %zmm19
1530# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	(%rax){1to8}, %zmm17, %zmm19
1531# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilpd	%zmm16, %zmm17, %zmm19 {%k1}
1532# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	(%rax), %zmm17, %zmm19 {%k1}
1533# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1534# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1535# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1536# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1537# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilps	$0, %zmm16, %zmm19
1538# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	$0, (%rax), %zmm19
1539# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	$0, (%rax){1to16}, %zmm19
1540# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilps	$0, %zmm16, %zmm19 {%k1}
1541# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	$0, (%rax), %zmm19 {%k1}
1542# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	$0, (%rax){1to16}, %zmm19 {%k1}
1543# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilps	$0, %zmm16, %zmm19 {%k1} {z}
1544# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	$0, (%rax), %zmm19 {%k1} {z}
1545# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	$0, (%rax){1to16}, %zmm19 {%k1} {z}
1546# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilps	%zmm16, %zmm17, %zmm19
1547# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	(%rax), %zmm17, %zmm19
1548# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	(%rax){1to16}, %zmm17, %zmm19
1549# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilps	%zmm16, %zmm17, %zmm19 {%k1}
1550# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	(%rax), %zmm17, %zmm19 {%k1}
1551# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1552# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermilps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1553# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	(%rax), %zmm17, %zmm19 {%k1} {z}
1554# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermilps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1555# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermpd	$0, %zmm16, %zmm19
1556# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	$0, (%rax), %zmm19
1557# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	$0, (%rax){1to8}, %zmm19
1558# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermpd	$0, %zmm16, %zmm19 {%k1}
1559# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	$0, (%rax), %zmm19 {%k1}
1560# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	$0, (%rax){1to8}, %zmm19 {%k1}
1561# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermpd	$0, %zmm16, %zmm19 {%k1} {z}
1562# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	$0, (%rax), %zmm19 {%k1} {z}
1563# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	$0, (%rax){1to8}, %zmm19 {%k1} {z}
1564# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermpd	%zmm16, %zmm17, %zmm19
1565# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	(%rax), %zmm17, %zmm19
1566# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	(%rax){1to8}, %zmm17, %zmm19
1567# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermpd	%zmm16, %zmm17, %zmm19 {%k1}
1568# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	(%rax), %zmm17, %zmm19 {%k1}
1569# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1570# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1571# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1572# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1573# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermps	%zmm16, %zmm17, %zmm19
1574# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermps	(%rax), %zmm17, %zmm19
1575# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermps	(%rax){1to16}, %zmm17, %zmm19
1576# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermps	%zmm16, %zmm17, %zmm19 {%k1}
1577# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermps	(%rax), %zmm17, %zmm19 {%k1}
1578# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1579# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1580# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermps	(%rax), %zmm17, %zmm19 {%k1} {z}
1581# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1582# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermq	$0, %zmm16, %zmm19
1583# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	$0, (%rax), %zmm19
1584# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	$0, (%rax){1to8}, %zmm19
1585# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermq	$0, %zmm16, %zmm19 {%k1}
1586# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	$0, (%rax), %zmm19 {%k1}
1587# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	$0, (%rax){1to8}, %zmm19 {%k1}
1588# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermq	$0, %zmm16, %zmm19 {%k1} {z}
1589# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	$0, (%rax), %zmm19 {%k1} {z}
1590# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	$0, (%rax){1to8}, %zmm19 {%k1} {z}
1591# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermq	%zmm16, %zmm17, %zmm19
1592# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	(%rax), %zmm17, %zmm19
1593# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	(%rax){1to8}, %zmm17, %zmm19
1594# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermq	%zmm16, %zmm17, %zmm19 {%k1}
1595# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	(%rax), %zmm17, %zmm19 {%k1}
1596# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1597# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpermq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1598# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	(%rax), %zmm17, %zmm19 {%k1} {z}
1599# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpermq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1600# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpshufd	$0, %zmm16, %zmm19
1601# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpshufd	$0, (%rax), %zmm19
1602# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpshufd	$0, (%rax){1to16}, %zmm19
1603# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpshufd	$0, %zmm16, %zmm19 {%k1}
1604# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpshufd	$0, (%rax), %zmm19 {%k1}
1605# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpshufd	$0, (%rax){1to16}, %zmm19 {%k1}
1606# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpshufd	$0, %zmm16, %zmm19 {%k1} {z}
1607# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpshufd	$0, (%rax), %zmm19 {%k1} {z}
1608# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpshufd	$0, (%rax){1to16}, %zmm19 {%k1} {z}
1609# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubd	%zmm16, %zmm17, %zmm19
1610# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax), %zmm17, %zmm19
1611# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax){1to16}, %zmm17, %zmm19
1612# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubd	%zmm16, %zmm17, %zmm19 {%k1}
1613# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax), %zmm17, %zmm19 {%k1}
1614# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1615# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1616# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax), %zmm17, %zmm19 {%k1} {z}
1617# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1618# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19
1619# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19
1620# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19
1621# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19 {%k1}
1622# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19 {%k1}
1623# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1624# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1625# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
1626# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1627# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhdq	%zmm16, %zmm17, %zmm19
1628# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax), %zmm17, %zmm19
1629# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax){1to16}, %zmm17, %zmm19
1630# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhdq	%zmm16, %zmm17, %zmm19 {%k1}
1631# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax), %zmm17, %zmm19 {%k1}
1632# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1633# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhdq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1634# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax), %zmm17, %zmm19 {%k1} {z}
1635# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhdq	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1636# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhqdq	%zmm16, %zmm17, %zmm19
1637# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhqdq	(%rax), %zmm17, %zmm19
1638# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhqdq	(%rax){1to8}, %zmm17, %zmm19
1639# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhqdq	%zmm16, %zmm17, %zmm19 {%k1}
1640# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhqdq	(%rax), %zmm17, %zmm19 {%k1}
1641# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1642# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckhqdq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1643# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhqdq	(%rax), %zmm17, %zmm19 {%k1} {z}
1644# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckhqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1645# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckldq	%zmm16, %zmm17, %zmm19
1646# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckldq	(%rax), %zmm17, %zmm19
1647# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckldq	(%rax){1to16}, %zmm17, %zmm19
1648# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckldq	%zmm16, %zmm17, %zmm19 {%k1}
1649# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckldq	(%rax), %zmm17, %zmm19 {%k1}
1650# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckldq	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1651# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpckldq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1652# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckldq	(%rax), %zmm17, %zmm19 {%k1} {z}
1653# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpckldq	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1654# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpcklqdq	%zmm16, %zmm17, %zmm19
1655# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpcklqdq	(%rax), %zmm17, %zmm19
1656# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpcklqdq	(%rax){1to8}, %zmm17, %zmm19
1657# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpcklqdq	%zmm16, %zmm17, %zmm19 {%k1}
1658# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpcklqdq	(%rax), %zmm17, %zmm19 {%k1}
1659# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpcklqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1660# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vpunpcklqdq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1661# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpcklqdq	(%rax), %zmm17, %zmm19 {%k1} {z}
1662# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vpunpcklqdq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1663# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshuff32x4	$0, %zmm16, %zmm17, %zmm19
1664# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff32x4	$0, (%rax), %zmm17, %zmm19
1665# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff32x4	$0, (%rax){1to16}, %zmm17, %zmm19
1666# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshuff32x4	$0, %zmm16, %zmm17, %zmm19 {%k1}
1667# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff32x4	$0, (%rax), %zmm17, %zmm19 {%k1}
1668# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1}
1669# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshuff32x4	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1670# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff32x4	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1671# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1672# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshuff64x2	$0, %zmm16, %zmm17, %zmm19
1673# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff64x2	$0, (%rax), %zmm17, %zmm19
1674# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff64x2	$0, (%rax){1to8}, %zmm17, %zmm19
1675# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshuff64x2	$0, %zmm16, %zmm17, %zmm19 {%k1}
1676# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff64x2	$0, (%rax), %zmm17, %zmm19 {%k1}
1677# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1}
1678# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshuff64x2	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1679# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff64x2	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1680# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshuff64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1681# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshufi32x4	$0, %zmm16, %zmm17, %zmm19
1682# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi32x4	$0, (%rax), %zmm17, %zmm19
1683# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi32x4	$0, (%rax){1to16}, %zmm17, %zmm19
1684# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshufi32x4	$0, %zmm16, %zmm17, %zmm19 {%k1}
1685# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi32x4	$0, (%rax), %zmm17, %zmm19 {%k1}
1686# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1}
1687# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshufi32x4	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1688# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi32x4	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1689# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi32x4	$0, (%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1690# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshufi64x2	$0, %zmm16, %zmm17, %zmm19
1691# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi64x2	$0, (%rax), %zmm17, %zmm19
1692# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi64x2	$0, (%rax){1to8}, %zmm17, %zmm19
1693# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshufi64x2	$0, %zmm16, %zmm17, %zmm19 {%k1}
1694# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi64x2	$0, (%rax), %zmm17, %zmm19 {%k1}
1695# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1}
1696# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vshufi64x2	$0, %zmm16, %zmm17, %zmm19 {%k1} {z}
1697# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi64x2	$0, (%rax), %zmm17, %zmm19 {%k1} {z}
1698# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vshufi64x2	$0, (%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1699# CHECK-NEXT:  -     24.00  2.00    -      -      -      -     1.00    -      -     vsqrtpd	%zmm16, %zmm19
1700# CHECK-NEXT:  -     24.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtpd	(%rax), %zmm19
1701# CHECK-NEXT:  -     24.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtpd	(%rax){1to8}, %zmm19
1702# CHECK-NEXT:  -     24.00  2.00    -      -      -      -     1.00    -      -     vsqrtpd	%zmm16, %zmm19 {%k1}
1703# CHECK-NEXT:  -     24.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtpd	(%rax), %zmm19 {%k1}
1704# CHECK-NEXT:  -     24.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtpd	(%rax){1to8}, %zmm19 {%k1}
1705# CHECK-NEXT:  -     24.00  2.00    -      -      -      -     1.00    -      -     vsqrtpd	%zmm16, %zmm19 {%k1} {z}
1706# CHECK-NEXT:  -     24.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtpd	(%rax), %zmm19 {%k1} {z}
1707# CHECK-NEXT:  -     24.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtpd	(%rax){1to8}, %zmm19 {%k1} {z}
1708# CHECK-NEXT:  -     12.00  2.00    -      -      -      -     1.00    -      -     vsqrtps	%zmm16, %zmm19
1709# CHECK-NEXT:  -     12.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtps	(%rax), %zmm19
1710# CHECK-NEXT:  -     12.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtps	(%rax){1to16}, %zmm19
1711# CHECK-NEXT:  -     12.00  2.00    -      -      -      -     1.00    -      -     vsqrtps	%zmm16, %zmm19 {%k1}
1712# CHECK-NEXT:  -     12.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtps	(%rax), %zmm19 {%k1}
1713# CHECK-NEXT:  -     12.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtps	(%rax){1to16}, %zmm19 {%k1}
1714# CHECK-NEXT:  -     12.00  2.00    -      -      -      -     1.00    -      -     vsqrtps	%zmm16, %zmm19 {%k1} {z}
1715# CHECK-NEXT:  -     12.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtps	(%rax), %zmm19 {%k1} {z}
1716# CHECK-NEXT:  -     12.00  2.00    -     0.50   0.50    -     1.00    -      -     vsqrtps	(%rax){1to16}, %zmm19 {%k1} {z}
1717# CHECK-NEXT:  -     6.00   1.00    -      -      -      -      -      -      -     vsqrtsd	%xmm16, %xmm17, %xmm19
1718# CHECK-NEXT:  -     6.00   1.00    -     0.50   0.50    -      -      -      -     vsqrtsd	(%rax), %xmm17, %xmm19
1719# CHECK-NEXT:  -     6.00   1.00    -      -      -      -      -      -      -     vsqrtsd	%xmm16, %xmm17, %xmm19 {%k1}
1720# CHECK-NEXT:  -     6.00   1.00    -     0.50   0.50    -      -      -      -     vsqrtsd	(%rax), %xmm17, %xmm19 {%k1}
1721# CHECK-NEXT:  -     6.00   1.00    -      -      -      -      -      -      -     vsqrtsd	%xmm16, %xmm17, %xmm19 {%k1} {z}
1722# CHECK-NEXT:  -     6.00   1.00    -     0.50   0.50    -      -      -      -     vsqrtsd	(%rax), %xmm17, %xmm19 {%k1} {z}
1723# CHECK-NEXT:  -     3.00   1.00    -      -      -      -      -      -      -     vsqrtss	%xmm16, %xmm17, %xmm19
1724# CHECK-NEXT:  -     3.00   1.00    -     0.50   0.50    -      -      -      -     vsqrtss	(%rax), %xmm17, %xmm19
1725# CHECK-NEXT:  -     3.00   1.00    -      -      -      -      -      -      -     vsqrtss	%xmm16, %xmm17, %xmm19 {%k1}
1726# CHECK-NEXT:  -     3.00   1.00    -     0.50   0.50    -      -      -      -     vsqrtss	(%rax), %xmm17, %xmm19 {%k1}
1727# CHECK-NEXT:  -     3.00   1.00    -      -      -      -      -      -      -     vsqrtss	%xmm16, %xmm17, %xmm19 {%k1} {z}
1728# CHECK-NEXT:  -     3.00   1.00    -     0.50   0.50    -      -      -      -     vsqrtss	(%rax), %xmm17, %xmm19 {%k1} {z}
1729# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubd	%zmm16, %zmm17, %zmm19
1730# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax), %zmm17, %zmm19
1731# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax){1to16}, %zmm17, %zmm19
1732# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubd	%zmm16, %zmm17, %zmm19 {%k1}
1733# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax), %zmm17, %zmm19 {%k1}
1734# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1735# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1736# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax), %zmm17, %zmm19 {%k1} {z}
1737# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubd	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1738# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19
1739# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19
1740# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19
1741# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19 {%k1}
1742# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19 {%k1}
1743# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1744# CHECK-NEXT:  -      -     0.33   0.33    -      -      -     0.33    -      -     vpsubq	%zmm16, %zmm17, %zmm19 {%k1} {z}
1745# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax), %zmm17, %zmm19 {%k1} {z}
1746# CHECK-NEXT:  -      -     0.33   0.33   0.50   0.50    -     0.33    -      -     vpsubq	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1747# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%zmm0, %zmm1, %k2
1748# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %zmm1, %k2
1749# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to16}, %zmm1, %k2
1750# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmd	%zmm0, %zmm1, %k2 {%k3}
1751# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax), %zmm1, %k2 {%k3}
1752# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmd	(%rax){1to16}, %zmm1, %k2 {%k3}
1753# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%zmm0, %zmm1, %k2
1754# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %zmm1, %k2
1755# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to8}, %zmm1, %k2
1756# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestmq	%zmm0, %zmm1, %k2 {%k3}
1757# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax), %zmm1, %k2 {%k3}
1758# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestmq	(%rax){1to8}, %zmm1, %k2 {%k3}
1759# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%zmm0, %zmm1, %k2
1760# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %zmm1, %k2
1761# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to16}, %zmm1, %k2
1762# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmd	%zmm0, %zmm1, %k2 {%k3}
1763# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax), %zmm1, %k2 {%k3}
1764# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmd	(%rax){1to16}, %zmm1, %k2 {%k3}
1765# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%zmm0, %zmm1, %k2
1766# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %zmm1, %k2
1767# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to8}, %zmm1, %k2
1768# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vptestnmq	%zmm0, %zmm1, %k2 {%k3}
1769# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax), %zmm1, %k2 {%k3}
1770# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vptestnmq	(%rax){1to8}, %zmm1, %k2 {%k3}
1771# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubpd	%zmm16, %zmm17, %zmm19
1772# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax), %zmm17, %zmm19
1773# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax){1to8}, %zmm17, %zmm19
1774# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubpd	%zmm16, %zmm17, %zmm19 {%k1}
1775# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax), %zmm17, %zmm19 {%k1}
1776# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1777# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1778# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1779# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1780# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubps	%zmm16, %zmm17, %zmm19
1781# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax), %zmm17, %zmm19
1782# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax){1to16}, %zmm17, %zmm19
1783# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubps	%zmm16, %zmm17, %zmm19 {%k1}
1784# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax), %zmm17, %zmm19 {%k1}
1785# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1786# CHECK-NEXT:  -      -     0.50    -      -      -      -     0.50    -      -     vsubps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1787# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax), %zmm17, %zmm19 {%k1} {z}
1788# CHECK-NEXT:  -      -     0.50    -     0.50   0.50    -     0.50    -      -     vsubps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1789# CHECK-NEXT:  -      -     1.00    -      -      -      -      -      -      -     vucomiss	%xmm16, %xmm17
1790# CHECK-NEXT:  -      -     1.00    -     0.50   0.50    -      -      -      -     vucomiss	(%rax), %xmm17
1791# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhpd	%zmm16, %zmm17, %zmm19
1792# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax), %zmm17, %zmm19
1793# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax){1to8}, %zmm17, %zmm19
1794# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhpd	%zmm16, %zmm17, %zmm19 {%k1}
1795# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax), %zmm17, %zmm19 {%k1}
1796# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1797# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1798# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1799# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1800# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhps	%zmm16, %zmm17, %zmm19
1801# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhps	(%rax), %zmm17, %zmm19
1802# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhps	(%rax){1to16}, %zmm17, %zmm19
1803# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhps	%zmm16, %zmm17, %zmm19 {%k1}
1804# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhps	(%rax), %zmm17, %zmm19 {%k1}
1805# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1806# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpckhps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1807# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhps	(%rax), %zmm17, %zmm19 {%k1} {z}
1808# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpckhps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1809# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpcklpd	%zmm16, %zmm17, %zmm19
1810# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklpd	(%rax), %zmm17, %zmm19
1811# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklpd	(%rax){1to8}, %zmm17, %zmm19
1812# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpcklpd	%zmm16, %zmm17, %zmm19 {%k1}
1813# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklpd	(%rax), %zmm17, %zmm19 {%k1}
1814# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklpd	(%rax){1to8}, %zmm17, %zmm19 {%k1}
1815# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpcklpd	%zmm16, %zmm17, %zmm19 {%k1} {z}
1816# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklpd	(%rax), %zmm17, %zmm19 {%k1} {z}
1817# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklpd	(%rax){1to8}, %zmm17, %zmm19 {%k1} {z}
1818# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpcklps	%zmm16, %zmm17, %zmm19
1819# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklps	(%rax), %zmm17, %zmm19
1820# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklps	(%rax){1to16}, %zmm17, %zmm19
1821# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpcklps	%zmm16, %zmm17, %zmm19 {%k1}
1822# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklps	(%rax), %zmm17, %zmm19 {%k1}
1823# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklps	(%rax){1to16}, %zmm17, %zmm19 {%k1}
1824# CHECK-NEXT:  -      -      -      -      -      -      -     1.00    -      -     vunpcklps	%zmm16, %zmm17, %zmm19 {%k1} {z}
1825# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklps	(%rax), %zmm17, %zmm19 {%k1} {z}
1826# CHECK-NEXT:  -      -      -      -     0.50   0.50    -     1.00    -      -     vunpcklps	(%rax){1to16}, %zmm17, %zmm19 {%k1} {z}
1827