This is an archive of the discontinued LLVM Phabricator instance.

[VPlan] Don't collect some values as scalars
AbandonedPublic

Authored by TKaipeng on Mar 15 2022, 5:41 AM.

Details

Reviewers
None
Summary

Value used outside the loop is to be associated with a ReplicateRecipe which is non-uniform. If VF is scalable, it isn't a legal recipe type.
Therefore, don't mark this kind of value as scalar after vectorization.

Diff Detail

Event Timeline

TKaipeng created this revision.Mar 15 2022, 5:41 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 15 2022, 5:41 AM
Herald added a subscriber: hiraditya. · View Herald Transcript
TKaipeng requested review of this revision.Mar 15 2022, 5:41 AM
Herald added a project: Restricted Project. · View Herald TranscriptMar 15 2022, 5:41 AM
TKaipeng retitled this revision from [LoopVectorize] Don't collect some values as scalars to [VPlan] Don't collect some values as scalars.Mar 15 2022, 5:42 AM

Hi @TKaipeng, this looks like a duplicate of D121452.

@sdesmalen Thank you! And that is a better way to avoid the problem.

TKaipeng abandoned this revision.Mar 15 2022, 6:43 PM