[PATCH] D36113: [Loop Vectorize] Vectorize Loops with Backward Dependence
Hal Finkel via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Sun Sep 3 12:22:21 PDT 2017
hfinkel added a comment.
In https://reviews.llvm.org/D36113#850469, @DIVYA wrote:
> @hfinkel
> we tried adding this patch to loop vectorizer. but after reordering the instructions, canVectorizeMemory() needs to be called again to check if it can now be vectorized.However,we are unable to recompute loop-access-info once the instructions have been reordered.So it stills holds the old loop-access-info(before reordering) and does not vectorize. Is is there any way to recompute loop-access-info after reordering the instructions?
Do you want to recompute the LAA, or just update it to remove the dependencies that you'll later remove when you generate the vectorized code? Ideally, the reordering would just become part of the vectorizartion plan (the vplan infrastructure is now committed). Maybe you can update the instruction ordering in the MemDepChecker's ordering map, and then have it recompute dependencies with the new ordering. We could have a corresponding ordering map in the vectorization plan as well.
https://reviews.llvm.org/D36113
More information about the llvm-commits
mailing list