@@ -447,12 +447,12 @@ define <32 x i8> @var_funnnel_v32i8(<32 x i8> %x, <32 x i8> %amt) nounwind {
447447; AVX512F: # %bb.0:
448448; AVX512F-NEXT: vpsllw $4, %ymm0, %ymm2
449449; AVX512F-NEXT: vpsrlw $4, %ymm0, %ymm3
450- ; AVX512F-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm2, % zmm3
450+ ; AVX512F-NEXT: vpternlogd {{.*#+}} zmm3 = zmm3 ^ (mem & ( zmm3 ^ zmm2))
451451; AVX512F-NEXT: vpsllw $5, %ymm1, %ymm1
452452; AVX512F-NEXT: vpblendvb %ymm1, %ymm3, %ymm0, %ymm0
453453; AVX512F-NEXT: vpsllw $2, %ymm0, %ymm2
454454; AVX512F-NEXT: vpsrlw $6, %ymm0, %ymm3
455- ; AVX512F-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm2, % zmm3
455+ ; AVX512F-NEXT: vpternlogd {{.*#+}} zmm3 = zmm3 ^ (mem & ( zmm3 ^ zmm2))
456456; AVX512F-NEXT: vpaddb %ymm1, %ymm1, %ymm1
457457; AVX512F-NEXT: vpblendvb %ymm1, %ymm3, %ymm0, %ymm0
458458; AVX512F-NEXT: vpsrlw $7, %ymm0, %ymm2
@@ -467,17 +467,17 @@ define <32 x i8> @var_funnnel_v32i8(<32 x i8> %x, <32 x i8> %amt) nounwind {
467467; AVX512VL: # %bb.0:
468468; AVX512VL-NEXT: vpsllw $4, %ymm0, %ymm2
469469; AVX512VL-NEXT: vpsrlw $4, %ymm0, %ymm3
470- ; AVX512VL-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm2, % ymm3
470+ ; AVX512VL-NEXT: vpternlogd {{.*#+}} ymm3 = ymm3 ^ (mem & ( ymm3 ^ ymm2))
471471; AVX512VL-NEXT: vpsllw $5, %ymm1, %ymm1
472472; AVX512VL-NEXT: vpblendvb %ymm1, %ymm3, %ymm0, %ymm0
473473; AVX512VL-NEXT: vpsllw $2, %ymm0, %ymm2
474474; AVX512VL-NEXT: vpsrlw $6, %ymm0, %ymm3
475- ; AVX512VL-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm2, % ymm3
475+ ; AVX512VL-NEXT: vpternlogd {{.*#+}} ymm3 = ymm3 ^ (mem & ( ymm3 ^ ymm2))
476476; AVX512VL-NEXT: vpaddb %ymm1, %ymm1, %ymm1
477477; AVX512VL-NEXT: vpblendvb %ymm1, %ymm3, %ymm0, %ymm0
478478; AVX512VL-NEXT: vpsrlw $7, %ymm0, %ymm2
479479; AVX512VL-NEXT: vpaddb %ymm0, %ymm0, %ymm3
480- ; AVX512VL-NEXT: vpternlogd $248, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm2, % ymm3
480+ ; AVX512VL-NEXT: vpternlogd {{.*#+}} ymm3 = ymm3 | (ymm2 & mem)
481481; AVX512VL-NEXT: vpaddb %ymm1, %ymm1, %ymm1
482482; AVX512VL-NEXT: vpblendvb %ymm1, %ymm3, %ymm0, %ymm0
483483; AVX512VL-NEXT: retq
@@ -1651,45 +1651,45 @@ define <32 x i8> @splatconstant_funnnel_v32i8(<32 x i8> %x) nounwind {
16511651; AVX512F: # %bb.0:
16521652; AVX512F-NEXT: vpsllw $4, %ymm0, %ymm1
16531653; AVX512F-NEXT: vpsrlw $4, %ymm0, %ymm0
1654- ; AVX512F-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm1, % zmm0
1654+ ; AVX512F-NEXT: vpternlogd {{.*#+}} zmm0 = zmm0 ^ (mem & ( zmm0 ^ zmm1))
16551655; AVX512F-NEXT: # kill: def $ymm0 killed $ymm0 killed $zmm0
16561656; AVX512F-NEXT: retq
16571657;
16581658; AVX512VL-LABEL: splatconstant_funnnel_v32i8:
16591659; AVX512VL: # %bb.0:
16601660; AVX512VL-NEXT: vpsllw $4, %ymm0, %ymm1
16611661; AVX512VL-NEXT: vpsrlw $4, %ymm0, %ymm0
1662- ; AVX512VL-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm1, % ymm0
1662+ ; AVX512VL-NEXT: vpternlogd {{.*#+}} ymm0 = ymm0 ^ (mem & ( ymm0 ^ ymm1))
16631663; AVX512VL-NEXT: retq
16641664;
16651665; AVX512BW-LABEL: splatconstant_funnnel_v32i8:
16661666; AVX512BW: # %bb.0:
16671667; AVX512BW-NEXT: vpsllw $4, %ymm0, %ymm1
16681668; AVX512BW-NEXT: vpsrlw $4, %ymm0, %ymm0
1669- ; AVX512BW-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm1, % zmm0
1669+ ; AVX512BW-NEXT: vpternlogd {{.*#+}} zmm0 = zmm0 ^ (mem & ( zmm0 ^ zmm1))
16701670; AVX512BW-NEXT: # kill: def $ymm0 killed $ymm0 killed $zmm0
16711671; AVX512BW-NEXT: retq
16721672;
16731673; AVX512VLBW-LABEL: splatconstant_funnnel_v32i8:
16741674; AVX512VLBW: # %bb.0:
16751675; AVX512VLBW-NEXT: vpsllw $4, %ymm0, %ymm1
16761676; AVX512VLBW-NEXT: vpsrlw $4, %ymm0, %ymm0
1677- ; AVX512VLBW-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm1, % ymm0
1677+ ; AVX512VLBW-NEXT: vpternlogd {{.*#+}} ymm0 = ymm0 ^ (mem & ( ymm0 ^ ymm1))
16781678; AVX512VLBW-NEXT: retq
16791679;
16801680; AVX512VBMI2-LABEL: splatconstant_funnnel_v32i8:
16811681; AVX512VBMI2: # %bb.0:
16821682; AVX512VBMI2-NEXT: vpsllw $4, %ymm0, %ymm1
16831683; AVX512VBMI2-NEXT: vpsrlw $4, %ymm0, %ymm0
1684- ; AVX512VBMI2-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to16}, %zmm1, % zmm0
1684+ ; AVX512VBMI2-NEXT: vpternlogd {{.*#+}} zmm0 = zmm0 ^ (mem & ( zmm0 ^ zmm1))
16851685; AVX512VBMI2-NEXT: # kill: def $ymm0 killed $ymm0 killed $zmm0
16861686; AVX512VBMI2-NEXT: retq
16871687;
16881688; AVX512VLVBMI2-LABEL: splatconstant_funnnel_v32i8:
16891689; AVX512VLVBMI2: # %bb.0:
16901690; AVX512VLVBMI2-NEXT: vpsllw $4, %ymm0, %ymm1
16911691; AVX512VLVBMI2-NEXT: vpsrlw $4, %ymm0, %ymm0
1692- ; AVX512VLVBMI2-NEXT: vpternlogd $216, {{\.?LCPI[0-9]+_[0-9]+}}(%rip){1to8}, %ymm1, % ymm0
1692+ ; AVX512VLVBMI2-NEXT: vpternlogd {{.*#+}} ymm0 = ymm0 ^ (mem & ( ymm0 ^ ymm1))
16931693; AVX512VLVBMI2-NEXT: retq
16941694;
16951695; XOPAVX1-LABEL: splatconstant_funnnel_v32i8:
0 commit comments