Lines Matching refs:X32

10 …known -mattr=+sse2 | FileCheck %s --check-prefix=ALL --check-prefix=X32-SSE --check-prefix=X32-SSE2
80 ; X32-SSE-LABEL: var_shift_v2i64:
81 ; X32-SSE: # BB#0:
82 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm2 = xmm1[2,3,0,1]
83 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm3 = [0,2147483648,0,2147483648]
84 ; X32-SSE-NEXT: movdqa %xmm3, %xmm4
85 ; X32-SSE-NEXT: psrlq %xmm2, %xmm4
86 ; X32-SSE-NEXT: movq {{.*#+}} xmm5 = xmm1[0],zero
87 ; X32-SSE-NEXT: psrlq %xmm5, %xmm3
88 ; X32-SSE-NEXT: movsd {{.*#+}} xmm4 = xmm3[0],xmm4[1]
89 ; X32-SSE-NEXT: movdqa %xmm0, %xmm1
90 ; X32-SSE-NEXT: psrlq %xmm2, %xmm1
91 ; X32-SSE-NEXT: psrlq %xmm5, %xmm0
92 ; X32-SSE-NEXT: movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]
93 ; X32-SSE-NEXT: xorpd %xmm4, %xmm1
94 ; X32-SSE-NEXT: psubq %xmm4, %xmm1
95 ; X32-SSE-NEXT: movdqa %xmm1, %xmm0
96 ; X32-SSE-NEXT: retl
180 ; X32-SSE-LABEL: var_shift_v4i32:
181 ; X32-SSE: # BB#0:
182 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
183 ; X32-SSE-NEXT: psrldq {{.*#+}} xmm2 = xmm2[12,13,14,15],zero,zero,zero,zero,zero,zero,zero,zero…
184 ; X32-SSE-NEXT: movdqa %xmm0, %xmm3
185 ; X32-SSE-NEXT: psrad %xmm2, %xmm3
186 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
187 ; X32-SSE-NEXT: psrlq $32, %xmm2
188 ; X32-SSE-NEXT: movdqa %xmm0, %xmm4
189 ; X32-SSE-NEXT: psrad %xmm2, %xmm4
190 ; X32-SSE-NEXT: movsd {{.*#+}} xmm3 = xmm4[0],xmm3[1]
191 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm2 = xmm3[1,3,2,3]
192 ; X32-SSE-NEXT: pxor %xmm3, %xmm3
193 ; X32-SSE-NEXT: movdqa %xmm1, %xmm4
194 ; X32-SSE-NEXT: punpckhdq {{.*#+}} xmm4 = xmm4[2],xmm3[2],xmm4[3],xmm3[3]
195 ; X32-SSE-NEXT: movdqa %xmm0, %xmm5
196 ; X32-SSE-NEXT: psrad %xmm4, %xmm5
197 ; X32-SSE-NEXT: punpckldq {{.*#+}} xmm1 = xmm1[0],xmm3[0],xmm1[1],xmm3[1]
198 ; X32-SSE-NEXT: psrad %xmm1, %xmm0
199 ; X32-SSE-NEXT: movsd {{.*#+}} xmm5 = xmm0[0],xmm5[1]
200 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm0 = xmm5[0,2,2,3]
201 ; X32-SSE-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm2[0],xmm0[1],xmm2[1]
202 ; X32-SSE-NEXT: retl
308 ; X32-SSE-LABEL: var_shift_v8i16:
309 ; X32-SSE: # BB#0:
310 ; X32-SSE-NEXT: psllw $12, %xmm1
311 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
312 ; X32-SSE-NEXT: psraw $15, %xmm2
313 ; X32-SSE-NEXT: movdqa %xmm2, %xmm3
314 ; X32-SSE-NEXT: pandn %xmm0, %xmm3
315 ; X32-SSE-NEXT: psraw $8, %xmm0
316 ; X32-SSE-NEXT: pand %xmm2, %xmm0
317 ; X32-SSE-NEXT: por %xmm3, %xmm0
318 ; X32-SSE-NEXT: paddw %xmm1, %xmm1
319 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
320 ; X32-SSE-NEXT: psraw $15, %xmm2
321 ; X32-SSE-NEXT: movdqa %xmm2, %xmm3
322 ; X32-SSE-NEXT: pandn %xmm0, %xmm3
323 ; X32-SSE-NEXT: psraw $4, %xmm0
324 ; X32-SSE-NEXT: pand %xmm2, %xmm0
325 ; X32-SSE-NEXT: por %xmm3, %xmm0
326 ; X32-SSE-NEXT: paddw %xmm1, %xmm1
327 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
328 ; X32-SSE-NEXT: psraw $15, %xmm2
329 ; X32-SSE-NEXT: movdqa %xmm2, %xmm3
330 ; X32-SSE-NEXT: pandn %xmm0, %xmm3
331 ; X32-SSE-NEXT: psraw $2, %xmm0
332 ; X32-SSE-NEXT: pand %xmm2, %xmm0
333 ; X32-SSE-NEXT: por %xmm3, %xmm0
334 ; X32-SSE-NEXT: paddw %xmm1, %xmm1
335 ; X32-SSE-NEXT: psraw $15, %xmm1
336 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
337 ; X32-SSE-NEXT: pandn %xmm0, %xmm2
338 ; X32-SSE-NEXT: psraw $1, %xmm0
339 ; X32-SSE-NEXT: pand %xmm1, %xmm0
340 ; X32-SSE-NEXT: por %xmm2, %xmm0
341 ; X32-SSE-NEXT: retl
476 ; X32-SSE-LABEL: var_shift_v16i8:
477 ; X32-SSE: # BB#0:
478 ; X32-SSE-NEXT: punpckhbw {{.*#+}} xmm2 = xmm2[8],xmm0[8],xmm2[9],xmm0[9],xmm2[10],xmm0[10],xmm2…
479 ; X32-SSE-NEXT: psllw $5, %xmm1
480 ; X32-SSE-NEXT: punpckhbw {{.*#+}} xmm4 = xmm4[8],xmm1[8],xmm4[9],xmm1[9],xmm4[10],xmm1[10],xmm4…
481 ; X32-SSE-NEXT: pxor %xmm3, %xmm3
482 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
483 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
484 ; X32-SSE-NEXT: movdqa %xmm5, %xmm6
485 ; X32-SSE-NEXT: pandn %xmm2, %xmm6
486 ; X32-SSE-NEXT: psraw $4, %xmm2
487 ; X32-SSE-NEXT: pand %xmm5, %xmm2
488 ; X32-SSE-NEXT: por %xmm6, %xmm2
489 ; X32-SSE-NEXT: paddw %xmm4, %xmm4
490 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
491 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
492 ; X32-SSE-NEXT: movdqa %xmm5, %xmm6
493 ; X32-SSE-NEXT: pandn %xmm2, %xmm6
494 ; X32-SSE-NEXT: psraw $2, %xmm2
495 ; X32-SSE-NEXT: pand %xmm5, %xmm2
496 ; X32-SSE-NEXT: por %xmm6, %xmm2
497 ; X32-SSE-NEXT: paddw %xmm4, %xmm4
498 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
499 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
500 ; X32-SSE-NEXT: movdqa %xmm5, %xmm4
501 ; X32-SSE-NEXT: pandn %xmm2, %xmm4
502 ; X32-SSE-NEXT: psraw $1, %xmm2
503 ; X32-SSE-NEXT: pand %xmm5, %xmm2
504 ; X32-SSE-NEXT: por %xmm4, %xmm2
505 ; X32-SSE-NEXT: psrlw $8, %xmm2
506 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
507 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm1 = xmm1[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
508 ; X32-SSE-NEXT: pxor %xmm4, %xmm4
509 ; X32-SSE-NEXT: pcmpgtw %xmm1, %xmm4
510 ; X32-SSE-NEXT: movdqa %xmm4, %xmm5
511 ; X32-SSE-NEXT: pandn %xmm0, %xmm5
512 ; X32-SSE-NEXT: psraw $4, %xmm0
513 ; X32-SSE-NEXT: pand %xmm4, %xmm0
514 ; X32-SSE-NEXT: por %xmm5, %xmm0
515 ; X32-SSE-NEXT: paddw %xmm1, %xmm1
516 ; X32-SSE-NEXT: pxor %xmm4, %xmm4
517 ; X32-SSE-NEXT: pcmpgtw %xmm1, %xmm4
518 ; X32-SSE-NEXT: movdqa %xmm4, %xmm5
519 ; X32-SSE-NEXT: pandn %xmm0, %xmm5
520 ; X32-SSE-NEXT: psraw $2, %xmm0
521 ; X32-SSE-NEXT: pand %xmm4, %xmm0
522 ; X32-SSE-NEXT: por %xmm5, %xmm0
523 ; X32-SSE-NEXT: paddw %xmm1, %xmm1
524 ; X32-SSE-NEXT: pcmpgtw %xmm1, %xmm3
525 ; X32-SSE-NEXT: movdqa %xmm3, %xmm1
526 ; X32-SSE-NEXT: pandn %xmm0, %xmm1
527 ; X32-SSE-NEXT: psraw $1, %xmm0
528 ; X32-SSE-NEXT: pand %xmm3, %xmm0
529 ; X32-SSE-NEXT: por %xmm1, %xmm0
530 ; X32-SSE-NEXT: psrlw $8, %xmm0
531 ; X32-SSE-NEXT: packuswb %xmm2, %xmm0
532 ; X32-SSE-NEXT: retl
576 ; X32-SSE-LABEL: splatvar_shift_v2i64:
577 ; X32-SSE: # BB#0:
578 ; X32-SSE-NEXT: movq {{.*#+}} xmm1 = xmm1[0],zero
579 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm2 = [0,2147483648,0,2147483648]
580 ; X32-SSE-NEXT: psrlq %xmm1, %xmm2
581 ; X32-SSE-NEXT: psrlq %xmm1, %xmm0
582 ; X32-SSE-NEXT: pxor %xmm2, %xmm0
583 ; X32-SSE-NEXT: psubq %xmm2, %xmm0
584 ; X32-SSE-NEXT: retl
619 ; X32-SSE-LABEL: splatvar_shift_v4i32:
620 ; X32-SSE: # BB#0:
621 ; X32-SSE-NEXT: xorps %xmm2, %xmm2
622 ; X32-SSE-NEXT: movss {{.*#+}} xmm2 = xmm1[0],xmm2[1,2,3]
623 ; X32-SSE-NEXT: psrad %xmm2, %xmm0
624 ; X32-SSE-NEXT: retl
660 ; X32-SSE-LABEL: splatvar_shift_v8i16:
661 ; X32-SSE: # BB#0:
662 ; X32-SSE-NEXT: movd %xmm1, %eax
663 ; X32-SSE-NEXT: movzwl %ax, %eax
664 ; X32-SSE-NEXT: movd %eax, %xmm1
665 ; X32-SSE-NEXT: psraw %xmm1, %xmm0
666 ; X32-SSE-NEXT: retl
848 ; X32-SSE-LABEL: splatvar_shift_v16i8:
849 ; X32-SSE: # BB#0:
850 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm1 = xmm1[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
851 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,1,0,3]
852 ; X32-SSE-NEXT: pshuflw {{.*#+}} xmm1 = xmm1[0,0,0,0,4,5,6,7]
853 ; X32-SSE-NEXT: pshufhw {{.*#+}} xmm3 = xmm1[0,1,2,3,4,4,4,4]
854 ; X32-SSE-NEXT: punpckhbw {{.*#+}} xmm1 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1…
855 ; X32-SSE-NEXT: psllw $5, %xmm3
856 ; X32-SSE-NEXT: punpckhbw {{.*#+}} xmm4 = xmm4[8],xmm3[8],xmm4[9],xmm3[9],xmm4[10],xmm3[10],xmm4…
857 ; X32-SSE-NEXT: pxor %xmm2, %xmm2
858 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
859 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
860 ; X32-SSE-NEXT: movdqa %xmm5, %xmm6
861 ; X32-SSE-NEXT: pandn %xmm1, %xmm6
862 ; X32-SSE-NEXT: psraw $4, %xmm1
863 ; X32-SSE-NEXT: pand %xmm5, %xmm1
864 ; X32-SSE-NEXT: por %xmm6, %xmm1
865 ; X32-SSE-NEXT: paddw %xmm4, %xmm4
866 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
867 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
868 ; X32-SSE-NEXT: movdqa %xmm5, %xmm6
869 ; X32-SSE-NEXT: pandn %xmm1, %xmm6
870 ; X32-SSE-NEXT: psraw $2, %xmm1
871 ; X32-SSE-NEXT: pand %xmm5, %xmm1
872 ; X32-SSE-NEXT: por %xmm6, %xmm1
873 ; X32-SSE-NEXT: paddw %xmm4, %xmm4
874 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
875 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
876 ; X32-SSE-NEXT: movdqa %xmm5, %xmm4
877 ; X32-SSE-NEXT: pandn %xmm1, %xmm4
878 ; X32-SSE-NEXT: psraw $1, %xmm1
879 ; X32-SSE-NEXT: pand %xmm5, %xmm1
880 ; X32-SSE-NEXT: por %xmm4, %xmm1
881 ; X32-SSE-NEXT: psrlw $8, %xmm1
882 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
883 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm3 = xmm3[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
884 ; X32-SSE-NEXT: pxor %xmm4, %xmm4
885 ; X32-SSE-NEXT: pcmpgtw %xmm3, %xmm4
886 ; X32-SSE-NEXT: movdqa %xmm4, %xmm5
887 ; X32-SSE-NEXT: pandn %xmm0, %xmm5
888 ; X32-SSE-NEXT: psraw $4, %xmm0
889 ; X32-SSE-NEXT: pand %xmm4, %xmm0
890 ; X32-SSE-NEXT: por %xmm5, %xmm0
891 ; X32-SSE-NEXT: paddw %xmm3, %xmm3
892 ; X32-SSE-NEXT: pxor %xmm4, %xmm4
893 ; X32-SSE-NEXT: pcmpgtw %xmm3, %xmm4
894 ; X32-SSE-NEXT: movdqa %xmm4, %xmm5
895 ; X32-SSE-NEXT: pandn %xmm0, %xmm5
896 ; X32-SSE-NEXT: psraw $2, %xmm0
897 ; X32-SSE-NEXT: pand %xmm4, %xmm0
898 ; X32-SSE-NEXT: por %xmm5, %xmm0
899 ; X32-SSE-NEXT: paddw %xmm3, %xmm3
900 ; X32-SSE-NEXT: pcmpgtw %xmm3, %xmm2
901 ; X32-SSE-NEXT: movdqa %xmm2, %xmm3
902 ; X32-SSE-NEXT: pandn %xmm0, %xmm3
903 ; X32-SSE-NEXT: psraw $1, %xmm0
904 ; X32-SSE-NEXT: pand %xmm2, %xmm0
905 ; X32-SSE-NEXT: por %xmm3, %xmm0
906 ; X32-SSE-NEXT: psrlw $8, %xmm0
907 ; X32-SSE-NEXT: packuswb %xmm1, %xmm0
908 ; X32-SSE-NEXT: retl
967 ; X32-SSE-LABEL: constant_shift_v2i64:
968 ; X32-SSE: # BB#0:
969 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm1 = [0,2147483648,0,2147483648]
970 ; X32-SSE-NEXT: movdqa %xmm1, %xmm2
971 ; X32-SSE-NEXT: psrlq $7, %xmm2
972 ; X32-SSE-NEXT: psrlq $1, %xmm1
973 ; X32-SSE-NEXT: movsd {{.*#+}} xmm2 = xmm1[0],xmm2[1]
974 ; X32-SSE-NEXT: movdqa %xmm0, %xmm1
975 ; X32-SSE-NEXT: psrlq $7, %xmm1
976 ; X32-SSE-NEXT: psrlq $1, %xmm0
977 ; X32-SSE-NEXT: movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]
978 ; X32-SSE-NEXT: xorpd %xmm2, %xmm1
979 ; X32-SSE-NEXT: psubq %xmm2, %xmm1
980 ; X32-SSE-NEXT: movdqa %xmm1, %xmm0
981 ; X32-SSE-NEXT: retl
1043 ; X32-SSE-LABEL: constant_shift_v4i32:
1044 ; X32-SSE: # BB#0:
1045 ; X32-SSE-NEXT: movdqa %xmm0, %xmm1
1046 ; X32-SSE-NEXT: psrad $7, %xmm1
1047 ; X32-SSE-NEXT: movdqa %xmm0, %xmm2
1048 ; X32-SSE-NEXT: psrad $5, %xmm2
1049 ; X32-SSE-NEXT: movsd {{.*#+}} xmm1 = xmm2[0],xmm1[1]
1050 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm1 = xmm1[1,3,2,3]
1051 ; X32-SSE-NEXT: movdqa %xmm0, %xmm2
1052 ; X32-SSE-NEXT: psrad $6, %xmm2
1053 ; X32-SSE-NEXT: psrad $4, %xmm0
1054 ; X32-SSE-NEXT: movsd {{.*#+}} xmm2 = xmm0[0],xmm2[1]
1055 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm0 = xmm2[0,2,2,3]
1056 ; X32-SSE-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
1057 ; X32-SSE-NEXT: retl
1135 ; X32-SSE-LABEL: constant_shift_v8i16:
1136 ; X32-SSE: # BB#0:
1137 ; X32-SSE-NEXT: movdqa %xmm0, %xmm1
1138 ; X32-SSE-NEXT: psraw $4, %xmm1
1139 ; X32-SSE-NEXT: movsd {{.*#+}} xmm1 = xmm0[0],xmm1[1]
1140 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm2 = xmm1[0,2,2,3]
1141 ; X32-SSE-NEXT: psraw $2, %xmm1
1142 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm0 = xmm1[1,3,2,3]
1143 ; X32-SSE-NEXT: punpckldq {{.*#+}} xmm2 = xmm2[0],xmm0[0],xmm2[1],xmm0[1]
1144 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm0 = [65535,0,65535,0,65535,0,65535,0]
1145 ; X32-SSE-NEXT: movdqa %xmm2, %xmm1
1146 ; X32-SSE-NEXT: pand %xmm0, %xmm1
1147 ; X32-SSE-NEXT: psraw $1, %xmm2
1148 ; X32-SSE-NEXT: pandn %xmm2, %xmm0
1149 ; X32-SSE-NEXT: por %xmm1, %xmm0
1150 ; X32-SSE-NEXT: retl
1288 ; X32-SSE-LABEL: constant_shift_v16i8:
1289 ; X32-SSE: # BB#0:
1290 ; X32-SSE-NEXT: punpckhbw {{.*#+}} xmm1 = xmm1[8],xmm0[8],xmm1[9],xmm0[9],xmm1[10],xmm0[10],xmm1…
1291 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm3 = [0,1,2,3,4,5,6,7,7,6,5,4,3,2,1,0]
1292 ; X32-SSE-NEXT: psllw $5, %xmm3
1293 ; X32-SSE-NEXT: punpckhbw {{.*#+}} xmm4 = xmm4[8],xmm3[8],xmm4[9],xmm3[9],xmm4[10],xmm3[10],xmm4…
1294 ; X32-SSE-NEXT: pxor %xmm2, %xmm2
1295 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
1296 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
1297 ; X32-SSE-NEXT: movdqa %xmm5, %xmm6
1298 ; X32-SSE-NEXT: pandn %xmm1, %xmm6
1299 ; X32-SSE-NEXT: psraw $4, %xmm1
1300 ; X32-SSE-NEXT: pand %xmm5, %xmm1
1301 ; X32-SSE-NEXT: por %xmm6, %xmm1
1302 ; X32-SSE-NEXT: paddw %xmm4, %xmm4
1303 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
1304 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
1305 ; X32-SSE-NEXT: movdqa %xmm5, %xmm6
1306 ; X32-SSE-NEXT: pandn %xmm1, %xmm6
1307 ; X32-SSE-NEXT: psraw $2, %xmm1
1308 ; X32-SSE-NEXT: pand %xmm5, %xmm1
1309 ; X32-SSE-NEXT: por %xmm6, %xmm1
1310 ; X32-SSE-NEXT: paddw %xmm4, %xmm4
1311 ; X32-SSE-NEXT: pxor %xmm5, %xmm5
1312 ; X32-SSE-NEXT: pcmpgtw %xmm4, %xmm5
1313 ; X32-SSE-NEXT: movdqa %xmm5, %xmm4
1314 ; X32-SSE-NEXT: pandn %xmm1, %xmm4
1315 ; X32-SSE-NEXT: psraw $1, %xmm1
1316 ; X32-SSE-NEXT: pand %xmm5, %xmm1
1317 ; X32-SSE-NEXT: por %xmm4, %xmm1
1318 ; X32-SSE-NEXT: psrlw $8, %xmm1
1319 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm0 = xmm0[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
1320 ; X32-SSE-NEXT: punpcklbw {{.*#+}} xmm3 = xmm3[0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7]
1321 ; X32-SSE-NEXT: pxor %xmm4, %xmm4
1322 ; X32-SSE-NEXT: pcmpgtw %xmm3, %xmm4
1323 ; X32-SSE-NEXT: movdqa %xmm4, %xmm5
1324 ; X32-SSE-NEXT: pandn %xmm0, %xmm5
1325 ; X32-SSE-NEXT: psraw $4, %xmm0
1326 ; X32-SSE-NEXT: pand %xmm4, %xmm0
1327 ; X32-SSE-NEXT: por %xmm5, %xmm0
1328 ; X32-SSE-NEXT: paddw %xmm3, %xmm3
1329 ; X32-SSE-NEXT: pxor %xmm4, %xmm4
1330 ; X32-SSE-NEXT: pcmpgtw %xmm3, %xmm4
1331 ; X32-SSE-NEXT: movdqa %xmm4, %xmm5
1332 ; X32-SSE-NEXT: pandn %xmm0, %xmm5
1333 ; X32-SSE-NEXT: psraw $2, %xmm0
1334 ; X32-SSE-NEXT: pand %xmm4, %xmm0
1335 ; X32-SSE-NEXT: por %xmm5, %xmm0
1336 ; X32-SSE-NEXT: paddw %xmm3, %xmm3
1337 ; X32-SSE-NEXT: pcmpgtw %xmm3, %xmm2
1338 ; X32-SSE-NEXT: movdqa %xmm2, %xmm3
1339 ; X32-SSE-NEXT: pandn %xmm0, %xmm3
1340 ; X32-SSE-NEXT: psraw $1, %xmm0
1341 ; X32-SSE-NEXT: pand %xmm2, %xmm0
1342 ; X32-SSE-NEXT: por %xmm3, %xmm0
1343 ; X32-SSE-NEXT: psrlw $8, %xmm0
1344 ; X32-SSE-NEXT: packuswb %xmm1, %xmm0
1345 ; X32-SSE-NEXT: retl
1394 ; X32-SSE-LABEL: splatconstant_shift_v2i64:
1395 ; X32-SSE: # BB#0:
1396 ; X32-SSE-NEXT: movdqa %xmm0, %xmm1
1397 ; X32-SSE-NEXT: psrad $7, %xmm1
1398 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm1 = xmm1[1,3,2,3]
1399 ; X32-SSE-NEXT: psrlq $7, %xmm0
1400 ; X32-SSE-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
1401 ; X32-SSE-NEXT: punpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
1402 ; X32-SSE-NEXT: retl
1423 ; X32-SSE-LABEL: splatconstant_shift_v4i32:
1424 ; X32-SSE: # BB#0:
1425 ; X32-SSE-NEXT: psrad $5, %xmm0
1426 ; X32-SSE-NEXT: retl
1447 ; X32-SSE-LABEL: splatconstant_shift_v8i16:
1448 ; X32-SSE: # BB#0:
1449 ; X32-SSE-NEXT: psraw $3, %xmm0
1450 ; X32-SSE-NEXT: retl
1481 ; X32-SSE-LABEL: splatconstant_shift_v16i8:
1482 ; X32-SSE: # BB#0:
1483 ; X32-SSE-NEXT: psrlw $3, %xmm0
1484 ; X32-SSE-NEXT: pand .LCPI15_0, %xmm0
1485 ; X32-SSE-NEXT: movdqa {{.*#+}} xmm1 = [16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16]
1486 ; X32-SSE-NEXT: pxor %xmm1, %xmm0
1487 ; X32-SSE-NEXT: psubb %xmm1, %xmm0
1488 ; X32-SSE-NEXT: retl