[all-commits] [llvm/llvm-project] ab9a81: [SLP]Try to emit canonical shuffle with undef oper...
Andrew V. Tischenko via All-commits
all-commits at lists.llvm.org
Tue Oct 4 08:17:53 PDT 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: ab9a81f736acfb927b0e0b4f0de8710fc2379f70
https://github.com/llvm/llvm-project/commit/ab9a81f736acfb927b0e0b4f0de8710fc2379f70
Author: Alexey Bataev <a.bataev at outlook.com>
Date: 2022-10-04 (Tue, 04 Oct 2022)
Changed paths:
M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
M llvm/test/Transforms/SLPVectorizer/X86/PR35865-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/PR35865.ll
M llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector-inseltpoison.ll
M llvm/test/Transforms/SLPVectorizer/X86/insert-element-build-vector.ll
Log Message:
-----------
[SLP]Try to emit canonical shuffle with undef operand.
In the canonical form of the shuffle the poison/undef operand is the
second operand, the patch tries to emit canonical form for partial
vectorization of the buildvector sequence.
Also, this patch starts emitting freeze instruction for shuffles with undef indices if the second shuffle operan is undef, not poison. It is an initial step to D93818, where undef mask element are treated as returning poison value.
Differential Revision: https://reviews.llvm.org/D134377
More information about the All-commits
mailing list