Home
last modified time | relevance | path

Searched refs:VPUser (Results 1 – 8 of 8) sorted by relevance

/freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/
H A DVPlanValue.h37 class VPUser; variable
56 SmallVector<VPUser *, 1> Users;
112 void addUser(VPUser &User) { Users.push_back(&User); } in addUser()
115 void removeUser(VPUser &User) { in removeUser()
123 typedef SmallVectorImpl<VPUser *>::iterator user_iterator;
124 typedef SmallVectorImpl<VPUser *>::const_iterator const_user_iterator;
156 llvm::function_ref<bool(VPUser &U, unsigned Idx)> ShouldReplace);
202 class VPUser {
221 VPUser(ArrayRef<VPValue *> Operands, VPUserID ID) : ID(ID) { in VPUser() function
226 VPUser(std::initializer_list<VPValue *> Operands, VPUserID ID) in VPUser() function
[all …]
H A DVPlanTransforms.cpp147 SinkCandidate](VPUser *U) { in sinkScalarOperands()
168 SinkCandidate->replaceUsesWithIf(Clone, [SinkTo](VPUser &U, unsigned) { in sinkScalarOperands()
276 Phi1ToMoveV->replaceUsesWithIf(PredInst1, [Then2](VPUser &U, unsigned) { in mergeReplicateRegionsIntoSuccessors()
456 for (VPUser *U : CanonicalIV->users()) { in removeRedundantCanonicalIVs()
477 [WidenOriginalIV](VPUser *U) { in removeRedundantCanonicalIVs()
612 if (HasOnlyVectorVFs && none_of(WideIV->users(), [WideIV](VPUser *U) { in legalizeAndOptimizeInductions()
628 WideIV->replaceUsesWithIf(Steps, [WideIV](VPUser &U, unsigned) { in legalizeAndOptimizeInductions()
795 for (VPUser *User : Current->getVPSingleValue()->users()) { in sinkRecurrenceUsersAfterPrevious()
954 Penultimate, [](VPUser &U, unsigned) { return isa<VPLiveOut>(&U); }); in adjustFixedOrderRecurrences()
959 static SmallVector<VPUser *> collectUsersRecursively(VPValue *V) { in collectUsersRecursively()
[all …]
H A DVPlan.h704 class VPLiveOut : public VPUser {
709 : VPUser({Op}, VPUser::VPUserID::LiveOut), Phi(Phi) {} in VPLiveOut()
711 static inline bool classof(const VPUser *U) { in classof()
712 return U->getVPUserID() == VPUser::VPUserID::LiveOut; in classof()
764 public VPUser {
777 : VPDef(SC), VPUser(Operands, VPUser::VPUserID::Recipe), DL(DL) {} in VPDef()
782 : VPDef(SC), VPUser(Operands, VPUser::VPUserID::Recipe), DL(DL) {} in VPDef()
836 static inline bool classof(const VPUser *U) { in classof()
837 return U->getVPUserID() == VPUser::VPUserID::Recipe; in classof()
877 static inline bool classof(const VPUser *U) { \
[all …]
H A DVPlan.cpp942 [](const VPUser *U) { in prepareToExecute()
1422 replaceUsesWithIf(New, [](VPUser &, unsigned) { return true; }); in replaceAllUsesWith() argument
1427 llvm::function_ref<bool(VPUser &U, unsigned Idx)> ShouldReplace) { in replaceUsesWithIf()
1435 VPUser *User = Users[J]; in replaceUsesWithIf()
1457 void VPUser::printOperands(raw_ostream &O, VPSlotTracker &SlotTracker) const { in printOperands()
1602 [Def](const VPUser *U) { return U->onlyFirstLaneUsed(Def); }); in onlyFirstLaneUsed()
1607 [Def](const VPUser *U) { return U->onlyFirstPartUsed(Def); }); in onlyFirstPartUsed()
H A DVPlanVerifier.cpp130 for (const VPUser *U : V->users()) { in verifyVPBasicBlock()
H A DVPlanAnalysis.cpp312 if (any_of(Op->users(), [EphRecipes](VPUser *U) { in collectEphemeralRecipesForVPlan()
H A DVPlanRecipes.cpp1840 return any_of(users(), [](const VPUser *U) { in shouldPack()
1842 return any_of(PredR->users(), [PredR](const VPUser *U) { in shouldPack()
H A DLoopVectorize.cpp8825 for (VPUser *U : Cur->users()) { in adjustRecipesForReductions()
8950 auto *Select = cast<VPRecipeBase>(*find_if(PhiR->users(), [](VPUser *U) { in adjustRecipesForReductions()
8995 OrigExitingVPV->replaceUsesWithIf(NewExitingVPV, [](VPUser &U, unsigned) { in adjustRecipesForReductions()
9048 [](VPUser &User, unsigned) { return isa<VPLiveOut>(&User); }); in adjustRecipesForReductions()