[llvm] [SelectionDAG][AArch64] Add dot product lowering in NEON for PARTIAL_REDUCE_*MLA ISD nodes (PR #140075)
Benjamin Maxwell via llvm-commits
llvm-commits at lists.llvm.org
Thu May 15 09:00:27 PDT 2025
================
@@ -27569,6 +27581,14 @@ void AArch64TargetLowering::ReplaceNodeResults(
if (SDValue Res = LowerVECTOR_COMPRESS(SDValue(N, 0), DAG))
Results.push_back(Res);
return;
+ case ISD::PARTIAL_REDUCE_UMLA:
+ case ISD::PARTIAL_REDUCE_SMLA: {
+ if (SDValue Res = LowerPARTIAL_REDUCE_MLA(SDValue(N, 0), DAG))
+ Results.push_back(Res);
+ else
+ Results.push_back(expandPartialReduceMLA(N, DAG));
----------------
MacDue wrote:
No test failures from removing this expansion (and also seems not to be done for other nodes). IIRC a custom lowering just means the node is assumed to be legal.
```suggestion
if (SDValue Res = LowerPARTIAL_REDUCE_MLA(SDValue(N, 0), DAG))
Results.push_back(Res);
```
https://github.com/llvm/llvm-project/pull/140075
More information about the llvm-commits
mailing list