Home
last modified time | relevance | path

Searched refs:VPRecipeBase (Results 1 – 10 of 10) sorted by relevance

/freebsd-14.2/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanTransforms.cpp43 for (VPRecipeBase &Ingredient : in VPInstructionsToVPRecipes()
49 VPRecipeBase *NewRecipe = nullptr; in VPInstructionsToVPRecipes()
336 for (VPRecipeBase &R : *VPBB) in addReplicateRegions()
513 SmallVector<VPRecipeBase *> ToRemove; in optimizeInductions()
543 for (VPRecipeBase &R : in removeRedundantExpandSCEVRecipes()
622 static bool properlyDominates(const VPRecipeBase *A, const VPRecipeBase *B, in properlyDominates()
627 auto LocalComesBefore = [](const VPRecipeBase *A, const VPRecipeBase *B) { in properlyDominates()
657 SmallPtrSet<VPRecipeBase *, 8> Seen; in sinkRecurrenceUsersAfterPrevious()
693 sort(WorkList, [&VPDT](const VPRecipeBase *A, const VPRecipeBase *B) { in sinkRecurrenceUsersAfterPrevious()
713 for (VPRecipeBase &R : in adjustFixedOrderRecurrences()
[all …]
H A DVPRecipeBuilder.h24 using VPRecipeOrVPValueTy = PointerUnion<VPRecipeBase *, VPValue *>;
57 DenseMap<Instruction *, VPRecipeBase *> Ingredient2Recipe;
72 VPRecipeBase *tryToWidenMemory(Instruction *I, ArrayRef<VPValue *> Operands,
77 VPRecipeBase *tryToOptimizeInductionPHI(PHINode *Phi,
103 VPRecipeBase *tryToWiden(Instruction *I, ArrayRef<VPValue *> Operands,
107 VPRecipeOrVPValueTy toVPRecipeResult(VPRecipeBase *R) const { return R; } in toVPRecipeResult()
128 void setRecipe(Instruction *I, VPRecipeBase *R) { in setRecipe()
160 VPRecipeBase *getRecipe(Instruction *I) { in getRecipe()
H A DVPlan.h707 class VPRecipeBase : public ilist_node_with_parent<VPRecipeBase, VPBasicBlock>,
728 virtual ~VPRecipeBase() = default;
840 case VPRecipeBase::VPDerivedIVSC: in classof()
843 case VPRecipeBase::VPReductionSC: in classof()
844 case VPRecipeBase::VPReplicateSC: in classof()
847 case VPRecipeBase::VPWidenCallSC: in classof()
850 case VPRecipeBase::VPWidenGEPSC: in classof()
851 case VPRecipeBase::VPWidenSC: in classof()
853 case VPRecipeBase::VPBlendSC: in classof()
858 case VPRecipeBase::VPWidenPHISC: in classof()
[all …]
H A DVPlan.cpp93 if (const VPRecipeBase *R = dyn_cast_or_null<VPRecipeBase>(Def)) in print()
100 const VPRecipeBase *Instr = dyn_cast_or_null<VPRecipeBase>(this->Def); in dump()
108 const VPRecipeBase *Instr = dyn_cast_or_null<VPRecipeBase>(this); in dump()
116 VPRecipeBase *VPValue::getDefiningRecipe() { in getDefiningRecipe()
117 return cast_or_null<VPRecipeBase>(Def); in getDefiningRecipe()
121 return cast_or_null<VPRecipeBase>(Def); in getDefiningRecipe()
495 for (VPRecipeBase &Recipe : Recipes) in execute()
502 for (VPRecipeBase &R : Recipes) { in dropAllReferences()
529 for (VPRecipeBase &ToMove : in splitAt()
554 const VPRecipeBase *R = &VPBB->back(); in hasConditionalTerminator()
[all …]
H A DVPlanVerifier.cpp200 DenseMap<const VPRecipeBase *, unsigned> RecipeNumbering; in verifyVPBasicBlock()
202 for (const VPRecipeBase &R : *VPBB) in verifyVPBasicBlock()
205 for (const VPRecipeBase &R : *VPBB) { in verifyVPBasicBlock()
208 auto *UI = dyn_cast<VPRecipeBase>(U); in verifyVPBasicBlock()
H A DVPlanValue.h37 class VPRecipeBase; variable
52 friend class VPRecipeBase; variable
168 VPRecipeBase *getDefiningRecipe();
169 const VPRecipeBase *getDefiningRecipe() const;
H A DVPlanRecipes.cpp46 bool VPRecipeBase::mayWriteToMemory() const { in mayWriteToMemory()
82 bool VPRecipeBase::mayReadFromMemory() const { in mayReadFromMemory()
116 bool VPRecipeBase::mayHaveSideEffects() const { in mayHaveSideEffects()
196 void VPRecipeBase::insertBefore(VPRecipeBase *InsertPos) { in insertBefore()
204 void VPRecipeBase::insertBefore(VPBasicBlock &BB, in insertBefore()
212 void VPRecipeBase::insertAfter(VPRecipeBase *InsertPos) { in insertAfter()
220 void VPRecipeBase::removeFromParent() { in removeFromParent()
226 iplist<VPRecipeBase>::iterator VPRecipeBase::eraseFromParent() { in eraseFromParent()
231 void VPRecipeBase::moveAfter(VPRecipeBase *InsertPos) { in moveAfter()
236 void VPRecipeBase::moveBefore(VPBasicBlock &BB, in moveBefore()
[all …]
H A DVPlanAnalysis.cpp208 TypeSwitch<const VPRecipeBase *, Type *>(V->getDefiningRecipe()) in inferScalarType()
221 VPWidenGEPRecipe>([this](const VPRecipeBase *R) { in inferScalarType()
H A DLoopVectorize.cpp1082 SmallPtrSet<VPRecipeBase *, 16> Visited; in collectPoisonGeneratingRecipes()
1084 SmallVector<VPRecipeBase *, 16> Worklist; in collectPoisonGeneratingRecipes()
1132 for (VPRecipeBase &Recipe : *VPBB) { in collectPoisonGeneratingRecipes()
3745 for (VPRecipeBase &P : VPBB->phis()) { in fixNonInductionPHIs()
7624 for (VPRecipeBase &R : *ExitVPBB) { in executePlan()
8442 VPRecipeBase *IncR = in fixHeaderPhis()
8512 VPRecipeBase *Recipe; in tryToCreateWidenRecipe()
8790 VPRecipeBase *Recipe = cast<VPRecipeBase *>(RecipeOrValue); in tryToBuildVPlanWithVPRecipes()
8972 for (VPRecipeBase &R : Header->phis()) { in adjustRecipesForReductions()
9007 for (VPRecipeBase &R : Header->phis()) { in adjustRecipesForReductions()
[all …]
H A DLoopVectorizationPlanner.h127 void setInsertPoint(VPRecipeBase *IP) { in setInsertPoint()