[llvm] [AArch64][SVE] Add dot product lowering for PARTIAL_REDUCE_MLA node (PR #130933)

Sander de Smalen via llvm-commits llvm-commits at lists.llvm.org
Wed Apr 16 04:15:05 PDT 2025


================
@@ -2712,6 +2737,20 @@ class TargetLoweringBase {
       setCondCodeAction(CCs, VT, Action);
   }
 
+  /// Indicate how a PARTIAL_REDUCE_U/SMLA node with Acc type AccVT and Input
+  /// type InputVT should be treated by the target. Either it's legal, needs to
+  /// be promoted to a larger size, needs to be expanded to some other code
+  /// sequence, or the target has a custom expander for it.
+  void setPartialReduceMLAAction(MVT AccVT, MVT InputVT,
+                                 LegalizeAction Action) {
+    assert(AccVT.isValid() && InputVT.isValid() &&
+           "setPartialReduceMLAAction types aren't valid");
+    auto AccI = AccVT.SimpleTy;
+    auto InputI = InputVT.SimpleTy;
+    PartialReduceActionTypes TypePair = std::make_pair(AccI, InputI);
----------------
sdesmalen-arm wrote:

```suggestion
    PartialReduceActionTypes TypePair = {AccVT.SimpleTy, InputVT.SimpleTy};
```

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


More information about the llvm-commits mailing list