[PATCH] D107344: [SLP]Do not emit extra shuffle for insertelements vectorization.

Alexey Bataev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 3 05:49:45 PDT 2021


ABataev created this revision.
ABataev added reviewers: RKSimon, spatel, anton-afanasyev, dtemirbulatov.
Herald added a subscriber: hiraditya.
ABataev requested review of this revision.
Herald added a project: LLVM.

If the vectorized insertelements instructions form indentity subvector
(the subvector at the beginning of the long vector), it is just enough
to extend the vector itself, no need to generate inserting subvector
shuffle.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D107344

Files:
  llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
  llvm/test/Transforms/SLPVectorizer/AArch64/vectorize-free-extracts-inserts.ll
  llvm/test/Transforms/SLPVectorizer/X86/arith-fp-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/arith-fp.ll
  llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
  llvm/test/Transforms/SLPVectorizer/X86/load-merge-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/load-merge.ll
  llvm/test/Transforms/SLPVectorizer/X86/sitofp-inseltpoison.ll
  llvm/test/Transforms/SLPVectorizer/X86/sitofp.ll
  llvm/test/Transforms/SLPVectorizer/X86/value-bug-inseltpoison.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D107344.363709.patch
Type: text/x-patch
Size: 24108 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210803/1c973fac/attachment.bin>


More information about the llvm-commits mailing list