[llvm] [AArch64][CostModel] Add constraints on which partial reductions are (PR #163728)

Sander de Smalen via llvm-commits llvm-commits at lists.llvm.org
Mon Oct 20 01:14:42 PDT 2025


================
@@ -5721,6 +5721,38 @@ InstructionCost AArch64TTIImpl::getPartialReductionCost(
       return Cost;
   }
 
+  // FIXME:
+  // 1. Do cost modelling for USDOT.
+  // 2. Refactor the whole code here.
+  if (ST->isSVEorStreamingSVEAvailable() && !IsUSDot) {
+    if (AccumLT.second.getScalarType() == MVT::i32 &&
+        InputLT.second.getScalarType() == MVT::i16) {
+      // i16 -> i32 is supported in SVE 2.1
+      if (ST->hasSVE2p1())
+        return Cost;
----------------
sdesmalen-arm wrote:

This is implementing a new requirement that should be in a separate PR. Also, this should be added below line 5712 above.

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


More information about the llvm-commits mailing list