[PATCH] D80220: [VPlan] Add & use VPValue for VPWidenGEPRecipe operands (NFC).

Gil Rapaport via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 16 02:43:41 PDT 2020


gilr accepted this revision.
gilr added a comment.
This revision is now accepted and ready to land.
Herald added a subscriber: bmahjour.

In D80220#2078460 <https://reviews.llvm.org/D80220#2078460>, @fhahn wrote:

> In D80220#2078222 <https://reviews.llvm.org/D80220#2078222>, @gilr wrote:
>
> >
>
>
> We still use GEP->clone() for the case where the GEP is loop invariant. It would probably be best to do that in a follow-on patch. Same for perhaps storing InBounds directly in the recipe as well.


Right, clone() should be replaced by generating the GEP from scratch as done in the non-invariant case. Also, now that we have VPOperands it would be better to expose an VPValue::isInvariant() / VPlan::isInvariant(VPValue &) API instead of recording that datum in WidenGEP & WidenSelect recipes, facilitating RAUW. Such API could initially query the underlying IR.
Other properties already captured by an underlying value such as inBounds and nsw are probably worth a separate discussion.
All these can indeed be follow-ups.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D80220





More information about the llvm-commits mailing list