This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Rename WriteShift/ReadShift scheduler classes to WriteShiftImm/ReadShiftImm. Move variable shifts from WriteIALU/ReadIALU to new WriteShiftReg/ReadShiftReg.
ClosedPublic

Authored by craig.topper on Mar 18 2021, 5:43 PM.

Details

Summary

Previously only immediate shifts were in WriteShift. Register
shifts were grouped with IALU. Seems likely that immediate shifts
would be as fast or faster than register shifts. And that immediate
shifts wouldn't be any faster than IALU. So if any deserved to be in
their own group it should be register shifts not immediate shifts.

Rather than try to flip them let's just add more granularity
and give each kind their own class. I've used new names for both to
make them unambiguous and to force any downstream implementations to
be forced to put correct information in their scheduler models.

Diff Detail

Event Timeline

craig.topper created this revision.Mar 18 2021, 5:43 PM
craig.topper requested review of this revision.Mar 18 2021, 5:43 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 18 2021, 5:43 PM
Herald added a subscriber: MaskRay. · View Herald Transcript
evandro accepted this revision.Mar 18 2021, 6:19 PM
This revision is now accepted and ready to land.Mar 18 2021, 6:19 PM