[PATCH] D140811: [DAGCombiner][X86] `visitVECTOR_SHUFFLE()`: splats with a single non-undef element are not splats

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jan 3 17:14:55 PST 2023


lebedev.ri added inline comments.


================
Comment at: llvm/test/CodeGen/X86/haddsub-undef.ll:471
+; SSE-SLOW-NEXT:    movapd %xmm0, %xmm1
+; SSE-SLOW-NEXT:    unpckhpd {{.*#+}} xmm1 = xmm1[1],xmm0[1]
+; SSE-SLOW-NEXT:    addpd %xmm1, %xmm0
----------------
lebedev.ri wrote:
> @RKSimon these no longer match because previously we had shuffle-fadd-shuffle,
> so `isHorizontalBinOp()` called `shouldUseHorizontalOp()` with `IsSingleSource=false`,
> and now we have shuffle-fadd, and `shouldUseHorizontalOp()` is called with `IsSingleSource=false`.
> So this really doesn't look like a regression to me.
and now we have shuffle-fadd, and `shouldUseHorizontalOp()` is called with `IsSingleSource=true`, of course that is


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D140811/new/

https://reviews.llvm.org/D140811



More information about the llvm-commits mailing list