[PATCH] D104254: [VPlan] Support sinking recipes with uniform users outside sink target.

Ayal Zaks via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Sep 22 03:59:34 PDT 2021


Ayal added a comment.



In D104254#3001233 <https://reviews.llvm.org/D104254#3001233>, @fhahn wrote:

> In D104254#3000311 <https://reviews.llvm.org/D104254#3000311>, @Ayal wrote:
>
>> Ship it!
>> Does this turn the original sinkScalarOperands to be "all dead", and should therefore be retired?
>> May be good to point out that this replacement does involve a (slight) functional change, due to the discrepancy in handling lane zero.
>
> I think there's one more case we need to tackle before: IV's with vector & scalar users. Currently there will be a single 'widen-induction' recipe, which generates the vector & scalar values of the IV, so we cannot sink the scalar part in the VPlan transform yet.

Ah, right. It would be good to follow-up with a patch that splits 'widen-induction' into two independent single-def recipes, thereby allowing to sink one w/o the other, and hopefully retire the original sinkScalarOperands. Such a refactoring could potentially simplify that recipe's code itself, regardless of sinkScalarOperands.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D104254



More information about the llvm-commits mailing list