[PATCH] D146683: [DAG] Conservatively check the VSELECT Operation Action in tryToFoldExtendSelectLoad
LuoYuanke via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 23 05:41:40 PDT 2023
LuoYuanke added inline comments.
================
Comment at: llvm/test/CodeGen/X86/select-ext.ll:97
; CHECK: # %bb.0:
-; CHECK-NEXT: psllq $63, %xmm0
-; CHECK-NEXT: pmovzxdq {{.*#+}} xmm1 = mem[0],zero,mem[1],zero
-; CHECK-NEXT: pmovzxdq {{.*#+}} xmm2 = mem[0],zero,mem[1],zero
-; CHECK-NEXT: blendvpd %xmm0, %xmm2, %xmm1
-; CHECK-NEXT: movapd %xmm1, %xmm0
+; CHECK-NEXT: pshufd {{.*#+}} xmm0 = xmm0[0,2,2,3]
+; CHECK-NEXT: pslld $31, %xmm0
----------------
It seems generate more code. Probably you need check "Level <= AfterLegalizeVectorOps" in tryToFoldExtendSelectLoad(), so that there is more combine opportunity.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D146683/new/
https://reviews.llvm.org/D146683
More information about the llvm-commits
mailing list