[PATCH] D17858: [X86][SSE] Basic combining of unary target shuffles of binary target shuffles.
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Thu Mar 3 10:43:25 PST 2016
RKSimon created this revision.
RKSimon added reviewers: qcolombet, ab, spatel, andreadb.
RKSimon added a subscriber: llvm-commits.
RKSimon set the repository for this revision to rL LLVM.
This patch reorders the combining of target shuffle masks so that when a unary shuffle takes a binary shuffle as its input but only references one of its inputs it can correctly combine into a unary shuffle mask.
There is a lot more work before we can properly support binary target shuffle masks but this was an easy case to add support for.
Note: I have an additional followup patch that will deal with the failed combining of the shuffle_v2i64_bitcast_z123 AVX2 / AVX512 test cases (the blend with zero combining currently fails to combine 2 blend shuffles with the same blend mask).
Repository:
rL LLVM
http://reviews.llvm.org/D17858
Files:
lib/Target/X86/X86ISelLowering.cpp
test/CodeGen/X86/vector-shuffle-128-v2.ll
test/CodeGen/X86/vector-shuffle-combining-ssse3.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D17858.49756.patch
Type: text/x-patch
Size: 4696 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20160303/8ed0d6a3/attachment.bin>
More information about the llvm-commits
mailing list