[llvm] [SelectionDAG][AArch64] Add dot product lowering in NEON for PARTIAL_REDUCE_*MLA ISD nodes (PR #140075)
Nicholas Guy via llvm-commits
llvm-commits at lists.llvm.org
Tue May 27 06:10:20 PDT 2025
================
@@ -1451,8 +1451,16 @@ AArch64TargetLowering::AArch64TargetLowering(const TargetMachine &TM,
for (MVT VT : { MVT::v32i8, MVT::v16i16, MVT::v8i32, MVT::v4i64 })
setOperationAction(ISD::ADD, VT, Custom);
// FADDP custom lowering
- for (MVT VT : { MVT::v16f16, MVT::v8f32, MVT::v4f64 })
+ for (MVT VT : {MVT::v16f16, MVT::v8f32, MVT::v4f64})
setOperationAction(ISD::FADD, VT, Custom);
+
+ if (EnablePartialReduceNodes && Subtarget->hasDotProd()) {
+ setPartialReduceMLAAction(MVT::v2i64, MVT::v8i16, Legal);
----------------
NickGuy-Arm wrote:
Good catch on both fronts; Removed the `setPartialReduceMLAAction` call, and added the test for the additional coverage.
https://github.com/llvm/llvm-project/pull/140075
More information about the llvm-commits
mailing list