Lines Matching refs:xmm0
24 ; SSE2-NEXT: movdqa %xmm0, %xmm3
27 ; SSE2-NEXT: movdqa %xmm0, %xmm2
32 ; SSE2-NEXT: movdqa %xmm0, %xmm4
35 ; SSE2-NEXT: psrld %xmm1, %xmm0
36 ; SSE2-NEXT: punpckhqdq {{.*#+}} xmm0 = xmm0[1],xmm4[1]
37 ; SSE2-NEXT: shufps {{.*#+}} xmm2 = xmm2[0,3],xmm0[0,3]
38 ; SSE2-NEXT: movaps %xmm2, %xmm0
44 ; SSE41-NEXT: movdqa %xmm0, %xmm3
48 ; SSE41-NEXT: movdqa %xmm0, %xmm5
52 ; SSE41-NEXT: movdqa %xmm0, %xmm3
55 ; SSE41-NEXT: psrld %xmm1, %xmm0
56 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm3[0,1,2,3],xmm0[4,5,6,7]
57 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm5[2,3],xmm0[4,5],xmm5[6,7]
63 ; AVX1-NEXT: vpsrld %xmm2, %xmm0, %xmm2
65 ; AVX1-NEXT: vpsrld %xmm3, %xmm0, %xmm3
69 ; AVX1-NEXT: vpsrld %xmm3, %xmm0, %xmm3
71 ; AVX1-NEXT: vpsrld %xmm1, %xmm0, %xmm0
72 ; AVX1-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0,1,2,3],xmm3[4,5,6,7]
73 ; AVX1-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3],xmm0[4,5],xmm2[6,7]
78 ; AVX2-NEXT: vpsrlvd %xmm1, %xmm0, %xmm0
85 ; XOPAVX1-NEXT: vpshld %xmm1, %xmm0, %xmm0
90 ; XOPAVX2-NEXT: vpsrlvd %xmm1, %xmm0, %xmm0
95 ; AVX512-NEXT: vpsrlvd %xmm1, %xmm0, %xmm0
100 ; AVX512VL-NEXT: vpsrlvd %xmm1, %xmm0, %xmm0
106 ; X86-SSE-NEXT: movdqa %xmm0, %xmm3
109 ; X86-SSE-NEXT: movdqa %xmm0, %xmm2
114 ; X86-SSE-NEXT: movdqa %xmm0, %xmm4
117 ; X86-SSE-NEXT: psrld %xmm1, %xmm0
118 ; X86-SSE-NEXT: punpckhqdq {{.*#+}} xmm0 = xmm0[1],xmm4[1]
119 ; X86-SSE-NEXT: shufps {{.*#+}} xmm2 = xmm2[0,3],xmm0[0,3]
120 ; X86-SSE-NEXT: movaps %xmm2, %xmm0
133 ; SSE2-NEXT: pandn %xmm0, %xmm3
134 ; SSE2-NEXT: psrlw $8, %xmm0
135 ; SSE2-NEXT: pand %xmm2, %xmm0
136 ; SSE2-NEXT: por %xmm3, %xmm0
141 ; SSE2-NEXT: pandn %xmm0, %xmm3
142 ; SSE2-NEXT: psrlw $4, %xmm0
143 ; SSE2-NEXT: pand %xmm2, %xmm0
144 ; SSE2-NEXT: por %xmm3, %xmm0
149 ; SSE2-NEXT: pandn %xmm0, %xmm3
150 ; SSE2-NEXT: psrlw $2, %xmm0
151 ; SSE2-NEXT: pand %xmm2, %xmm0
152 ; SSE2-NEXT: por %xmm3, %xmm0
156 ; SSE2-NEXT: pandn %xmm0, %xmm2
157 ; SSE2-NEXT: psrlw $1, %xmm0
158 ; SSE2-NEXT: pand %xmm1, %xmm0
159 ; SSE2-NEXT: por %xmm2, %xmm0
165 ; SSE41-NEXT: movdqa %xmm0, %xmm1
166 ; SSE41-NEXT: movdqa %xmm2, %xmm0
167 ; SSE41-NEXT: psllw $12, %xmm0
169 ; SSE41-NEXT: por %xmm0, %xmm2
174 ; SSE41-NEXT: movdqa %xmm2, %xmm0
175 ; SSE41-NEXT: pblendvb %xmm0, %xmm4, %xmm1
178 ; SSE41-NEXT: movdqa %xmm3, %xmm0
179 ; SSE41-NEXT: pblendvb %xmm0, %xmm2, %xmm1
183 ; SSE41-NEXT: movdqa %xmm3, %xmm0
184 ; SSE41-NEXT: pblendvb %xmm0, %xmm2, %xmm1
188 ; SSE41-NEXT: movdqa %xmm3, %xmm0
189 ; SSE41-NEXT: pblendvb %xmm0, %xmm2, %xmm1
190 ; SSE41-NEXT: movdqa %xmm1, %xmm0
199 ; AVX1-NEXT: vpsrlw $8, %xmm0, %xmm3
200 ; AVX1-NEXT: vpblendvb %xmm1, %xmm3, %xmm0, %xmm0
201 ; AVX1-NEXT: vpsrlw $4, %xmm0, %xmm1
202 ; AVX1-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
203 ; AVX1-NEXT: vpsrlw $2, %xmm0, %xmm1
205 ; AVX1-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
206 ; AVX1-NEXT: vpsrlw $1, %xmm0, %xmm1
208 ; AVX1-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
214 … vpmovzxwd {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
217 ; AVX2-NEXT: vpackusdw %xmm1, %xmm0, %xmm0
225 ; XOP-NEXT: vpshlw %xmm1, %xmm0, %xmm0
231 … vpmovzxwd {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
234 ; AVX512DQ-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
241 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
243 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $zmm0
250 … vpmovzxwd {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
252 ; AVX512DQVL-NEXT: vpmovdw %ymm0, %xmm0
258 ; AVX512BWVL-NEXT: vpsrlvw %xmm1, %xmm0, %xmm0
267 ; X86-SSE-NEXT: pandn %xmm0, %xmm3
268 ; X86-SSE-NEXT: psrlw $8, %xmm0
269 ; X86-SSE-NEXT: pand %xmm2, %xmm0
270 ; X86-SSE-NEXT: por %xmm3, %xmm0
275 ; X86-SSE-NEXT: pandn %xmm0, %xmm3
276 ; X86-SSE-NEXT: psrlw $4, %xmm0
277 ; X86-SSE-NEXT: pand %xmm2, %xmm0
278 ; X86-SSE-NEXT: por %xmm3, %xmm0
283 ; X86-SSE-NEXT: pandn %xmm0, %xmm3
284 ; X86-SSE-NEXT: psrlw $2, %xmm0
285 ; X86-SSE-NEXT: pand %xmm2, %xmm0
286 ; X86-SSE-NEXT: por %xmm3, %xmm0
290 ; X86-SSE-NEXT: pandn %xmm0, %xmm2
291 ; X86-SSE-NEXT: psrlw $1, %xmm0
292 ; X86-SSE-NEXT: pand %xmm1, %xmm0
293 ; X86-SSE-NEXT: por %xmm2, %xmm0
306 ; SSE2-NEXT: pandn %xmm0, %xmm3
307 ; SSE2-NEXT: psrlw $8, %xmm0
308 ; SSE2-NEXT: pand %xmm2, %xmm0
309 ; SSE2-NEXT: por %xmm3, %xmm0
314 ; SSE2-NEXT: pandn %xmm0, %xmm3
315 ; SSE2-NEXT: psrlw $4, %xmm0
316 ; SSE2-NEXT: pand %xmm2, %xmm0
317 ; SSE2-NEXT: por %xmm3, %xmm0
322 ; SSE2-NEXT: pandn %xmm0, %xmm3
323 ; SSE2-NEXT: psrlw $2, %xmm0
324 ; SSE2-NEXT: pand %xmm2, %xmm0
325 ; SSE2-NEXT: por %xmm3, %xmm0
329 ; SSE2-NEXT: pandn %xmm0, %xmm2
330 ; SSE2-NEXT: psrlw $1, %xmm0
331 ; SSE2-NEXT: pand %xmm1, %xmm0
332 ; SSE2-NEXT: por %xmm2, %xmm0
338 ; SSE41-NEXT: movdqa %xmm0, %xmm1
339 ; SSE41-NEXT: movdqa %xmm2, %xmm0
340 ; SSE41-NEXT: psllw $12, %xmm0
342 ; SSE41-NEXT: por %xmm0, %xmm2
347 ; SSE41-NEXT: movdqa %xmm2, %xmm0
348 ; SSE41-NEXT: pblendvb %xmm0, %xmm4, %xmm1
351 ; SSE41-NEXT: movdqa %xmm3, %xmm0
352 ; SSE41-NEXT: pblendvb %xmm0, %xmm2, %xmm1
356 ; SSE41-NEXT: movdqa %xmm3, %xmm0
357 ; SSE41-NEXT: pblendvb %xmm0, %xmm2, %xmm1
361 ; SSE41-NEXT: movdqa %xmm3, %xmm0
362 ; SSE41-NEXT: pblendvb %xmm0, %xmm2, %xmm1
363 ; SSE41-NEXT: movdqa %xmm1, %xmm0
372 ; AVX1-NEXT: vpsrlw $8, %xmm0, %xmm3
373 ; AVX1-NEXT: vpblendvb %xmm1, %xmm3, %xmm0, %xmm0
374 ; AVX1-NEXT: vpsrlw $4, %xmm0, %xmm1
375 ; AVX1-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
376 ; AVX1-NEXT: vpsrlw $2, %xmm0, %xmm1
378 ; AVX1-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
379 ; AVX1-NEXT: vpsrlw $1, %xmm0, %xmm1
381 ; AVX1-NEXT: vpblendvb %xmm2, %xmm1, %xmm0, %xmm0
387 … vpmovzxwd {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
390 ; AVX2-NEXT: vpackusdw %xmm1, %xmm0, %xmm0
398 ; XOP-NEXT: vpshlw %xmm1, %xmm0, %xmm0
404 … vpmovzxwd {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
407 ; AVX512DQ-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
414 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
416 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $zmm0
423 … vpmovzxwd {{.*#+}} ymm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
425 ; AVX512DQVL-NEXT: vpmovdw %ymm0, %xmm0
431 ; AVX512BWVL-NEXT: vpsrlvw %xmm1, %xmm0, %xmm0
440 ; X86-SSE-NEXT: pandn %xmm0, %xmm3
441 ; X86-SSE-NEXT: psrlw $8, %xmm0
442 ; X86-SSE-NEXT: pand %xmm2, %xmm0
443 ; X86-SSE-NEXT: por %xmm3, %xmm0
448 ; X86-SSE-NEXT: pandn %xmm0, %xmm3
449 ; X86-SSE-NEXT: psrlw $4, %xmm0
450 ; X86-SSE-NEXT: pand %xmm2, %xmm0
451 ; X86-SSE-NEXT: por %xmm3, %xmm0
456 ; X86-SSE-NEXT: pandn %xmm0, %xmm3
457 ; X86-SSE-NEXT: psrlw $2, %xmm0
458 ; X86-SSE-NEXT: pand %xmm2, %xmm0
459 ; X86-SSE-NEXT: por %xmm3, %xmm0
463 ; X86-SSE-NEXT: pandn %xmm0, %xmm2
464 ; X86-SSE-NEXT: psrlw $1, %xmm0
465 ; X86-SSE-NEXT: pand %xmm1, %xmm0
466 ; X86-SSE-NEXT: por %xmm2, %xmm0
480 ; SSE2-NEXT: pandn %xmm0, %xmm4
481 ; SSE2-NEXT: psrlw $4, %xmm0
482 ; SSE2-NEXT: pand %xmm3, %xmm0
483 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
484 ; SSE2-NEXT: por %xmm4, %xmm0
489 ; SSE2-NEXT: pandn %xmm0, %xmm4
490 ; SSE2-NEXT: psrlw $2, %xmm0
491 ; SSE2-NEXT: pand %xmm3, %xmm0
492 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
493 ; SSE2-NEXT: por %xmm4, %xmm0
497 ; SSE2-NEXT: pandn %xmm0, %xmm1
498 ; SSE2-NEXT: psrlw $1, %xmm0
499 ; SSE2-NEXT: pand %xmm2, %xmm0
500 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
501 ; SSE2-NEXT: por %xmm1, %xmm0
506 ; SSE41-NEXT: movdqa %xmm0, %xmm2
508 ; SSE41-NEXT: movdqa %xmm0, %xmm3
511 ; SSE41-NEXT: movdqa %xmm1, %xmm0
512 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
517 ; SSE41-NEXT: movdqa %xmm1, %xmm0
518 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
523 ; SSE41-NEXT: movdqa %xmm1, %xmm0
524 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
525 ; SSE41-NEXT: movdqa %xmm2, %xmm0
531 ; AVX-NEXT: vpsrlw $4, %xmm0, %xmm2
533 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
534 ; AVX-NEXT: vpsrlw $2, %xmm0, %xmm2
537 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
538 ; AVX-NEXT: vpsrlw $1, %xmm0, %xmm2
541 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
548 ; XOP-NEXT: vpshlb %xmm1, %xmm0, %xmm0
554 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
556 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
563 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
566 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
573 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
575 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
582 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
584 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
595 ; X86-SSE-NEXT: pandn %xmm0, %xmm4
596 ; X86-SSE-NEXT: psrlw $4, %xmm0
597 ; X86-SSE-NEXT: pand %xmm3, %xmm0
598 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
599 ; X86-SSE-NEXT: por %xmm4, %xmm0
604 ; X86-SSE-NEXT: pandn %xmm0, %xmm4
605 ; X86-SSE-NEXT: psrlw $2, %xmm0
606 ; X86-SSE-NEXT: pand %xmm3, %xmm0
607 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
608 ; X86-SSE-NEXT: por %xmm4, %xmm0
612 ; X86-SSE-NEXT: pandn %xmm0, %xmm1
613 ; X86-SSE-NEXT: psrlw $1, %xmm0
614 ; X86-SSE-NEXT: pand %xmm2, %xmm0
615 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
616 ; X86-SSE-NEXT: por %xmm1, %xmm0
630 ; SSE2-NEXT: pandn %xmm0, %xmm4
631 ; SSE2-NEXT: psrlw $4, %xmm0
632 ; SSE2-NEXT: pand %xmm3, %xmm0
633 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
634 ; SSE2-NEXT: por %xmm4, %xmm0
639 ; SSE2-NEXT: pandn %xmm0, %xmm4
640 ; SSE2-NEXT: psrlw $2, %xmm0
641 ; SSE2-NEXT: pand %xmm3, %xmm0
642 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
643 ; SSE2-NEXT: por %xmm4, %xmm0
647 ; SSE2-NEXT: pandn %xmm0, %xmm1
648 ; SSE2-NEXT: psrlw $1, %xmm0
649 ; SSE2-NEXT: pand %xmm2, %xmm0
650 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
651 ; SSE2-NEXT: por %xmm1, %xmm0
656 ; SSE41-NEXT: movdqa %xmm0, %xmm2
658 ; SSE41-NEXT: movdqa %xmm0, %xmm3
661 ; SSE41-NEXT: movdqa %xmm1, %xmm0
662 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
667 ; SSE41-NEXT: movdqa %xmm1, %xmm0
668 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
673 ; SSE41-NEXT: movdqa %xmm1, %xmm0
674 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
675 ; SSE41-NEXT: movdqa %xmm2, %xmm0
681 ; AVX-NEXT: vpsrlw $4, %xmm0, %xmm2
683 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
684 ; AVX-NEXT: vpsrlw $2, %xmm0, %xmm2
687 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
688 ; AVX-NEXT: vpsrlw $1, %xmm0, %xmm2
691 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
698 ; XOP-NEXT: vpshlb %xmm1, %xmm0, %xmm0
704 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
706 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
713 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
716 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
723 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
725 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
732 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
734 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
745 ; X86-SSE-NEXT: pandn %xmm0, %xmm4
746 ; X86-SSE-NEXT: psrlw $4, %xmm0
747 ; X86-SSE-NEXT: pand %xmm3, %xmm0
748 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
749 ; X86-SSE-NEXT: por %xmm4, %xmm0
754 ; X86-SSE-NEXT: pandn %xmm0, %xmm4
755 ; X86-SSE-NEXT: psrlw $2, %xmm0
756 ; X86-SSE-NEXT: pand %xmm3, %xmm0
757 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
758 ; X86-SSE-NEXT: por %xmm4, %xmm0
762 ; X86-SSE-NEXT: pandn %xmm0, %xmm1
763 ; X86-SSE-NEXT: psrlw $1, %xmm0
764 ; X86-SSE-NEXT: pand %xmm2, %xmm0
765 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
766 ; X86-SSE-NEXT: por %xmm1, %xmm0
780 ; SSE2-NEXT: pandn %xmm0, %xmm4
781 ; SSE2-NEXT: psrlw $4, %xmm0
782 ; SSE2-NEXT: pand %xmm3, %xmm0
783 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
784 ; SSE2-NEXT: por %xmm4, %xmm0
789 ; SSE2-NEXT: pandn %xmm0, %xmm4
790 ; SSE2-NEXT: psrlw $2, %xmm0
791 ; SSE2-NEXT: pand %xmm3, %xmm0
792 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
793 ; SSE2-NEXT: por %xmm4, %xmm0
797 ; SSE2-NEXT: pandn %xmm0, %xmm1
798 ; SSE2-NEXT: psrlw $1, %xmm0
799 ; SSE2-NEXT: pand %xmm2, %xmm0
800 ; SSE2-NEXT: pand {{.*}}(%rip), %xmm0
801 ; SSE2-NEXT: por %xmm1, %xmm0
806 ; SSE41-NEXT: movdqa %xmm0, %xmm2
808 ; SSE41-NEXT: movdqa %xmm0, %xmm3
811 ; SSE41-NEXT: movdqa %xmm1, %xmm0
812 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
817 ; SSE41-NEXT: movdqa %xmm1, %xmm0
818 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
823 ; SSE41-NEXT: movdqa %xmm1, %xmm0
824 ; SSE41-NEXT: pblendvb %xmm0, %xmm3, %xmm2
825 ; SSE41-NEXT: movdqa %xmm2, %xmm0
831 ; AVX-NEXT: vpsrlw $4, %xmm0, %xmm2
833 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
834 ; AVX-NEXT: vpsrlw $2, %xmm0, %xmm2
837 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
838 ; AVX-NEXT: vpsrlw $1, %xmm0, %xmm2
841 ; AVX-NEXT: vpblendvb %xmm1, %xmm2, %xmm0, %xmm0
848 ; XOP-NEXT: vpshlb %xmm1, %xmm0, %xmm0
854 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
856 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
863 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
866 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
873 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
875 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
882 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
884 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
895 ; X86-SSE-NEXT: pandn %xmm0, %xmm4
896 ; X86-SSE-NEXT: psrlw $4, %xmm0
897 ; X86-SSE-NEXT: pand %xmm3, %xmm0
898 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
899 ; X86-SSE-NEXT: por %xmm4, %xmm0
904 ; X86-SSE-NEXT: pandn %xmm0, %xmm4
905 ; X86-SSE-NEXT: psrlw $2, %xmm0
906 ; X86-SSE-NEXT: pand %xmm3, %xmm0
907 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
908 ; X86-SSE-NEXT: por %xmm4, %xmm0
912 ; X86-SSE-NEXT: pandn %xmm0, %xmm1
913 ; X86-SSE-NEXT: psrlw $1, %xmm0
914 ; X86-SSE-NEXT: pand %xmm2, %xmm0
915 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
916 ; X86-SSE-NEXT: por %xmm1, %xmm0
931 ; SSE2-NEXT: psrld %xmm2, %xmm0
937 ; SSE41-NEXT: psrld %xmm1, %xmm0
943 ; AVX-NEXT: vpsrld %xmm1, %xmm0, %xmm0
949 ; XOP-NEXT: vpsrld %xmm1, %xmm0, %xmm0
955 ; AVX512-NEXT: vpsrld %xmm1, %xmm0, %xmm0
961 ; AVX512VL-NEXT: vpsrld %xmm1, %xmm0, %xmm0
968 ; X86-SSE-NEXT: psrld %xmm2, %xmm0
980 ; SSE2-NEXT: psrlw %xmm1, %xmm0
986 ; SSE41-NEXT: psrlw %xmm1, %xmm0
992 ; AVX-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
998 ; XOP-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1004 ; AVX512-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1010 ; AVX512VL-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1017 ; X86-SSE-NEXT: psrlw %xmm1, %xmm0
1029 ; SSE2-NEXT: psrlw %xmm1, %xmm0
1035 ; SSE41-NEXT: psrlw %xmm1, %xmm0
1041 ; AVX-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1047 ; XOP-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1053 ; AVX512-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1059 ; AVX512VL-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1066 ; X86-SSE-NEXT: psrlw %xmm1, %xmm0
1078 ; SSE2-NEXT: psrlw %xmm1, %xmm0
1085 ; SSE2-NEXT: pand %xmm1, %xmm0
1091 ; SSE41-NEXT: psrlw %xmm1, %xmm0
1095 ; SSE41-NEXT: pand %xmm2, %xmm0
1101 ; AVX1-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1105 ; AVX1-NEXT: vpand %xmm1, %xmm0, %xmm0
1111 ; AVX2-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1116 ; AVX2-NEXT: vpand %xmm1, %xmm0, %xmm0
1125 ; XOPAVX1-NEXT: vpshlb %xmm1, %xmm0, %xmm0
1133 ; XOPAVX2-NEXT: vpshlb %xmm1, %xmm0, %xmm0
1139 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1141 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
1148 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1151 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
1158 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1160 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
1167 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1169 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
1177 ; X86-SSE-NEXT: psrlw %xmm1, %xmm0
1184 ; X86-SSE-NEXT: pand %xmm1, %xmm0
1196 ; SSE2-NEXT: psrlw %xmm1, %xmm0
1203 ; SSE2-NEXT: pand %xmm1, %xmm0
1209 ; SSE41-NEXT: psrlw %xmm1, %xmm0
1213 ; SSE41-NEXT: pand %xmm2, %xmm0
1219 ; AVX1-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1223 ; AVX1-NEXT: vpand %xmm1, %xmm0, %xmm0
1229 ; AVX2-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1234 ; AVX2-NEXT: vpand %xmm1, %xmm0, %xmm0
1243 ; XOPAVX1-NEXT: vpshlb %xmm1, %xmm0, %xmm0
1251 ; XOPAVX2-NEXT: vpshlb %xmm1, %xmm0, %xmm0
1257 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1259 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
1266 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1269 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
1276 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1278 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
1285 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1287 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
1295 ; X86-SSE-NEXT: psrlw %xmm1, %xmm0
1302 ; X86-SSE-NEXT: pand %xmm1, %xmm0
1314 ; SSE2-NEXT: psrlw %xmm1, %xmm0
1321 ; SSE2-NEXT: pand %xmm1, %xmm0
1327 ; SSE41-NEXT: psrlw %xmm1, %xmm0
1331 ; SSE41-NEXT: pand %xmm2, %xmm0
1337 ; AVX1-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1341 ; AVX1-NEXT: vpand %xmm1, %xmm0, %xmm0
1347 ; AVX2-NEXT: vpsrlw %xmm1, %xmm0, %xmm0
1352 ; AVX2-NEXT: vpand %xmm1, %xmm0, %xmm0
1360 ; XOP-NEXT: vpshlb %xmm1, %xmm0, %xmm0
1366 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1368 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
1375 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1378 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
1385 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1387 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
1394 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1396 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
1404 ; X86-SSE-NEXT: psrlw %xmm1, %xmm0
1411 ; X86-SSE-NEXT: pand %xmm1, %xmm0
1425 ; SSE2-NEXT: movdqa %xmm0, %xmm1
1427 ; SSE2-NEXT: psrld $5, %xmm0
1428 ; SSE2-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]
1429 ; SSE2-NEXT: punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
1430 ; SSE2-NEXT: movdqa %xmm1, %xmm0
1435 ; SSE41-NEXT: movdqa %xmm0, %xmm1
1437 ; SSE41-NEXT: psrld $4, %xmm0
1438 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5,6,7]
1443 ; AVX1-NEXT: vpsrld $5, %xmm0, %xmm1
1444 ; AVX1-NEXT: vpsrld $4, %xmm0, %xmm0
1445 ; AVX1-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5,6,7]
1450 ; AVX2-NEXT: vpsrlvd {{.*}}(%rip), %xmm0, %xmm0
1455 ; XOPAVX1-NEXT: vpshld {{.*}}(%rip), %xmm0, %xmm0
1460 ; XOPAVX2-NEXT: vpsrlvd {{.*}}(%rip), %xmm0, %xmm0
1465 ; AVX512-NEXT: vpsrlvd {{.*}}(%rip), %xmm0, %xmm0
1470 ; AVX512VL-NEXT: vpsrlvd {{.*}}(%rip), %xmm0, %xmm0
1475 ; X86-SSE-NEXT: movdqa %xmm0, %xmm1
1477 ; X86-SSE-NEXT: psrld $5, %xmm0
1478 ; X86-SSE-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,1,1,1]
1479 ; X86-SSE-NEXT: punpckldq {{.*#+}} xmm1 = xmm1[0],xmm0[0],xmm1[1],xmm0[1]
1480 ; X86-SSE-NEXT: movdqa %xmm1, %xmm0
1491 ; SSE2-NEXT: pandn %xmm0, %xmm2
1492 ; SSE2-NEXT: pmulhuw {{.*}}(%rip), %xmm0
1493 ; SSE2-NEXT: pand %xmm1, %xmm0
1494 ; SSE2-NEXT: por %xmm2, %xmm0
1500 ; SSE41-NEXT: pmulhuw %xmm0, %xmm1
1501 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3,4,5,6,7]
1506 ; AVX-NEXT: vpmulhuw {{.*}}(%rip), %xmm0, %xmm1
1507 ; AVX-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3,4,5,6,7]
1512 ; XOP-NEXT: vpshlw {{.*}}(%rip), %xmm0, %xmm0
1517 ; AVX512DQ-NEXT: vpmulhuw {{.*}}(%rip), %xmm0, %xmm1
1518 ; AVX512DQ-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3,4,5,6,7]
1523 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
1526 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $zmm0
1532 ; AVX512DQVL-NEXT: vpmulhuw {{.*}}(%rip), %xmm0, %xmm1
1533 ; AVX512DQVL-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3,4,5,6,7]
1538 ; AVX512BWVL-NEXT: vpsrlvw {{.*}}(%rip), %xmm0, %xmm0
1545 ; X86-SSE-NEXT: pandn %xmm0, %xmm2
1546 ; X86-SSE-NEXT: pmulhuw {{\.LCPI.*}}, %xmm0
1547 ; X86-SSE-NEXT: pand %xmm1, %xmm0
1548 ; X86-SSE-NEXT: por %xmm2, %xmm0
1557 ; SSE2-NEXT: movdqa %xmm0, %xmm1
1560 ; SSE2-NEXT: psrlw $2, %xmm0
1561 ; SSE2-NEXT: pand %xmm2, %xmm0
1563 ; SSE2-NEXT: por %xmm2, %xmm0
1568 ; SSE41-NEXT: movdqa %xmm0, %xmm1
1570 ; SSE41-NEXT: psrlw $2, %xmm0
1571 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3,4,5,6,7]
1576 ; AVX-NEXT: vpsrlw $3, %xmm0, %xmm1
1577 ; AVX-NEXT: vpsrlw $2, %xmm0, %xmm0
1578 ; AVX-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3,4,5,6,7]
1583 ; XOP-NEXT: vpshlw {{.*}}(%rip), %xmm0, %xmm0
1588 ; AVX512DQ-NEXT: vpsrlw $3, %xmm0, %xmm1
1589 ; AVX512DQ-NEXT: vpsrlw $2, %xmm0, %xmm0
1590 ; AVX512DQ-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3,4,5,6,7]
1595 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 def $zmm0
1598 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $zmm0
1604 ; AVX512DQVL-NEXT: vpsrlw $3, %xmm0, %xmm1
1605 ; AVX512DQVL-NEXT: vpsrlw $2, %xmm0, %xmm0
1606 ; AVX512DQVL-NEXT: vpblendw {{.*#+}} xmm0 = xmm0[0],xmm1[1],xmm0[2,3,4,5,6,7]
1611 ; AVX512BWVL-NEXT: vpsrlvw {{.*}}(%rip), %xmm0, %xmm0
1616 ; X86-SSE-NEXT: movdqa %xmm0, %xmm1
1619 ; X86-SSE-NEXT: psrlw $2, %xmm0
1620 ; X86-SSE-NEXT: pand %xmm2, %xmm0
1622 ; X86-SSE-NEXT: por %xmm2, %xmm0
1632 ; SSE2-NEXT: movdqa %xmm0, %xmm2
1634 …cklbw {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1…
1635 ; SSE2-NEXT: pmullw {{.*}}(%rip), %xmm0
1636 ; SSE2-NEXT: psrlw $8, %xmm0
1637 ; SSE2-NEXT: packuswb %xmm2, %xmm0
1643 … pmovzxbw {{.*#+}} xmm1 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
1644 … {{.*#+}} xmm0 = xmm0[8],xmm2[8],xmm0[9],xmm2[9],xmm0[10],xmm2[10],xmm0[11],xmm2[11],xmm0[12],xmm2…
1647 ; SSE41-NEXT: packuswb %xmm0, %xmm1
1648 ; SSE41-NEXT: movdqa %xmm1, %xmm0
1654 …*#+}} xmm1 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12]…
1655 …T: vpmovzxbw {{.*#+}} xmm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,x…
1656 ; AVX1-NEXT: vpmullw {{.*}}(%rip), %xmm0, %xmm0
1657 ; AVX1-NEXT: vpsrlw $8, %xmm0, %xmm0
1658 ; AVX1-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
1663 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1667 ; AVX2-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
1673 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0
1678 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1680 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
1687 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1690 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
1696 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1698 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
1704 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1706 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
1713 ; X86-SSE-NEXT: movdqa %xmm0, %xmm2
1715 …cklbw {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1…
1716 ; X86-SSE-NEXT: pmullw {{\.LCPI.*}}, %xmm0
1717 ; X86-SSE-NEXT: psrlw $8, %xmm0
1718 ; X86-SSE-NEXT: packuswb %xmm2, %xmm0
1728 ; SSE2-NEXT: movdqa %xmm0, %xmm2
1730 …cklbw {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1…
1731 ; SSE2-NEXT: pmullw {{.*}}(%rip), %xmm0
1732 ; SSE2-NEXT: psrlw $8, %xmm0
1733 ; SSE2-NEXT: packuswb %xmm2, %xmm0
1739 … pmovzxbw {{.*#+}} xmm1 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
1740 … {{.*#+}} xmm0 = xmm0[8],xmm2[8],xmm0[9],xmm2[9],xmm0[10],xmm2[10],xmm0[11],xmm2[11],xmm0[12],xmm2…
1743 ; SSE41-NEXT: packuswb %xmm0, %xmm1
1744 ; SSE41-NEXT: movdqa %xmm1, %xmm0
1750 …*#+}} xmm1 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12]…
1751 …T: vpmovzxbw {{.*#+}} xmm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,x…
1752 ; AVX1-NEXT: vpmullw {{.*}}(%rip), %xmm0, %xmm0
1753 ; AVX1-NEXT: vpsrlw $8, %xmm0, %xmm0
1754 ; AVX1-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
1759 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1763 ; AVX2-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
1769 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0
1774 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1776 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
1783 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1786 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
1792 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1794 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
1800 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1802 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
1809 ; X86-SSE-NEXT: movdqa %xmm0, %xmm2
1811 …cklbw {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1…
1812 ; X86-SSE-NEXT: pmullw {{\.LCPI.*}}, %xmm0
1813 ; X86-SSE-NEXT: psrlw $8, %xmm0
1814 ; X86-SSE-NEXT: packuswb %xmm2, %xmm0
1824 ; SSE2-NEXT: movdqa %xmm0, %xmm2
1826 …cklbw {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1…
1827 ; SSE2-NEXT: pmullw {{.*}}(%rip), %xmm0
1828 ; SSE2-NEXT: psrlw $8, %xmm0
1829 ; SSE2-NEXT: packuswb %xmm2, %xmm0
1835 … pmovzxbw {{.*#+}} xmm1 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0…
1836 … {{.*#+}} xmm0 = xmm0[8],xmm2[8],xmm0[9],xmm2[9],xmm0[10],xmm2[10],xmm0[11],xmm2[11],xmm0[12],xmm2…
1839 ; SSE41-NEXT: packuswb %xmm0, %xmm1
1840 ; SSE41-NEXT: movdqa %xmm1, %xmm0
1846 …*#+}} xmm1 = xmm0[8],xmm1[8],xmm0[9],xmm1[9],xmm0[10],xmm1[10],xmm0[11],xmm1[11],xmm0[12],xmm1[12]…
1847 …T: vpmovzxbw {{.*#+}} xmm0 = xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,x…
1848 ; AVX1-NEXT: vpmullw {{.*}}(%rip), %xmm0, %xmm0
1849 ; AVX1-NEXT: vpsrlw $8, %xmm0, %xmm0
1850 ; AVX1-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
1855 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1859 ; AVX2-NEXT: vpackuswb %xmm1, %xmm0, %xmm0
1865 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0
1870 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1872 ; AVX512DQ-NEXT: vpmovdb %zmm0, %xmm0
1879 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1882 ; AVX512BW-NEXT: # kill: def $xmm0 killed $xmm0 killed $ymm0
1888 …xmm0[0],zero,zero,zero,xmm0[1],zero,zero,zero,xmm0[2],zero,zero,zero,xmm0[3],zero,zero,zero,xmm0[4…
1890 ; AVX512DQVL-NEXT: vpmovdb %zmm0, %xmm0
1896 …xmm0[0],zero,xmm0[1],zero,xmm0[2],zero,xmm0[3],zero,xmm0[4],zero,xmm0[5],zero,xmm0[6],zero,xmm0[7]…
1898 ; AVX512BWVL-NEXT: vpmovwb %ymm0, %xmm0
1905 ; X86-SSE-NEXT: movdqa %xmm0, %xmm2
1907 …cklbw {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1],xmm0[2],xmm1[2],xmm0[3],xmm1[3],xmm0[4],xmm1…
1908 ; X86-SSE-NEXT: pmullw {{\.LCPI.*}}, %xmm0
1909 ; X86-SSE-NEXT: psrlw $8, %xmm0
1910 ; X86-SSE-NEXT: packuswb %xmm2, %xmm0
1923 ; SSE-NEXT: psrld $5, %xmm0
1928 ; AVX-NEXT: vpsrld $5, %xmm0, %xmm0
1933 ; XOP-NEXT: vpsrld $5, %xmm0, %xmm0
1938 ; AVX512-NEXT: vpsrld $5, %xmm0, %xmm0
1943 ; AVX512VL-NEXT: vpsrld $5, %xmm0, %xmm0
1948 ; X86-SSE-NEXT: psrld $5, %xmm0
1957 ; SSE-NEXT: psrlw $3, %xmm0
1962 ; AVX-NEXT: vpsrlw $3, %xmm0, %xmm0
1967 ; XOP-NEXT: vpsrlw $3, %xmm0, %xmm0
1972 ; AVX512-NEXT: vpsrlw $3, %xmm0, %xmm0
1977 ; AVX512VL-NEXT: vpsrlw $3, %xmm0, %xmm0
1982 ; X86-SSE-NEXT: psrlw $3, %xmm0
1991 ; SSE-NEXT: psrlw $3, %xmm0
1996 ; AVX-NEXT: vpsrlw $3, %xmm0, %xmm0
2001 ; XOP-NEXT: vpsrlw $3, %xmm0, %xmm0
2006 ; AVX512-NEXT: vpsrlw $3, %xmm0, %xmm0
2011 ; AVX512VL-NEXT: vpsrlw $3, %xmm0, %xmm0
2016 ; X86-SSE-NEXT: psrlw $3, %xmm0
2025 ; SSE-NEXT: psrlw $3, %xmm0
2026 ; SSE-NEXT: pand {{.*}}(%rip), %xmm0
2031 ; AVX-NEXT: vpsrlw $3, %xmm0, %xmm0
2032 ; AVX-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2037 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0
2042 ; AVX512-NEXT: vpsrlw $3, %xmm0, %xmm0
2043 ; AVX512-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2048 ; AVX512VL-NEXT: vpsrlw $3, %xmm0, %xmm0
2049 ; AVX512VL-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2054 ; X86-SSE-NEXT: psrlw $3, %xmm0
2055 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
2064 ; SSE-NEXT: psrlw $3, %xmm0
2065 ; SSE-NEXT: pand {{.*}}(%rip), %xmm0
2070 ; AVX-NEXT: vpsrlw $3, %xmm0, %xmm0
2071 ; AVX-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2076 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0
2081 ; AVX512-NEXT: vpsrlw $3, %xmm0, %xmm0
2082 ; AVX512-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2087 ; AVX512VL-NEXT: vpsrlw $3, %xmm0, %xmm0
2088 ; AVX512VL-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2093 ; X86-SSE-NEXT: psrlw $3, %xmm0
2094 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0
2103 ; SSE-NEXT: psrlw $3, %xmm0
2104 ; SSE-NEXT: pand {{.*}}(%rip), %xmm0
2109 ; AVX-NEXT: vpsrlw $3, %xmm0, %xmm0
2110 ; AVX-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2115 ; XOP-NEXT: vpshlb {{.*}}(%rip), %xmm0, %xmm0
2120 ; AVX512-NEXT: vpsrlw $3, %xmm0, %xmm0
2121 ; AVX512-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2126 ; AVX512VL-NEXT: vpsrlw $3, %xmm0, %xmm0
2127 ; AVX512VL-NEXT: vpand {{.*}}(%rip), %xmm0, %xmm0
2132 ; X86-SSE-NEXT: psrlw $3, %xmm0
2133 ; X86-SSE-NEXT: pand {{\.LCPI.*}}, %xmm0