This is an archive of the discontinued LLVM Phabricator instance.

[RISCV] Add scheduling for Zfa instructions
ClosedPublic

Authored by joshua-arch1 on Apr 18 2023, 11:33 PM.

Details

Summary

Try to add instruction scheduling for Zfa extension

Diff Detail

Event Timeline

joshua-arch1 created this revision.Apr 18 2023, 11:33 PM
Herald added a project: Restricted Project. · View Herald TranscriptApr 18 2023, 11:33 PM
joshua-arch1 requested review of this revision.Apr 18 2023, 11:34 PM
craig.topper added inline comments.Apr 19 2023, 12:09 AM
llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
89

Reads are supposed to map to input register operands. There's no input register here.

97

This is f32->f32 why should it use the F64ToF32 sched class? Should probably add new classes.

joshua-arch1 marked an inline comment as done.
joshua-arch1 marked an inline comment as done.
craig.topper added inline comments.Apr 19 2023, 7:11 PM
llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td
89

I'd add a new class for FLI. It's not really a move from integer to FP. WriteFMovI32ToF32 is used for moving a GPR to an FPR which is pretty different than FLI.

joshua-arch1 marked an inline comment as done.
This revision is now accepted and ready to land.Apr 19 2023, 8:43 PM
This revision was landed with ongoing or failed builds.Apr 19 2023, 10:51 PM
This revision was automatically updated to reflect the committed changes.