[PATCH] D60852: Fix for bug 41512: lower INSERT_VECTOR_ELT(ZeroVec, 0, Elt) to SCALAR_TO_VECTOR(Elt) for all SSE flavors
Serge Preis via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 18 21:32:08 PDT 2019
Serge_Preis marked an inline comment as done.
Serge_Preis added inline comments.
================
Comment at: llvm/test/CodeGen/X86/insertelement-zero.ll:633-635
; AVX-NEXT: vblendps {{.*#+}} xmm0 = xmm0[0],xmm2[1,2,3]
; AVX-NEXT: vblendps {{.*#+}} xmm1 = xmm1[0],xmm2[1,2,3]
; AVX-NEXT: vinsertf128 $1, %xmm1, %ymm0, %ymm0
----------------
spatel wrote:
> I looked at this case, and it is intentional because there's a comment in X86InstrSSE.td:
> "these were changed to use blends because blends have better throughput on sandybridge and haswell"
My change itself doen't dictate any particular instruction selection. it just makes more obvious to ISel the idiom it deals with. If some instructions are better than others for 1st element intialization they should be naturaly used after the fix. So I'm just happy to see confirmation here.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D60852/new/
https://reviews.llvm.org/D60852
More information about the llvm-commits
mailing list