@@ -218,7 +218,7 @@ define <64 x i8> @splatvar_shift_v64i8(<64 x i8> %a, <64 x i8> %b) nounwind {
218218; AVX512BW-NEXT: vpsrlw %xmm1, %xmm3, %xmm1
219219; AVX512BW-NEXT: vpsrlw $8, %xmm1, %xmm1
220220; AVX512BW-NEXT: vpbroadcastb %xmm1, %zmm1
221- ; AVX512BW-NEXT: vpternlogq $108, %zmm0, % zmm2, % zmm1
221+ ; AVX512BW-NEXT: vpternlogq {{.*#+}} zmm1 = zmm2 ^ ( zmm1 & zmm0)
222222; AVX512BW-NEXT: vpsubb %zmm2, %zmm1, %zmm0
223223; AVX512BW-NEXT: retq
224224 %splat = shufflevector <64 x i8 > %b , <64 x i8 > poison, <64 x i32 > zeroinitializer
@@ -307,7 +307,7 @@ define <64 x i8> @splatvar_modulo_shift_v64i8(<64 x i8> %a, <64 x i8> %b) nounwi
307307; AVX512BW-NEXT: vpsrlw %xmm1, %xmm3, %xmm1
308308; AVX512BW-NEXT: vpsrlw $8, %xmm1, %xmm1
309309; AVX512BW-NEXT: vpbroadcastb %xmm1, %zmm1
310- ; AVX512BW-NEXT: vpternlogq $108, %zmm0, % zmm2, % zmm1
310+ ; AVX512BW-NEXT: vpternlogq {{.*#+}} zmm1 = zmm2 ^ ( zmm1 & zmm0)
311311; AVX512BW-NEXT: vpsubb %zmm2, %zmm1, %zmm0
312312; AVX512BW-NEXT: retq
313313 %mod = and <64 x i8 > %b , <i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 >
@@ -365,7 +365,7 @@ define <32 x i16> @constant_shift_v32i16_pairs(<32 x i16> %a) nounwind {
365365; AVX512DQ: # %bb.0:
366366; AVX512DQ-NEXT: vpsrlvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %zmm0, %zmm0
367367; AVX512DQ-NEXT: vmovdqa64 {{.*#+}} zmm1 = [128,128,128,128,64,64,64,64,32,32,32,32,16,16,16,16,8,8,8,8,4,4,4,4,2,2,2,2,1,1,1,1]
368- ; AVX512DQ-NEXT: vpternlogq $108, {{\.?LCPI[0-9]+_[0-9]+}}(%rip), % zmm1, % zmm0
368+ ; AVX512DQ-NEXT: vpternlogq {{.*#+}} zmm0 = zmm1 ^ ( zmm0 & mem)
369369; AVX512DQ-NEXT: vpsubw %ymm1, %ymm0, %ymm1
370370; AVX512DQ-NEXT: vextracti64x4 $1, %zmm0, %ymm0
371371; AVX512DQ-NEXT: vpsubw {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %ymm0, %ymm0
@@ -450,7 +450,7 @@ define <64 x i8> @constant_shift_v64i8_pairs(<64 x i8> %a) nounwind {
450450; AVX512BW: # %bb.0:
451451; AVX512BW-NEXT: vpsrlvw {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %zmm0, %zmm0
452452; AVX512BW-NEXT: vmovdqa64 {{.*#+}} zmm1 = [2,2,2,2,32,32,32,32,2,2,8,8,8,8,4,4,2,2,64,64,16,16,32,32,8,8,1,1,4,4,128,128,1,1,64,64,128,128,1,1,8,8,128,128,64,64,16,16,64,64,8,8,8,8,16,16,2,2,2,2,4,4,2,2]
453- ; AVX512BW-NEXT: vpternlogq $108, {{\.?LCPI[0-9]+_[0-9]+}}(%rip), % zmm1, % zmm0
453+ ; AVX512BW-NEXT: vpternlogq {{.*#+}} zmm0 = zmm1 ^ ( zmm0 & mem)
454454; AVX512BW-NEXT: vpsubb %zmm1, %zmm0, %zmm0
455455; AVX512BW-NEXT: retq
456456 %shift = ashr <64 x i8 > %a , <i8 6 , i8 6 , i8 6 , i8 6 , i8 2 , i8 2 , i8 2 , i8 2 , i8 6 , i8 6 , i8 4 , i8 4 , i8 4 , i8 4 , i8 5 , i8 5 , i8 6 , i8 6 , i8 1 , i8 1 , i8 3 , i8 3 , i8 2 , i8 2 , i8 4 , i8 4 , i8 7 , i8 7 , i8 5 , i8 5 , i8 0 , i8 0 , i8 7 , i8 7 , i8 1 , i8 1 , i8 0 , i8 0 , i8 7 , i8 7 , i8 4 , i8 4 , i8 0 , i8 0 , i8 1 , i8 1 , i8 3 , i8 3 , i8 1 , i8 1 , i8 4 , i8 4 , i8 4 , i8 4 , i8 3 , i8 3 , i8 6 , i8 6 , i8 6 , i8 6 , i8 5 , i8 5 , i8 6 , i8 6 >
@@ -462,7 +462,7 @@ define <64 x i8> @constant_shift_v64i8_quads(<64 x i8> %a) nounwind {
462462; AVX512DQ: # %bb.0:
463463; AVX512DQ-NEXT: vpsrlvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %zmm0, %zmm0
464464; AVX512DQ-NEXT: vmovdqa64 {{.*#+}} zmm1 = [16,16,16,16,4,4,4,4,32,32,32,32,1,1,1,1,1,1,1,1,4,4,4,4,1,1,1,1,4,4,4,4,8,8,8,8,16,16,16,16,16,16,16,16,2,2,2,2,64,64,64,64,4,4,4,4,32,32,32,32,128,128,128,128]
465- ; AVX512DQ-NEXT: vpternlogq $108, {{\.?LCPI[0-9]+_[0-9]+}}(%rip), % zmm1, % zmm0
465+ ; AVX512DQ-NEXT: vpternlogq {{.*#+}} zmm0 = zmm1 ^ ( zmm0 & mem)
466466; AVX512DQ-NEXT: vpsubb %ymm1, %ymm0, %ymm1
467467; AVX512DQ-NEXT: vextracti64x4 $1, %zmm0, %ymm0
468468; AVX512DQ-NEXT: vpsubb {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %ymm0, %ymm0
@@ -473,7 +473,7 @@ define <64 x i8> @constant_shift_v64i8_quads(<64 x i8> %a) nounwind {
473473; AVX512BW: # %bb.0:
474474; AVX512BW-NEXT: vpsrlvd {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %zmm0, %zmm0
475475; AVX512BW-NEXT: vmovdqa64 {{.*#+}} zmm1 = [16,16,16,16,4,4,4,4,32,32,32,32,1,1,1,1,1,1,1,1,4,4,4,4,1,1,1,1,4,4,4,4,8,8,8,8,16,16,16,16,16,16,16,16,2,2,2,2,64,64,64,64,4,4,4,4,32,32,32,32,128,128,128,128]
476- ; AVX512BW-NEXT: vpternlogq $108, {{\.?LCPI[0-9]+_[0-9]+}}(%rip), % zmm1, % zmm0
476+ ; AVX512BW-NEXT: vpternlogq {{.*#+}} zmm0 = zmm1 ^ ( zmm0 & mem)
477477; AVX512BW-NEXT: vpsubb %zmm1, %zmm0, %zmm0
478478; AVX512BW-NEXT: retq
479479 %shift = ashr <64 x i8 > %a , <i8 3 , i8 3 , i8 3 , i8 3 , i8 5 , i8 5 , i8 5 , i8 5 , i8 2 , i8 2 , i8 2 , i8 2 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 7 , i8 5 , i8 5 , i8 5 , i8 5 , i8 7 , i8 7 , i8 7 , i8 7 , i8 5 , i8 5 , i8 5 , i8 5 , i8 4 , i8 4 , i8 4 , i8 4 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 6 , i8 6 , i8 6 , i8 6 , i8 1 , i8 1 , i8 1 , i8 1 , i8 5 , i8 5 , i8 5 , i8 5 , i8 2 , i8 2 , i8 2 , i8 2 , i8 0 , i8 0 , i8 0 , i8 0 >
@@ -540,7 +540,7 @@ define <64 x i8> @splatconstant_shift_v64i8(<64 x i8> %a) nounwind {
540540; AVX512BW: # %bb.0:
541541; AVX512BW-NEXT: vpsrlw $3, %zmm0, %zmm0
542542; AVX512BW-NEXT: vpbroadcastb {{.*#+}} zmm1 = [16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16,16]
543- ; AVX512BW-NEXT: vpternlogd $108, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, % zmm1, % zmm0
543+ ; AVX512BW-NEXT: vpternlogd {{.*#+}} zmm0 = zmm1 ^ ( zmm0 & mem)
544544; AVX512BW-NEXT: vpsubb %zmm1, %zmm0, %zmm0
545545; AVX512BW-NEXT: retq
546546 %shift = ashr <64 x i8 > %a , <i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 , i8 3 >
0 commit comments