[llvm] [AArch64][SVE] Add dot product lowering for PARTIAL_REDUCE_MLA node (PR #130933)
Nicholas Guy via llvm-commits
llvm-commits at lists.llvm.org
Thu Apr 3 06:19:44 PDT 2025
================
@@ -3658,6 +3697,13 @@ class TargetLoweringBase {
/// up the MVT::VALUETYPE_SIZE value to the next multiple of 8.
uint32_t CondCodeActions[ISD::SETCC_INVALID][(MVT::VALUETYPE_SIZE + 7) / 8];
+ using PartialReduceActionTypes =
+ std::pair<MVT::SimpleValueType, MVT::SimpleValueType>;
+ /// For each result type and input type for the ISD::PARTIAL_REDUCE_U/SMLA
+ /// nodes, keep a LegalizeAction which indicates how instruction selection
+ /// should deal with this operation.
+ DenseMap<PartialReduceActionTypes, LegalizeAction> PartialReduceMLAActions;
----------------
NickGuy-Arm wrote:
Using a regular array, as pointed out by @MacDue, results in 56k entries of mostly Expand. Using a map reduces that memory footprint significantly and allows us to specify a default value other than Legal.
https://github.com/llvm/llvm-project/pull/130933
More information about the llvm-commits
mailing list