[PATCH] D84679: [VPlan] Disconnect VPValue and VPUser.

Dave Green via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Sep 21 15:33:14 PDT 2020


dmgreen added a comment.

> It would be great to have some concrete simple transforms using it as soon as its ready to make sure everything works well together, so if we could collaborate on that, that would be great!

Yeah, that sounds good. vmulh worked well I though, but I ended up making some fairly major modifications. And it did need to handle costing through vplan to really get anywhere. I will see if I can come up with anything for that too. I think just having a conversation about some of these design details is helpful in itself.

> Sorry, I did not mean that everything will be changed in this patch. But the linked patches gradually turn all the recipes into VPValues and update VPInterleaveRecipe to produce multiple values (and moves VPlan codegen to use that). So with the current patch alone, it is not yet possible to traverse def-use chains in recipes, but once the transition is done, it should be possible to traverse in both directions. (I think most recipes should already be ready to be turned into VPUser, let me check which ones are still missing)

Ok. It sounds like you envision eventually that all VPRecipeBases' are VPValues then. I was jumping to that goal in one step. I liked making is part of VPRecipeBases as it simplifies the inheritance a lot.

I will try to at least update VPReductionRecipe, and we can see where we can go from there.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D84679



More information about the llvm-commits mailing list