[llvm] [clang] Recommit [RISCV] Update the interface of sifive vqmaccqoq (#74284) (PR #75768)
Craig Topper via llvm-commits
llvm-commits at lists.llvm.org
Wed Dec 20 21:37:53 PST 2023
================
@@ -349,16 +349,24 @@ multiclass VPseudoSiFiveVMACC<string mx, VReg vd_type, VReg vs2_type,
: VPseudoTernaryNoMaskWithPolicy<vd_type, V_M1.vrclass, vs2_type, Constraint>;
}
-multiclass VPseudoSiFiveVQMACC<string Constraint = ""> {
+multiclass VPseudoSiFiveVQMACCDOD<string Constraint = ""> {
foreach m = MxListVF8 in
let VLMul = m.value in
defm NAME : VPseudoSiFiveVMACC<m.MX, m.vrclass, m.vrclass, Constraint>;
}
+multiclass VPseudoSiFiveVQMACCQOQ<string Constraint = ""> {
+ foreach i = [0, 1, 2, 3] in
+ let VLMul = MxListVF4[i].value in
+ defm NAME : VPseudoSiFiveVMACC<MxListVF8[i].MX, MxListVF8[i].vrclass,
+ MxListVF4[i].vrclass, Constraint>;
+}
+
multiclass VPseudoSiFiveVFWMACC<string Constraint = ""> {
- foreach m = MxListFW in
- let VLMul = m.value in
- defm NAME : VPseudoSiFiveVMACC<m.MX, m.wvrclass, m.vrclass, Constraint>;
+ foreach i = [0, 1, 2, 3, 4] in
+ let VLMul = MxListVF2[i].value in
+ defm NAME : VPseudoSiFiveVMACC<MxListVF4[i].MX, MxListFW[i].wvrclass,
+ MxListFW[i].vrclass, Constraint>;
----------------
topperc wrote:
Is MxListVF2[i] and MxListFW[i] the same?
https://github.com/llvm/llvm-project/pull/75768
More information about the llvm-commits
mailing list