[PATCH] D48725: [SLP] Vectorize bit-parallel operations with SWAR.

Clement Courbet via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Jun 29 08:39:06 PDT 2018


courbet added a comment.

In https://reviews.llvm.org/D48725#1147898, @ABataev wrote:

> 1. Do all targets support this kind of transformation? Are they aware of transformation of operations with small vectors into operations on GPR?


For this change I've restricted the range of operations to load/store and bitcast, which I presume is guaranteed to work efficiently on all targets. Then if the target can shuffle efficiently, the SLP vectorizer might decide to also do shuffles.

> 2. You need to update the cost model for this kind of transformation.

Thanks. This is my first change to the SLP vectorizer, do you have any pointers to documentation on how to do this ?

> 3. I think this should not the part of SLPVectorizer, looks like it is part of InstCombiner.

Would InstCombine be able to also do stuff like shuffles ? I like how we can leverage all that's been done in SLP to get all that functionality for free.


Repository:
  rL LLVM

https://reviews.llvm.org/D48725





More information about the llvm-commits mailing list