This is an archive of the discontinued LLVM Phabricator instance.

[RISCV][Codegen] Account for LMUL in Vector floating-point instructions
ClosedPublic

Authored by michaelmaitland on Nov 4 2022, 8:16 AM.

Details

Summary

It is likley that subtargets act differently for vector floating-point instructions based on the LMUL. This patch creates seperate SchedRead, SchedWrite, WriteRes, ReadAdvance for each relevant LMUL.

Diff Detail

Event Timeline

michaelmaitland created this revision.Nov 4 2022, 8:16 AM
Herald added a project: Restricted Project. · View Herald TranscriptNov 4 2022, 8:16 AM
michaelmaitland requested review of this revision.Nov 4 2022, 8:16 AM
craig.topper added inline comments.Nov 4 2022, 9:23 AM
llvm/lib/Target/RISCV/RISCVScheduleV.td
16

It seems like a bug that we need both of these. I'm going to investigate.

craig.topper added inline comments.Nov 4 2022, 9:33 AM
llvm/lib/Target/RISCV/RISCVScheduleV.td
16

I think https://reviews.llvm.org/D137439 will remove the need for SchedMxListFPW

craig.topper added inline comments.Nov 15 2022, 6:48 PM
llvm/lib/Target/RISCV/RISCVInstrInfoV.td
527

Line up after the bracket on the previous line.

llvm/lib/Target/RISCV/RISCVScheduleV.td
16

this has been committed.

Remove SchedMxListFPW and fix formatting

michaelmaitland marked 4 inline comments as done.Nov 29 2022, 2:46 PM

Fix formatting that I missed in the last change

Remove git conflict tags

Remove WriteVFCvtFToFV since it was removed in another patch

More formatting fixes

craig.topper added inline comments.Nov 29 2022, 3:49 PM
llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
3194

Indent this further

michaelmaitland marked an inline comment as done.

Formatting and use MxListFW

llvm/lib/Target/RISCV/RISCVScheduleV.td
15

D138640 was landed, so I think we should define variants with postfix "FW" here.

michaelmaitland marked an inline comment as done.

Define Sched variants with postfix FW.

This revision is now accepted and ready to land.Nov 30 2022, 10:27 AM