[PATCH] D42657: [SLP] Take user instructions cost into consideration in insertelement vectorization.

Alexey Bataev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 29 12:40:15 PST 2018


ABataev created this revision.
ABataev added reviewers: RKSimon, spatel, hfinkel, mkuper.
Herald added a subscriber: javed.absar.

For better vectorization result we should take into consideration the
cost of the user insertelement instructions when we try to
vectorize sequences that build the whole vector. I.e. if we have the
following scalar code:

  <Scalar code>
  insertelement <ScalarCode>, ...

we should consider the cost of the last `insertelement ` instructions as
the cost of the scalar code.


Repository:
  rL LLVM

https://reviews.llvm.org/D42657

Files:
  include/llvm/Transforms/Vectorize/SLPVectorizer.h
  lib/Transforms/Vectorize/SLPVectorizer.cpp
  test/Transforms/SLPVectorizer/AArch64/gather-root.ll
  test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
  test/Transforms/SLPVectorizer/X86/jumbled-load-multiuse.ll
  test/Transforms/SLPVectorizer/X86/sign-extend.ll
  test/Transforms/SLPVectorizer/X86/value-bug.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D42657.131855.patch
Type: text/x-patch
Size: 29848 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180129/0fc5f415/attachment.bin>


More information about the llvm-commits mailing list