[PATCH] D13252: [InstCombine] Teach how to convert SSSE3/AVX2 byte shuffles to builtin shuffles if the shuffle mask is constant.
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 29 10:20:33 PDT 2015
RKSimon added a comment.
Query about AVX2 instruction.
================
Comment at: lib/Transforms/InstCombine/InstCombineCalls.cpp:1184
@@ +1183,3 @@
+ // lane only. Indices for the high 128-bit lane can be deduced from
+ // the indices in the lower half of the resulting shuffle mask.
+ for (unsigned I = 0; I < 16; ++I) {
----------------
I don't think this is correct - AVX2 pshufb doesn't reuse the lower 128-bit lane it uses its own lane but with 'local' index values (0-15 representing the 16-31 of a shufflevector),
https://software.intel.com/sites/landingpage/IntrinsicsGuide/#text=shuffle_epi8&expand=4700
http://reviews.llvm.org/D13252
More information about the llvm-commits
mailing list