[PATCH] D13252: [InstCombine] Teach how to convert SSSE3/AVX2 byte shuffles to builtin shuffles if the shuffle mask is constant.
Andrea Di Biagio via llvm-commits
llvm-commits at lists.llvm.org
Tue Sep 29 10:26:21 PDT 2015
andreadb added inline comments.
================
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) {
----------------
RKSimon wrote:
> 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
Right. This is wrong.
I will upload a new patch.
Thanks Simon.
http://reviews.llvm.org/D13252
More information about the llvm-commits
mailing list