[llvm] [VPlan] Add VPExpressionRecipe, replacing extended reduction recipes. (PR #144281)
via llvm-commits
llvm-commits at lists.llvm.org
Tue Jul 1 13:34:05 PDT 2025
================
@@ -2563,30 +2563,182 @@ InstructionCost VPReductionRecipe::computeCost(ElementCount VF,
Ctx.CostKind);
}
-InstructionCost
-VPExtendedReductionRecipe::computeCost(ElementCount VF,
- VPCostContext &Ctx) const {
- unsigned Opcode = RecurrenceDescriptor::getOpcode(getRecurrenceKind());
+VPExpressionRecipe::VPExpressionRecipe(
+ ExpressionTypes ExpressionType,
+ ArrayRef<VPSingleDefRecipe *> ExpressionRecipes)
+ : VPSingleDefRecipe(VPDef::VPExpressionSC, {}, {}),
+ ExpressionRecipes(SetVector<VPSingleDefRecipe *>(
----------------
ayalz wrote:
This SetVector takes care of uniquifying the expression recipes? Worth a note. Perhaps worth having VPExpressionRecipe hold its expression recipes in a SetVector?
https://github.com/llvm/llvm-project/pull/144281
More information about the llvm-commits
mailing list