[clang] [RISCV] Support Xsfvqmaccdod and Xsfvqmaccqoq extensions (PR #68295)
Shao-Ce SUN via cfe-commits
cfe-commits at lists.llvm.org
Tue Oct 10 20:20:40 PDT 2023
================
@@ -178,6 +178,19 @@ multiclass CustomSiFiveVCIX<string suffix, VCIXType type,
InTyRs1, 1>;
}
+let hasSideEffects = 0, mayLoad = 0, mayStore = 0 in {
+class CustomSiFiveVMACC<bits<6> funct6, RISCVVFormat opv, string opcodestr>
+ : RVInstVCCustom2<funct6{5-2}, opv.Value, (outs VR:$rd), (ins VR:$rs1, VR:$rs2),
+ opcodestr, "$rd, $rs1, $rs2"> {
+ let vm = 1;
+ let funct6_lo2 = funct6{1-0};
+}
+}
+
+multiclass CustomSiFiveVMACC<bits<6> funct6, RISCVVFormat opv, string opcodestr> {
+ def _VV : CustomSiFiveVMACC<funct6, opv, opcodestr>;
----------------
sunshaoce wrote:
I still think `4x8x4` or similar can be used instead of `VV`, but using `VV` can indeed avoid adding new multiclass.
https://github.com/llvm/llvm-project/pull/68295
More information about the cfe-commits
mailing list