[PATCH] D19501: Add LoadStoreVectorizer pass
Matt Arsenault via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 26 13:08:44 PDT 2016
arsenm added a comment.
In http://reviews.llvm.org/D19501#411411, @mzolotukhin wrote:
> Yeah, I can see the motivation, but my question was why not to add this capability to SLP instead of creating a completely new pass. This seems to be introducing a lot of code duplication.
>
> Michael
It's not exactly the same problem. It tries to vectorize stores, and then vectorize if the operations leading to the stores are vectorizable, and then the loads. This vectorizes loads and stores, ignores the intervening instructions (which there may be none of. Loads that are used to compute something that may not be stored should also be vectorized). The LoadStoreVectorizer should be able to produce vectors of arbitrary size and split them as requested by the target, even if the types are not legal.
http://reviews.llvm.org/D19501
More information about the llvm-commits
mailing list