We have multiple variations of InstrFormatI that pack different
fields into the upper 12 bits. The other 20 bits are all the same.
Add base class to capture this commonality and allow subclasses to
explicitly define Inst{31-20}.
Paths
| Differential D156589
[RISCV] Add a common base class for RVInstI variations. NFC ClosedPublic Authored by craig.topper on Jul 28 2023, 11:21 PM.
Details Summary We have multiple variations of InstrFormatI that pack different Add base class to capture this commonality and allow subclasses to
Diff Detail
Event Timeline
craig.topper added a child revision: D156590: [RISCV] Add a common base class for RVInstR variations. NFC.Jul 28 2023, 11:59 PM Comment Actions Thanks, I think this is overall better. I'd thought that having other top-level classes with explicit Inst{...} assignments might be easier to follow, but this patch demonstrates how that incentivises people to inherit from RVInstI and assign imm12 which isn't particularly easy to review. This revision is now accepted and ready to land.Jul 31 2023, 12:39 PM This revision was landed with ongoing or failed builds.Jul 31 2023, 1:08 PM Closed by commit rGf92dc1083285: [RISCV] Add a common base class for RVInstI variations. NFC (authored by craig.topper). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 545338 llvm/lib/Target/RISCV/RISCVInstrFormats.td
llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
llvm/lib/Target/RISCV/RISCVInstrInfoXTHead.td
llvm/lib/Target/RISCV/RISCVInstrInfoZk.td
|