[PATCH] D136730: [RISCV][CodeGen] Account for LMUL for Vector Integer Arithmetic Instructions

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Nov 1 20:02:50 PDT 2022


craig.topper added inline comments.


================
Comment at: llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td:2394
 multiclass VPseudoVALU_VV_VX_VI<Operand ImmType = simm5, string Constraint = ""> {
-  defm "" : VPseudoBinaryV_VV<Constraint>,
-            Sched<[WriteVIALUV, ReadVIALUV, ReadVIALUV, ReadVMask]>;
-  defm "" : VPseudoBinaryV_VX<Constraint>,
-            Sched<[WriteVIALUX, ReadVIALUV, ReadVIALUX, ReadVMask]>;
-  defm "" : VPseudoBinaryV_VI<ImmType, Constraint>,
-            Sched<[WriteVIALUI, ReadVIALUV, ReadVMask]>;
+foreach m = MxList in {
+    defvar mx = m.MX;
----------------
I think this needs to be indented 2 spaces


================
Comment at: llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td:2538
 multiclass VPseudoVALU_VX_VI<Operand ImmType = simm5> {
-  defm "" : VPseudoBinaryV_VX,
-            Sched<[WriteVIALUX, ReadVIALUV, ReadVIALUX, ReadVMask]>;
-  defm "" : VPseudoBinaryV_VI<ImmType>,
-            Sched<[WriteVIALUI, ReadVIALUV, ReadVMask]>;
+foreach m = MxList in {
+    defvar mx = m.MX;
----------------
Indent


================
Comment at: llvm/lib/Target/RISCV/RISCVScheduleV.td:117
 // 11.5. Vector Bitwise Logical Instructions
-def WriteVIALUV       : SchedWrite;
-def WriteVIALUX       : SchedWrite;
-def WriteVIALUI       : SchedWrite;
+defm "" : LMULSchedWrites<"WriteVIALUV">;
+defm "" : LMULSchedWrites<"WriteVIALUX">;
----------------
Is the empty string needed?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D136730/new/

https://reviews.llvm.org/D136730



More information about the llvm-commits mailing list