[RISCV] Share tablegen classes for F, D, and Zfh. Other simplifications. NFC
authorCraig Topper <craig.topper@sifive.com>
Fri, 10 Dec 2021 17:27:13 +0000 (09:27 -0800)
committerCraig Topper <craig.topper@sifive.com>
Fri, 10 Dec 2021 17:35:51 +0000 (09:35 -0800)
commit80ed2f6b3659d7d9449517a0eb552f361ce80e15
treecc586c281f3aad477e4f86acd21134efedb7aaaf
parentc7c84b90879f0252c58894f70d2a19fc4c01cf64
[RISCV] Share tablegen classes for F, D, and Zfh. Other simplifications. NFC

By adding the register class and funct as template parameters we
can share the classes with all 3 extensions.

I've used "let SchedRW =" to avoid repeating scheduler classes on
multiple lines where we previously inherited from the Sched class.

A subsequent patch will add mayRaiseFPException and FRM dependencies.
Reducing the number of classes means less repeating for those changes.

This of course conflicts with the Zfinx patch D93298.

Reviewed By: achieveartificialintelligence

Differential Revision: https://reviews.llvm.org/D115469
llvm/lib/Target/RISCV/RISCVInstrInfoD.td
llvm/lib/Target/RISCV/RISCVInstrInfoF.td
llvm/lib/Target/RISCV/RISCVInstrInfoZfh.td