This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Teach RISCVGatherScatterLowering to handle more complex recurrence start values.
ClosedPublic

Authored by craig.topper on Dec 17 2021, 11:36 AM.

Details

Summary

Previously we only recognized strided loads/store when the initial
value for the phi was a strided constant vector.

This patch extends the support to a strided_constant added to a
splatted value. The rewritten loop will add the splat value to the
first element of the strided constant vector to use as the scalar
start value. The stride is unaffected.

Diff Detail

Event Timeline

craig.topper created this revision.Dec 17 2021, 11:36 AM
craig.topper requested review of this revision.Dec 17 2021, 11:36 AM
Herald added a project: Restricted Project. · View Herald TranscriptDec 17 2021, 11:36 AM
Herald added a subscriber: MaskRay. · View Herald Transcript
This revision is now accepted and ready to land.Jan 4 2022, 8:55 AM
This revision was landed with ongoing or failed builds.Jan 4 2022, 10:13 AM
This revision was automatically updated to reflect the committed changes.