@@ -1194,7 +1194,7 @@ define <32 x i8> @splatvar_ashr_v32i8(<32 x i8> %a, <32 x i8> %b) nounwind {
11941194; GFNIAVX512VL-NEXT: vpsrlw %xmm1, %xmm3, %xmm1
11951195; GFNIAVX512VL-NEXT: vpsrlw $8, %xmm1, %xmm1
11961196; GFNIAVX512VL-NEXT: vpbroadcastb %xmm1, %ymm1
1197- ; GFNIAVX512VL-NEXT: vpternlogq $108, %ymm0, % ymm2, % ymm1
1197+ ; GFNIAVX512VL-NEXT: vpternlogq {{.*#+}} ymm1 = ymm2 ^ ( ymm1 & ymm0)
11981198; GFNIAVX512VL-NEXT: vpsubb %ymm2, %ymm1, %ymm0
11991199; GFNIAVX512VL-NEXT: retq
12001200;
@@ -1263,7 +1263,7 @@ define <32 x i8> @constant_shl_v32i8(<32 x i8> %a) nounwind {
12631263; GFNIAVX512VL-NEXT: vpmaddubsw {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %ymm0, %ymm1 # [1,0,4,0,16,0,64,0,128,0,32,0,8,0,2,0,1,0,4,0,16,0,64,0,128,0,32,0,8,0,2,0]
12641264; GFNIAVX512VL-NEXT: vpmaddubsw {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %ymm0, %ymm0 # [0,2,0,8,0,32,0,128,0,64,0,16,0,4,0,1,0,2,0,8,0,32,0,128,0,64,0,16,0,4,0,1]
12651265; GFNIAVX512VL-NEXT: vpsllw $8, %ymm0, %ymm0
1266- ; GFNIAVX512VL-NEXT: vpternlogd $248, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm1, % ymm0
1266+ ; GFNIAVX512VL-NEXT: vpternlogd {{.*#+}} ymm0 = ymm0 | (ymm1 & mem)
12671267; GFNIAVX512VL-NEXT: retq
12681268;
12691269; GFNIAVX512BW-LABEL: constant_shl_v32i8:
@@ -2515,10 +2515,10 @@ define <64 x i8> @splatvar_ashr_v64i8(<64 x i8> %a, <64 x i8> %b) nounwind {
25152515; GFNIAVX512VL-NEXT: vpsrlw %xmm1, %xmm4, %xmm4
25162516; GFNIAVX512VL-NEXT: vpsrlw $8, %xmm4, %xmm4
25172517; GFNIAVX512VL-NEXT: vpbroadcastb %xmm4, %ymm4
2518- ; GFNIAVX512VL-NEXT: vpternlogq $108, %ymm4, % ymm3, % ymm2
2518+ ; GFNIAVX512VL-NEXT: vpternlogq {{.*#+}} ymm2 = ymm3 ^ ( ymm2 & ymm4)
25192519; GFNIAVX512VL-NEXT: vpsubb %ymm3, %ymm2, %ymm2
25202520; GFNIAVX512VL-NEXT: vpsrlw %xmm1, %ymm0, %ymm0
2521- ; GFNIAVX512VL-NEXT: vpternlogq $108, %ymm4, % ymm3, % ymm0
2521+ ; GFNIAVX512VL-NEXT: vpternlogq {{.*#+}} ymm0 = ymm3 ^ ( ymm0 & ymm4)
25222522; GFNIAVX512VL-NEXT: vpsubb %ymm3, %ymm0, %ymm0
25232523; GFNIAVX512VL-NEXT: vinserti64x4 $1, %ymm2, %zmm0, %zmm0
25242524; GFNIAVX512VL-NEXT: retq
@@ -2533,7 +2533,7 @@ define <64 x i8> @splatvar_ashr_v64i8(<64 x i8> %a, <64 x i8> %b) nounwind {
25332533; GFNIAVX512BW-NEXT: vpsrlw %xmm1, %xmm3, %xmm1
25342534; GFNIAVX512BW-NEXT: vpsrlw $8, %xmm1, %xmm1
25352535; GFNIAVX512BW-NEXT: vpbroadcastb %xmm1, %zmm1
2536- ; GFNIAVX512BW-NEXT: vpternlogq $108, %zmm0, % zmm2, % zmm1
2536+ ; GFNIAVX512BW-NEXT: vpternlogq {{.*#+}} zmm1 = zmm2 ^ ( zmm1 & zmm0)
25372537; GFNIAVX512BW-NEXT: vpsubb %zmm2, %zmm1, %zmm0
25382538; GFNIAVX512BW-NEXT: retq
25392539 %splat = shufflevector <64 x i8 > %b , <64 x i8 > undef , <64 x i32 > zeroinitializer
@@ -2638,15 +2638,15 @@ define <64 x i8> @constant_shl_v64i8(<64 x i8> %a) nounwind {
26382638; GFNIAVX512VL-NEXT: vpmaddubsw %ymm3, %ymm1, %ymm1
26392639; GFNIAVX512VL-NEXT: vpsllw $8, %ymm1, %ymm1
26402640; GFNIAVX512VL-NEXT: vinserti64x4 $1, %ymm1, %zmm0, %zmm0
2641- ; GFNIAVX512VL-NEXT: vpternlogd $248, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm2, % zmm0
2641+ ; GFNIAVX512VL-NEXT: vpternlogd {{.*#+}} zmm0 = zmm0 | (zmm2 & mem)
26422642; GFNIAVX512VL-NEXT: retq
26432643;
26442644; GFNIAVX512BW-LABEL: constant_shl_v64i8:
26452645; GFNIAVX512BW: # %bb.0:
26462646; GFNIAVX512BW-NEXT: vpmaddubsw {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %zmm0, %zmm1 # [1,0,4,0,16,0,64,0,128,0,32,0,8,0,2,0,1,0,4,0,16,0,64,0,128,0,32,0,8,0,2,0,1,0,4,0,16,0,64,0,128,0,32,0,8,0,2,0,1,0,4,0,16,0,64,0,128,0,32,0,8,0,2,0]
26472647; GFNIAVX512BW-NEXT: vpmaddubsw {{\.?LCPI[0-9]+_[0-9]+}}(%rip), %zmm0, %zmm0 # [0,2,0,8,0,32,0,128,0,64,0,16,0,4,0,1,0,2,0,8,0,32,0,128,0,64,0,16,0,4,0,1,0,2,0,8,0,32,0,128,0,64,0,16,0,4,0,1,0,2,0,8,0,32,0,128,0,64,0,16,0,4,0,1]
26482648; GFNIAVX512BW-NEXT: vpsllw $8, %zmm0, %zmm0
2649- ; GFNIAVX512BW-NEXT: vpternlogd $248, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm1, % zmm0
2649+ ; GFNIAVX512BW-NEXT: vpternlogd {{.*#+}} zmm0 = zmm0 | (zmm1 & mem)
26502650; GFNIAVX512BW-NEXT: retq
26512651 %shift = shl <64 x i8 > %a , <i8 0 , i8 1 , i8 2 , i8 3 , i8 4 , i8 5 , i8 6 , i8 7 , i8 7 , i8 6 , i8 5 , i8 4 , i8 3 , i8 2 , i8 1 , i8 0 , i8 0 , i8 1 , i8 2 , i8 3 , i8 4 , i8 5 , i8 6 , i8 7 , i8 7 , i8 6 , i8 5 , i8 4 , i8 3 , i8 2 , i8 1 , i8 0 , i8 0 , i8 1 , i8 2 , i8 3 , i8 4 , i8 5 , i8 6 , i8 7 , i8 7 , i8 6 , i8 5 , i8 4 , i8 3 , i8 2 , i8 1 , i8 0 , i8 0 , i8 1 , i8 2 , i8 3 , i8 4 , i8 5 , i8 6 , i8 7 , i8 7 , i8 6 , i8 5 , i8 4 , i8 3 , i8 2 , i8 1 , i8 0 >
26522652 ret <64 x i8 > %shift
0 commit comments