@@ -1194,7 +1194,7 @@ define <32 x i8> @splatvar_ashr_v32i8(<32 x i8> %a, <32 x i8> %b) nounwind {
1194
1194
; GFNIAVX512VL-NEXT: vpsrlw %xmm1, %xmm3, %xmm1
1195
1195
; GFNIAVX512VL-NEXT: vpsrlw $8, %xmm1, %xmm1
1196
1196
; GFNIAVX512VL-NEXT: vpbroadcastb %xmm1, %ymm1
1197
- ; GFNIAVX512VL-NEXT: vpternlogq $108, %ymm0, % ymm2, % ymm1
1197
+ ; GFNIAVX512VL-NEXT: vpternlogq {{.*#+}} ymm1 = ymm2 ^ ( ymm1 & ymm0)
1198
1198
; GFNIAVX512VL-NEXT: vpsubb %ymm2, %ymm1, %ymm0
1199
1199
; GFNIAVX512VL-NEXT: retq
1200
1200
;
@@ -1263,7 +1263,7 @@ define <32 x i8> @constant_shl_v32i8(<32 x i8> %a) nounwind {
1263
1263
; 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]
1264
1264
; 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]
1265
1265
; 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)
1267
1267
; GFNIAVX512VL-NEXT: retq
1268
1268
;
1269
1269
; 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 {
2515
2515
; GFNIAVX512VL-NEXT: vpsrlw %xmm1, %xmm4, %xmm4
2516
2516
; GFNIAVX512VL-NEXT: vpsrlw $8, %xmm4, %xmm4
2517
2517
; GFNIAVX512VL-NEXT: vpbroadcastb %xmm4, %ymm4
2518
- ; GFNIAVX512VL-NEXT: vpternlogq $108, %ymm4, % ymm3, % ymm2
2518
+ ; GFNIAVX512VL-NEXT: vpternlogq {{.*#+}} ymm2 = ymm3 ^ ( ymm2 & ymm4)
2519
2519
; GFNIAVX512VL-NEXT: vpsubb %ymm3, %ymm2, %ymm2
2520
2520
; GFNIAVX512VL-NEXT: vpsrlw %xmm1, %ymm0, %ymm0
2521
- ; GFNIAVX512VL-NEXT: vpternlogq $108, %ymm4, % ymm3, % ymm0
2521
+ ; GFNIAVX512VL-NEXT: vpternlogq {{.*#+}} ymm0 = ymm3 ^ ( ymm0 & ymm4)
2522
2522
; GFNIAVX512VL-NEXT: vpsubb %ymm3, %ymm0, %ymm0
2523
2523
; GFNIAVX512VL-NEXT: vinserti64x4 $1, %ymm2, %zmm0, %zmm0
2524
2524
; GFNIAVX512VL-NEXT: retq
@@ -2533,7 +2533,7 @@ define <64 x i8> @splatvar_ashr_v64i8(<64 x i8> %a, <64 x i8> %b) nounwind {
2533
2533
; GFNIAVX512BW-NEXT: vpsrlw %xmm1, %xmm3, %xmm1
2534
2534
; GFNIAVX512BW-NEXT: vpsrlw $8, %xmm1, %xmm1
2535
2535
; GFNIAVX512BW-NEXT: vpbroadcastb %xmm1, %zmm1
2536
- ; GFNIAVX512BW-NEXT: vpternlogq $108, %zmm0, % zmm2, % zmm1
2536
+ ; GFNIAVX512BW-NEXT: vpternlogq {{.*#+}} zmm1 = zmm2 ^ ( zmm1 & zmm0)
2537
2537
; GFNIAVX512BW-NEXT: vpsubb %zmm2, %zmm1, %zmm0
2538
2538
; GFNIAVX512BW-NEXT: retq
2539
2539
%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 {
2638
2638
; GFNIAVX512VL-NEXT: vpmaddubsw %ymm3, %ymm1, %ymm1
2639
2639
; GFNIAVX512VL-NEXT: vpsllw $8, %ymm1, %ymm1
2640
2640
; 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)
2642
2642
; GFNIAVX512VL-NEXT: retq
2643
2643
;
2644
2644
; GFNIAVX512BW-LABEL: constant_shl_v64i8:
2645
2645
; GFNIAVX512BW: # %bb.0:
2646
2646
; 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]
2647
2647
; 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]
2648
2648
; 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)
2650
2650
; GFNIAVX512BW-NEXT: retq
2651
2651
%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 >
2652
2652
ret <64 x i8 > %shift
0 commit comments