[SLP]Improve shuffles cost estimation where possible.
authorAlexey Bataev <a.bataev@outlook.com>
Thu, 9 Dec 2021 18:34:08 +0000 (10:34 -0800)
committerAlexey Bataev <a.bataev@outlook.com>
Fri, 24 Jun 2022 16:28:01 +0000 (09:28 -0700)
commit2faacf61a50e7f23fd10927cbbb98c59799bfcd0
tree03cf8b4d1062b35d69e50c1e05b1600aa4910238
parent146f486ba337299b88df303a6f1cf99f60df03cc
[SLP]Improve shuffles cost estimation where possible.

Improved/fixed cost modeling for shuffles by providing masks, improved
cost model for non-identity insertelements.

Differential Revision: https://reviews.llvm.org/D115462
12 files changed:
llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
llvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions-inseltpoison.ll
llvm/test/Transforms/SLPVectorizer/AArch64/accelerate-vector-functions.ll
llvm/test/Transforms/SLPVectorizer/AArch64/buildvector-vectorize.ll [new file with mode: 0644]
llvm/test/Transforms/SLPVectorizer/AArch64/tsc-s116.ll
llvm/test/Transforms/SLPVectorizer/X86/PR39774.ll
llvm/test/Transforms/SLPVectorizer/X86/alternate-int-inseltpoison.ll
llvm/test/Transforms/SLPVectorizer/X86/alternate-int.ll
llvm/test/Transforms/SLPVectorizer/X86/load-merge-inseltpoison.ll
llvm/test/Transforms/SLPVectorizer/X86/load-merge.ll
llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
llvm/test/Transforms/SLPVectorizer/X86/resched.ll