This is an archive of the discontinued LLVM Phabricator instance.

[LV] Move recurrence backedge fixup code to VPlan::execute (NFC).
ClosedPublic

Authored by fhahn on Jul 18 2021, 12:49 PM.

Details

Summary

As suggested in D105008, move the code that fixes up the backedge value
for first order recurrences to VPlan::execute.

Now all that remains in fixFirstOrderRecurrences is the code responsible
for creating the exit values in the middle block.

Diff Detail

Event Timeline

fhahn created this revision.Jul 18 2021, 12:49 PM
fhahn requested review of this revision.Jul 18 2021, 12:49 PM
Herald added a project: Restricted Project. · View Herald TranscriptJul 18 2021, 12:49 PM
Herald added a subscriber: vkmr. · View Herald Transcript
Ayal accepted this revision.Jul 18 2021, 11:18 PM

This looks good to me, with a couple of minor comments; thanks for following-up!

Would also be good to hook-up other header phis here as well.

llvm/lib/Transforms/Vectorize/VPlan.cpp
818

recurrenxes

Mention that they have a single part, regardless of UF?

Use VectorLatchBB?

This revision is now accepted and ready to land.Jul 18 2021, 11:18 PM
fhahn added inline comments.Jul 28 2021, 5:33 AM
llvm/lib/Transforms/Vectorize/VPlan.cpp
818

Thanks Ayal! I'll address those in the committed version.

This revision was landed with ongoing or failed builds.Jul 28 2021, 5:34 AM
This revision was automatically updated to reflect the committed changes.