[PATCH] D70068: [SLP] Enhance SLPVectorizer to vectorize vector aggregate
Anton Afanasyev via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Nov 15 00:38:28 PST 2019
anton-afanasyev marked an inline comment as done.
anton-afanasyev added a comment.
In D70068#1746753 <https://reviews.llvm.org/D70068#1746753>, @vporpo wrote:
> I think we cannot handle several similar cases with aggregates inside aggregates (e.g., [2 x {float, float}], {{float, float}, {float, float}}). Perhaps we could address some of these cases too with this patch? Please see the tests below:
> ...
Good point! I've checked your case `{{float, float}, {float, float}}` with modified patch and it has been successfully vectorized. But this has required several hacks.
So may be a separate patch is better? One needs modify `canMapToVector()` and `findBuildAggregate()` to be recursive, merge `findBuildVector()` and `findBuildAggregate()` -- I can send it to review as a following patch, while fixing next, `Matrix22` part of https://llvm.org/pr42022 issue.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D70068/new/
https://reviews.llvm.org/D70068
More information about the llvm-commits
mailing list