Lines Matching refs:SSE41
3 …cpu=x86-64 -mattr=+sse4.1 | FileCheck %s --check-prefix=ALL --check-prefix=SSE --check-prefix=SSE41
292 ; SSE41-LABEL: combine_bitwise_ops_test1b:
293 ; SSE41: # BB#0:
294 ; SSE41-NEXT: pand %xmm1, %xmm0
295 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3],xmm0[4,5],xmm2[6,7]
296 ; SSE41-NEXT: retq
332 ; SSE41-LABEL: combine_bitwise_ops_test2b:
333 ; SSE41: # BB#0:
334 ; SSE41-NEXT: por %xmm1, %xmm0
335 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3],xmm0[4,5],xmm2[6,7]
336 ; SSE41-NEXT: retq
368 ; SSE41-LABEL: combine_bitwise_ops_test3b:
369 ; SSE41: # BB#0:
370 ; SSE41-NEXT: pxor %xmm1, %xmm0
371 ; SSE41-NEXT: pxor %xmm1, %xmm1
372 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5],xmm1[6,7]
373 ; SSE41-NEXT: retq
411 ; SSE41-LABEL: combine_bitwise_ops_test4b:
412 ; SSE41: # BB#0:
413 ; SSE41-NEXT: pand %xmm1, %xmm0
414 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm2[0,1],xmm0[2,3],xmm2[4,5],xmm0[6,7]
415 ; SSE41-NEXT: retq
451 ; SSE41-LABEL: combine_bitwise_ops_test5b:
452 ; SSE41: # BB#0:
453 ; SSE41-NEXT: por %xmm1, %xmm0
454 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm2[0,1],xmm0[2,3],xmm2[4,5],xmm0[6,7]
455 ; SSE41-NEXT: retq
487 ; SSE41-LABEL: combine_bitwise_ops_test6b:
488 ; SSE41: # BB#0:
489 ; SSE41-NEXT: pxor %xmm1, %xmm0
490 ; SSE41-NEXT: pxor %xmm1, %xmm1
491 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3],xmm1[4,5],xmm0[6,7]
492 ; SSE41-NEXT: retq
530 ; SSE41-LABEL: combine_bitwise_ops_test1c:
531 ; SSE41: # BB#0:
532 ; SSE41-NEXT: pand %xmm1, %xmm0
533 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3],xmm0[4,5],xmm2[6,7]
534 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,1,3]
535 ; SSE41-NEXT: retq
573 ; SSE41-LABEL: combine_bitwise_ops_test2c:
574 ; SSE41: # BB#0:
575 ; SSE41-NEXT: por %xmm1, %xmm0
576 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm2[2,3],xmm0[4,5],xmm2[6,7]
577 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,1,3]
578 ; SSE41-NEXT: retq
616 ; SSE41-LABEL: combine_bitwise_ops_test3c:
617 ; SSE41: # BB#0:
618 ; SSE41-NEXT: pxor %xmm1, %xmm0
619 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
620 ; SSE41-NEXT: movq {{.*#+}} xmm0 = xmm0[0],zero
621 ; SSE41-NEXT: retq
652 ; SSE41-LABEL: combine_bitwise_ops_test4c:
653 ; SSE41: # BB#0:
654 ; SSE41-NEXT: pand %xmm1, %xmm0
655 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm2[0,1],xmm0[2,3],xmm2[4,5],xmm0[6,7]
656 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,1,3]
657 ; SSE41-NEXT: retq
695 ; SSE41-LABEL: combine_bitwise_ops_test5c:
696 ; SSE41: # BB#0:
697 ; SSE41-NEXT: por %xmm1, %xmm0
698 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm2[0,1],xmm0[2,3],xmm2[4,5],xmm0[6,7]
699 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,1,3]
700 ; SSE41-NEXT: retq
738 ; SSE41-LABEL: combine_bitwise_ops_test6c:
739 ; SSE41: # BB#0:
740 ; SSE41-NEXT: pxor %xmm1, %xmm0
741 ; SSE41-NEXT: pshufd {{.*#+}} xmm1 = xmm0[0,1,1,3]
742 ; SSE41-NEXT: pxor %xmm0, %xmm0
743 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1,2,3],xmm1[4,5,6,7]
744 ; SSE41-NEXT: retq
1005 ; SSE41-LABEL: combine_nested_undef_test15:
1006 ; SSE41: # BB#0:
1007 ; SSE41-NEXT: pshufd {{.*#+}} xmm1 = xmm1[0,0,1,1]
1008 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[3,1,0,1]
1009 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5,6,7]
1010 ; SSE41-NEXT: retq
1045 ; SSE41-LABEL: combine_nested_undef_test16:
1046 ; SSE41: # BB#0:
1047 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[2,3,0,1]
1048 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5],xmm1[6,7]
1049 ; SSE41-NEXT: retq
1080 ; SSE41-LABEL: combine_nested_undef_test17:
1081 ; SSE41: # BB#0:
1082 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3,4,5,6,7]
1083 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[3,1,0,1]
1084 ; SSE41-NEXT: retq
1130 ; SSE41-LABEL: combine_nested_undef_test19:
1131 ; SSE41: # BB#0:
1132 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5,6,7]
1133 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[1,0,0,0]
1134 ; SSE41-NEXT: retq
1167 ; SSE41-LABEL: combine_nested_undef_test20:
1168 ; SSE41: # BB#0:
1169 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1,2,3],xmm0[4,5,6,7]
1170 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,3,0]
1171 ; SSE41-NEXT: retq
1202 ; SSE41-LABEL: combine_nested_undef_test21:
1203 ; SSE41: # BB#0:
1204 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3],xmm1[4,5,6,7]
1205 ; SSE41-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,1,0,1]
1206 ; SSE41-NEXT: retq
1371 ; SSE41-LABEL: combine_test2:
1372 ; SSE41: # BB#0:
1373 ; SSE41-NEXT: blendps {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3]
1374 ; SSE41-NEXT: retq
1429 ; SSE41-LABEL: combine_test5:
1430 ; SSE41: # BB#0:
1431 ; SSE41-NEXT: blendps {{.*#+}} xmm0 = xmm1[0],xmm0[1],xmm1[2,3]
1432 ; SSE41-NEXT: retq
1471 ; SSE41-LABEL: combine_test7:
1472 ; SSE41: # BB#0:
1473 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3,4,5,6,7]
1474 ; SSE41-NEXT: retq
1534 ; SSE41-LABEL: combine_test10:
1535 ; SSE41: # BB#0:
1536 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3],xmm1[4,5,6,7]
1537 ; SSE41-NEXT: retq
1575 ; SSE41-LABEL: combine_test12:
1576 ; SSE41: # BB#0:
1577 ; SSE41-NEXT: blendps {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3]
1578 ; SSE41-NEXT: retq
1632 ; SSE41-LABEL: combine_test15:
1633 ; SSE41: # BB#0:
1634 ; SSE41-NEXT: blendps {{.*#+}} xmm0 = xmm1[0],xmm0[1],xmm1[2,3]
1635 ; SSE41-NEXT: retq
1668 ; SSE41-LABEL: combine_test17:
1669 ; SSE41: # BB#0:
1670 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3,4,5,6,7]
1671 ; SSE41-NEXT: retq
1730 ; SSE41-LABEL: combine_test20:
1731 ; SSE41: # BB#0:
1732 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3],xmm1[4,5,6,7]
1733 ; SSE41-NEXT: retq
1831 ; SSE41-LABEL: combine_test2b:
1832 ; SSE41: # BB#0:
1833 ; SSE41-NEXT: movddup {{.*#+}} xmm0 = xmm1[0,0]
1834 ; SSE41-NEXT: retq
1858 ; SSE41-LABEL: combine_test3b:
1859 ; SSE41: # BB#0:
1860 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm0[0],xmm1[1]
1861 ; SSE41-NEXT: shufps {{.*#+}} xmm0 = xmm0[0,3,2,3]
1862 ; SSE41-NEXT: retq
1916 ; SSE41-LABEL: combine_test1c:
1917 ; SSE41: # BB#0:
1918 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
1919 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
1920 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm1[0,1],xmm0[2,3,4,5,6,7]
1921 ; SSE41-NEXT: retq
1966 ; SSE41-LABEL: combine_test2c:
1967 ; SSE41: # BB#0:
1968 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
1969 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
1970 ; SSE41-NEXT: punpcklqdq {{.*#+}} xmm0 = xmm0[0],xmm1[0]
1971 ; SSE41-NEXT: retq
2009 ; SSE41-LABEL: combine_test3c:
2010 ; SSE41: # BB#0:
2011 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
2012 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
2013 ; SSE41-NEXT: punpckhqdq {{.*#+}} xmm0 = xmm0[1],xmm1[1]
2014 ; SSE41-NEXT: retq
2054 ; SSE41-LABEL: combine_test4c:
2055 ; SSE41: # BB#0:
2056 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm1 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
2057 ; SSE41-NEXT: pmovzxbd {{.*#+}} xmm0 = mem[0],zero,zero,zero,mem[1],zero,zero,zero,mem[2],zero,z…
2058 ; SSE41-NEXT: pblendw {{.*#+}} xmm0 = xmm0[0,1],xmm1[2,3],xmm0[4,5,6,7]
2059 ; SSE41-NEXT: retq
2122 ; SSE41-LABEL: combine_blend_01:
2123 ; SSE41: # BB#0:
2124 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm1[0],xmm0[1]
2125 ; SSE41-NEXT: retq
2151 ; SSE41-LABEL: combine_blend_02:
2152 ; SSE41: # BB#0:
2153 ; SSE41-NEXT: blendps {{.*#+}} xmm0 = xmm1[0],xmm0[1],xmm1[2],xmm0[3]
2154 ; SSE41-NEXT: retq
2178 ; SSE41-LABEL: combine_blend_123:
2179 ; SSE41: # BB#0:
2180 ; SSE41-NEXT: blendps {{.*#+}} xmm0 = xmm0[0],xmm1[1,2,3]
2181 ; SSE41-NEXT: retq
2256 ; SSE41-LABEL: combine_undef_input_test1:
2257 ; SSE41: # BB#0:
2258 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm1[0],xmm0[1]
2259 ; SSE41-NEXT: retq
2329 ; SSE41-LABEL: combine_undef_input_test5:
2330 ; SSE41: # BB#0:
2331 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm0[0],xmm1[1]
2332 ; SSE41-NEXT: retq
2367 ; SSE41-LABEL: combine_undef_input_test7:
2368 ; SSE41: # BB#0:
2369 ; SSE41-NEXT: movddup {{.*#+}} xmm0 = xmm0[0,0]
2370 ; SSE41-NEXT: retq
2392 ; SSE41-LABEL: combine_undef_input_test8:
2393 ; SSE41: # BB#0:
2394 ; SSE41-NEXT: movddup {{.*#+}} xmm0 = xmm0[0,0]
2395 ; SSE41-NEXT: retq
2441 ; SSE41-LABEL: combine_undef_input_test11:
2442 ; SSE41: # BB#0:
2443 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm1[0],xmm0[1]
2444 ; SSE41-NEXT: retq
2514 ; SSE41-LABEL: combine_undef_input_test15:
2515 ; SSE41: # BB#0:
2516 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm0[0],xmm1[1]
2517 ; SSE41-NEXT: retq
2558 ; SSE41-LABEL: combine_undef_input_test17:
2559 ; SSE41: # BB#0:
2560 ; SSE41-NEXT: movddup {{.*#+}} xmm0 = xmm0[0,0]
2561 ; SSE41-NEXT: retq
2583 ; SSE41-LABEL: combine_undef_input_test18:
2584 ; SSE41: # BB#0:
2585 ; SSE41-NEXT: movddup {{.*#+}} xmm0 = xmm0[0,0]
2586 ; SSE41-NEXT: retq
2696 ; SSE41-LABEL: combine_insertps1:
2697 ; SSE41: # BB#0:
2698 ; SSE41-NEXT: insertps {{.*#+}} xmm0 = xmm1[2],xmm0[1,2,3]
2699 ; SSE41-NEXT: retq
2726 ; SSE41-LABEL: combine_insertps2:
2727 ; SSE41: # BB#0:
2728 ; SSE41-NEXT: insertps {{.*#+}} xmm0 = xmm0[0],xmm1[2],xmm0[2,3]
2729 ; SSE41-NEXT: retq
2754 ; SSE41-LABEL: combine_insertps3:
2755 ; SSE41: # BB#0:
2756 ; SSE41-NEXT: insertps {{.*#+}} xmm0 = xmm0[0,1],xmm1[0],xmm0[3]
2757 ; SSE41-NEXT: retq
2782 ; SSE41-LABEL: combine_insertps4:
2783 ; SSE41: # BB#0:
2784 ; SSE41-NEXT: insertps {{.*#+}} xmm0 = xmm0[0,1,2],xmm1[0]
2785 ; SSE41-NEXT: retq
2841 ; SSE41-LABEL: PR22390:
2842 ; SSE41: # BB#0: # %entry
2843 ; SSE41-NEXT: shufps {{.*#+}} xmm0 = xmm0[3,0,1,2]
2844 ; SSE41-NEXT: blendps {{.*#+}} xmm1 = xmm1[0],xmm0[1,2,3]
2845 ; SSE41-NEXT: addps %xmm1, %xmm0
2846 ; SSE41-NEXT: retq
2880 ; SSE41-LABEL: PR22412:
2881 ; SSE41: # BB#0: # %entry
2882 ; SSE41-NEXT: blendpd {{.*#+}} xmm0 = xmm0[0],xmm2[1]
2883 ; SSE41-NEXT: movapd %xmm0, %xmm1
2884 ; SSE41-NEXT: shufps {{.*#+}} xmm1 = xmm1[1,0],xmm3[3,2]
2885 ; SSE41-NEXT: shufps {{.*#+}} xmm3 = xmm3[1,0],xmm0[3,2]
2886 ; SSE41-NEXT: movaps %xmm1, %xmm0
2887 ; SSE41-NEXT: movaps %xmm3, %xmm1
2888 ; SSE41-NEXT: retq