[llvm] [AArch64] Enable fixed-length vector support for partial-reductions (PR #142032)

Nicholas Guy via llvm-commits llvm-commits at lists.llvm.org
Fri May 30 01:31:21 PDT 2025


================
@@ -1930,6 +1930,14 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
                          Custom);
       setOperationAction(ISD::EXPERIMENTAL_VECTOR_HISTOGRAM, MVT::nxv2i64,
                          Custom);
+
+      // Must be lowered to SVE instructions.
+      setPartialReduceMLAAction(MVT::v2i64, MVT::v4i32, Custom);
+      setPartialReduceMLAAction(MVT::v2i64, MVT::v8i16, Custom);
+      setPartialReduceMLAAction(MVT::v2i64, MVT::v16i8, Custom);
+      setPartialReduceMLAAction(MVT::v4i32, MVT::v8i16, Custom);
+      setPartialReduceMLAAction(MVT::v4i32, MVT::v16i8, Custom);
+      setPartialReduceMLAAction(MVT::v8i16, MVT::v16i8, Custom);
----------------
NickGuy-Arm wrote:

Should these be guarded behind `EnablePartialReduceNodes`?

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


More information about the llvm-commits mailing list