[PATCH] D46827: [LV] Add VPInstruction to VPRecipe transformation.

Diego Caballero via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue May 15 11:58:17 PDT 2018


dcaballe added a comment.

In https://reviews.llvm.org/D46827#1099761, @fhahn wrote:

> The only problem is that the recipe generation depends on the cost model and we  probably have to duplicate some code from the inner loop vectorizer in the VPlan native path, until we gradually replace them by VPlan implementations. I think that would give us a stable starting point (the VPlan native path should pass all existing inner loop vectorizer tests) and would help us to work towards VPlan native inner loop vectorization at a steady pace. Does this make sense?


What is the main dependence with cost model? Maybe @hsaito could have it into account since he is looking at how to refactor the current cost model.
In any case, I don't think we have to replicate too much code if we start with something simple, even if we generate inefficient code at the beginning. For example, I don't think we initially need the `DeadInstructions` code, anything related to masking or uniformity (since only uniform branches are allowed in the native path for now) or interleave accesses. That should simplify a lot the VPInstruction2VPRecipe step.


https://reviews.llvm.org/D46827





More information about the llvm-commits mailing list