[llvm] [AVX-512] make vpternlogq more aggressive for longer chains of bitmanipulations (PR #189971)
Phoebe Wang via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 7 01:09:18 PDT 2026
================
@@ -3295,12 +3295,7 @@ define <16 x i1> @test_v16i1_select_chain(<16 x i1> %a0, <16 x i1> %a1, <16 x i1
;
; SKX-LABEL: test_v16i1_select_chain:
; SKX: ## %bb.0:
-; SKX-NEXT: vmovdqa %xmm0, %xmm3
-; SKX-NEXT: vpternlogq {{.*#+}} xmm3 = xmm3 & ~(xmm2 & xmm1)
-; SKX-NEXT: vpternlogq {{.*#+}} xmm3 = xmm3 & xmm0 & xmm1
-; SKX-NEXT: vpternlogq {{.*#+}} xmm3 = xmm3 & xmm0 & xmm1
-; SKX-NEXT: vpternlogq {{.*#+}} xmm3 = xmm1 & (xmm3 ^ xmm1)
-; SKX-NEXT: vpternlogq {{.*#+}} xmm0 = xmm0 & xmm2 & xmm3
+; SKX-NEXT: vpternlogq {{.*#+}} xmm0 = xmm0 & xmm2 & xmm1
----------------
phoebewang wrote:
Impressing, seems a good candidate for middle end opt: https://alive2.llvm.org/ce/z/r-zVJL
https://github.com/llvm/llvm-project/pull/189971
More information about the llvm-commits
mailing list