[PATCH] D90562: [VPlan] Use VPDef for VPInterleaveRecipe.

Florian Hahn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Dec 16 01:14:20 PST 2020


fhahn added inline comments.


================
Comment at: llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:7753
 
+  auto skipDeadInterleaveMembers =
+      [&DeadInterleaveGroupMembers](Instruction *I) {
----------------
gilr wrote:
> Could you elaborate on why applying the interleave groups is moved back to VPlan creation?
The current handling (create recipes for each instruction and remove & replace them with a single interleave recipe later) seems like a work-around and now that we can manage the VPValues for the members of the interleave groups directly, I think it makes sense to directly create them along with the other recipes.

Unfortunately this requires a bit more extra logic to skip interleave groups members when recording the sink-after points, which is not great. But I think this will go away in the future, if we start by building an initial VPlan and gradually lower to specialized recipes.

But I can also keep the VPInterleaveRecipe creation at the original position, if you prefer.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D90562/new/

https://reviews.llvm.org/D90562



More information about the llvm-commits mailing list