diff options
| author | Florian Hahn <flo@fhahn.com> | 2025-11-11 22:07:47 +0000 |
|---|---|---|
| committer | Florian Hahn <flo@fhahn.com> | 2025-11-11 22:07:48 +0000 |
| commit | 519cf3c2b8f25768916d97650f148a66db0bba6f (patch) | |
| tree | 9f4ab02e66222760d292916c0ec1e0ce093ac5b7 /llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | |
| parent | 47a3ea43f522ba6d9f7732b71de5df8bd8c1db48 (diff) | |
[VPlan] Remove unneeded getDefiningRecipe with isa/cast/dyn_cast. (NFC)
Classof for most recipes directly supports VPValue, so there is no need
to call getDefiningRecipe when using isa/cast/dyn_cast.
Diffstat (limited to 'llvm/lib/Transforms/Vectorize/LoopVectorize.cpp')
| -rw-r--r-- | llvm/lib/Transforms/Vectorize/LoopVectorize.cpp | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp index 14cea1c8fa67..83dee09f94b9 100644 --- a/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp +++ b/llvm/lib/Transforms/Vectorize/LoopVectorize.cpp @@ -8228,9 +8228,7 @@ VPRecipeBuilder::tryToCreatePartialReduction(VPInstruction *Reduction, VPValue *BinOp = Reduction->getOperand(0); VPValue *Accumulator = Reduction->getOperand(1); - VPRecipeBase *BinOpRecipe = BinOp->getDefiningRecipe(); - if (isa<VPReductionPHIRecipe>(BinOpRecipe) || - isa<VPPartialReductionRecipe>(BinOpRecipe)) + if (isa<VPReductionPHIRecipe>(BinOp) || isa<VPPartialReductionRecipe>(BinOp)) std::swap(BinOp, Accumulator); assert(ScaleFactor == @@ -8798,7 +8796,7 @@ void LoopVectorizationPlanner::adjustRecipesForReductions( // with fewer lanes than the VF. So the operands of the select would have // different numbers of lanes. Partial reductions mask the input instead. if (!PhiR->isInLoop() && CM.foldTailByMasking() && - !isa<VPPartialReductionRecipe>(OrigExitingVPV->getDefiningRecipe())) { + !isa<VPPartialReductionRecipe>(OrigExitingVPV)) { VPValue *Cond = RecipeBuilder.getBlockInMask(PhiR->getParent()); std::optional<FastMathFlags> FMFs = PhiTy->isFloatingPointTy() |
