Lines Matching refs:AVX512CD
9 …tr=+avx512cd,-avx512vl | FileCheck %s --check-prefix=ALL --check-prefix=AVX --check-prefix=AVX512CD
203 ; AVX512CD-LABEL: testv2i64u:
204 ; AVX512CD: # BB#0:
205 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
206 ; AVX512CD-NEXT: vpsubq %xmm0, %xmm1, %xmm1
207 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
208 ; AVX512CD-NEXT: vplzcntq %zmm0, %zmm0
209 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm1 = [63,63]
210 ; AVX512CD-NEXT: vpsubq %xmm0, %xmm1, %xmm0
211 ; AVX512CD-NEXT: retq
410 ; AVX512CD-LABEL: testv4i32:
411 ; AVX512CD: # BB#0:
412 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
413 ; AVX512CD-NEXT: vpsubd %xmm0, %xmm1, %xmm2
414 ; AVX512CD-NEXT: vpand %xmm2, %xmm0, %xmm0
415 ; AVX512CD-NEXT: vpbroadcastd {{.*}}(%rip), %xmm2
416 ; AVX512CD-NEXT: vpsubd %xmm2, %xmm0, %xmm0
417 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm2 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15]
418 ; AVX512CD-NEXT: vpand %xmm2, %xmm0, %xmm3
419 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm4 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4]
420 ; AVX512CD-NEXT: vpshufb %xmm3, %xmm4, %xmm3
421 ; AVX512CD-NEXT: vpsrlw $4, %xmm0, %xmm0
422 ; AVX512CD-NEXT: vpand %xmm2, %xmm0, %xmm0
423 ; AVX512CD-NEXT: vpshufb %xmm0, %xmm4, %xmm0
424 ; AVX512CD-NEXT: vpaddb %xmm3, %xmm0, %xmm0
425 ; AVX512CD-NEXT: vpunpckhdq {{.*#+}} xmm2 = xmm0[2],xmm1[2],xmm0[3],xmm1[3]
426 ; AVX512CD-NEXT: vpsadbw %xmm1, %xmm2, %xmm2
427 ; AVX512CD-NEXT: vpunpckldq {{.*#+}} xmm0 = xmm0[0],xmm1[0],xmm0[1],xmm1[1]
428 ; AVX512CD-NEXT: vpsadbw %xmm1, %xmm0, %xmm0
429 ; AVX512CD-NEXT: vpackuswb %xmm2, %xmm0, %xmm0
430 ; AVX512CD-NEXT: retq
622 ; AVX512CD-LABEL: testv4i32u:
623 ; AVX512CD: # BB#0:
624 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
625 ; AVX512CD-NEXT: vpsubd %xmm0, %xmm1, %xmm1
626 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
627 ; AVX512CD-NEXT: vplzcntd %zmm0, %zmm0
628 ; AVX512CD-NEXT: vpbroadcastd {{.*}}(%rip), %xmm1
629 ; AVX512CD-NEXT: vpsubd %xmm0, %xmm1, %xmm0
630 ; AVX512CD-NEXT: retq
814 ; AVX512CD-LABEL: testv8i16:
815 ; AVX512CD: # BB#0:
816 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
817 ; AVX512CD-NEXT: vpsubw %xmm0, %xmm1, %xmm1
818 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
819 ; AVX512CD-NEXT: vpsubw {{.*}}(%rip), %xmm0, %xmm0
820 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm1 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15]
821 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm2
822 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm3 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4]
823 ; AVX512CD-NEXT: vpshufb %xmm2, %xmm3, %xmm2
824 ; AVX512CD-NEXT: vpsrlw $4, %xmm0, %xmm0
825 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
826 ; AVX512CD-NEXT: vpshufb %xmm0, %xmm3, %xmm0
827 ; AVX512CD-NEXT: vpaddb %xmm2, %xmm0, %xmm0
828 ; AVX512CD-NEXT: vpsllw $8, %xmm0, %xmm1
829 ; AVX512CD-NEXT: vpaddb %xmm0, %xmm1, %xmm0
830 ; AVX512CD-NEXT: vpsrlw $8, %xmm0, %xmm0
831 ; AVX512CD-NEXT: retq
1012 ; AVX512CD-LABEL: testv8i16u:
1013 ; AVX512CD: # BB#0:
1014 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
1015 ; AVX512CD-NEXT: vpsubw %xmm0, %xmm1, %xmm1
1016 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
1017 ; AVX512CD-NEXT: vpsubw {{.*}}(%rip), %xmm0, %xmm0
1018 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm1 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15]
1019 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm2
1020 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm3 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4]
1021 ; AVX512CD-NEXT: vpshufb %xmm2, %xmm3, %xmm2
1022 ; AVX512CD-NEXT: vpsrlw $4, %xmm0, %xmm0
1023 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
1024 ; AVX512CD-NEXT: vpshufb %xmm0, %xmm3, %xmm0
1025 ; AVX512CD-NEXT: vpaddb %xmm2, %xmm0, %xmm0
1026 ; AVX512CD-NEXT: vpsllw $8, %xmm0, %xmm1
1027 ; AVX512CD-NEXT: vpaddb %xmm0, %xmm1, %xmm0
1028 ; AVX512CD-NEXT: vpsrlw $8, %xmm0, %xmm0
1029 ; AVX512CD-NEXT: retq
1185 ; AVX512CD-LABEL: testv16i8:
1186 ; AVX512CD: # BB#0:
1187 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
1188 ; AVX512CD-NEXT: vpsubb %xmm0, %xmm1, %xmm1
1189 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
1190 ; AVX512CD-NEXT: vpsubb {{.*}}(%rip), %xmm0, %xmm0
1191 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm1 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15]
1192 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm2
1193 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm3 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4]
1194 ; AVX512CD-NEXT: vpshufb %xmm2, %xmm3, %xmm2
1195 ; AVX512CD-NEXT: vpsrlw $4, %xmm0, %xmm0
1196 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
1197 ; AVX512CD-NEXT: vpshufb %xmm0, %xmm3, %xmm0
1198 ; AVX512CD-NEXT: vpaddb %xmm2, %xmm0, %xmm0
1199 ; AVX512CD-NEXT: retq
1351 ; AVX512CD-LABEL: testv16i8u:
1352 ; AVX512CD: # BB#0:
1353 ; AVX512CD-NEXT: vpxor %xmm1, %xmm1, %xmm1
1354 ; AVX512CD-NEXT: vpsubb %xmm0, %xmm1, %xmm1
1355 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
1356 ; AVX512CD-NEXT: vpsubb {{.*}}(%rip), %xmm0, %xmm0
1357 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm1 = [15,15,15,15,15,15,15,15,15,15,15,15,15,15,15,15]
1358 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm2
1359 ; AVX512CD-NEXT: vmovdqa {{.*#+}} xmm3 = [0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4]
1360 ; AVX512CD-NEXT: vpshufb %xmm2, %xmm3, %xmm2
1361 ; AVX512CD-NEXT: vpsrlw $4, %xmm0, %xmm0
1362 ; AVX512CD-NEXT: vpand %xmm1, %xmm0, %xmm0
1363 ; AVX512CD-NEXT: vpshufb %xmm0, %xmm3, %xmm0
1364 ; AVX512CD-NEXT: vpaddb %xmm2, %xmm0, %xmm0
1365 ; AVX512CD-NEXT: retq
1453 ; AVX512CD-LABEL: foldv4i32:
1454 ; AVX512CD: # BB#0:
1455 ; AVX512CD-NEXT: vmovaps {{.*#+}} xmm0 = [8,0,32,0]
1456 ; AVX512CD-NEXT: retq
1487 ; AVX512CD-LABEL: foldv4i32u:
1488 ; AVX512CD: # BB#0:
1489 ; AVX512CD-NEXT: vmovaps {{.*#+}} xmm0 = [8,0,32,0]
1490 ; AVX512CD-NEXT: retq
1521 ; AVX512CD-LABEL: foldv8i16:
1522 ; AVX512CD: # BB#0:
1523 ; AVX512CD-NEXT: vmovaps {{.*#+}} xmm0 = [8,0,16,0,16,0,3,3]
1524 ; AVX512CD-NEXT: retq
1555 ; AVX512CD-LABEL: foldv8i16u:
1556 ; AVX512CD: # BB#0:
1557 ; AVX512CD-NEXT: vmovaps {{.*#+}} xmm0 = [8,0,16,0,16,0,3,3]
1558 ; AVX512CD-NEXT: retq
1589 ; AVX512CD-LABEL: foldv16i8:
1590 ; AVX512CD: # BB#0:
1591 ; AVX512CD-NEXT: vmovaps {{.*#+}} xmm0 = [8,0,8,0,8,0,3,3,1,1,0,1,2,3,4,5]
1592 ; AVX512CD-NEXT: retq
1623 ; AVX512CD-LABEL: foldv16i8u:
1624 ; AVX512CD: # BB#0:
1625 ; AVX512CD-NEXT: vmovaps {{.*#+}} xmm0 = [8,0,8,0,8,0,3,3,1,1,0,1,2,3,4,5]
1626 ; AVX512CD-NEXT: retq