[PATCH] D123720: [VPlan] Replace use of needsVectorIV with VPlan user check.

Bardia Mahjour via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 28 15:38:40 PDT 2022


bmahjour added a comment.

In D123720#3616655 <https://reviews.llvm.org/D123720#3616655>, @fhahn wrote:

> In D123720#3605567 <https://reviews.llvm.org/D123720#3605567>, @bmahjour wrote:
>
>> The users of `WIDEN-INDUCTION` in the above recipe are the `FIRST-ORDER-RECURRENCE-PHI ir<%prev.011> = phi ir<0>, ir<%indvars15>` and `EMIT vp<%6> = first-order splice ir<%prev.011> ir<%indvars15>`. The first one is a `VPFirstOrderRecurrencePHIRecipe` and the second one is a `VPInstruction`, neither of which override  `usesScalars` to return true. It doesn't seem safe to make `useScalars` return true for these types of recipes, so perhaps we still need to check `IV->needsVectorIV()`?
>>
>> Note this is also related to rG85983ca42ec6102b1692d0451090cacd002c958f <https://reviews.llvm.org/rG85983ca42ec6102b1692d0451090cacd002c958f>, so simply reverting the above commit won't fix the case I quoted above.
>
> Thanks, I put up D128755 <https://reviews.llvm.org/D128755> to fix it by making sure that we replace all widen-inductions with scalar steps for plans with scalar VFs.

This is strange, but I'm still getting the same crash even when applying https://reviews.llvm.org/D128755. Looks like `Plan.hasVF(ElementCount::getFixed(1));` returns false for both vplans!


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D123720



More information about the llvm-commits mailing list