[llvm] [RISCV] Lower PARTIAL_REDUCE_[S/U]MLA via zvqdotq (PR #140950)
Philip Reames via llvm-commits
llvm-commits at lists.llvm.org
Wed May 21 14:12:10 PDT 2025
================
@@ -1571,6 +1571,14 @@ RISCVTargetLowering::RISCVTargetLowering(const TargetMachine &TM,
setIndexedStoreAction(ISD::POST_INC, MVT::i32, Legal);
}
+ if (Subtarget.hasStdExtZvqdotq()) {
+ setPartialReduceMLAAction(MVT::nxv1i32, MVT::nxv4i8, Custom);
----------------
preames wrote:
I guarded this block, but FYI, partial_reduce_umla doesn't appear to work with zve32x at all.
$./llc -mtriple=riscv64 -mattr=+zve32x -verify-machineinstrs < test/CodeGen/RISCV/rvv/zvqdotq-sdnode.ll
WidenVectorResult #0: t13: nxv1i32 = partial_reduce_umla t10, t8, t12
LLVM ERROR: Do not know how to widen the result of this operator!
https://github.com/llvm/llvm-project/pull/140950
More information about the llvm-commits
mailing list