================
@@ -34,14 +56,93 @@ def VScaleOp : RegisterOperand<VMV0> {
let DecoderMethod = "decodeVMaskReg";
}
+class VTileLoadBase<bits<2> mop, dag ins, string opcodestr, string argstr>
+ : RVInst<(outs VR:$vd),
+ ins, opcodestr, argstr, [], InstFormatR> {
+ bits<5> vd;
+ bits<5> rs1;
+ bits<5> rs2;
+ bit vm;
+ bits<3> vlambda;
+
+ let Inst{31-29} = vlambda;
+ let Inst{28} = 1;
+ let Inst{27-26} = mop;
+ let Inst{25} = vm;
+ let Inst{24-20} = rs2;
+ let Inst{19-15} = rs1;
+ let Inst{14-12} = 0b111;
+ let Inst{11-7} = vd;
+ let Inst{6-0} = OPC_LOAD_FP.Value;
+
+ let mayLoad = true;
+ let mayStore = false;
+ let hasSideEffects = false;
+ let Uses = [VL, VTYPE];
+ let VMConstraint = true;
+ let UseNamedOperandTable = true;
+}
+
+class VTileStoreBase<bits<2> mop, dag ins, string opcodestr, string argstr>
+ : RVInst<(outs),
+ ins, opcodestr, argstr, [], InstFormatR> {
----------------
imkiva wrote:
Thanks, fixed~
https://github.com/llvm/llvm-project/pull/198229
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits