[clang] [llvm] [RISCV] Support Packed Multiply High Accumulate (PR #217591)

Craig Topper via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 20 10:14:28 PDT 2026


================
@@ -1887,6 +1891,18 @@ def riscv_mulhr : RVSDNode<"MULHR", SDTIntBinOp>;
 def riscv_mulhru : RVSDNode<"MULHRU", SDTIntBinOp>;
 def riscv_mulhrsu : RVSDNode<"MULHRSU", SDTIntBinOp>;
 
+def SDT_RISCVSameTernary : SDTypeProfile<1, 3, [SDTCisSameAs<0, 1>,
+                                                SDTCisSameAs<0, 2>,
+                                                SDTCisSameAs<0, 3>]>;
+
+// Packed multiply high accumulate operations.
+def riscv_pmhacc    : RVSDNode<"PMHACC", SDT_RISCVSameTernary>;
----------------
topperc wrote:

Please drop the P from these because they are also used for i32 scalars.

https://github.com/llvm/llvm-project/pull/217591


More information about the llvm-commits mailing list