Searched refs:VPV (Results 1 – 7 of 7) sorted by relevance
| /freebsd/contrib/llvm-project/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanUtils.h | 42 inline bool isSingleScalar(const VPValue *VPV) { in isSingleScalar() argument 59 if (VPV->isLiveIn()) in isSingleScalar() 62 if (auto *Rep = dyn_cast<VPReplicateRecipe>(VPV)) { in isSingleScalar() 73 VPWidenSelectRecipe>(VPV)) in isSingleScalar() 74 return all_of(VPV->getDefiningRecipe()->operands(), isSingleScalar); in isSingleScalar() 75 if (auto *WidenR = dyn_cast<VPWidenRecipe>(VPV)) { in isSingleScalar() 79 if (auto *VPI = dyn_cast<VPInstruction>(VPV)) in isSingleScalar() 85 return isa<VPExpandSCEVRecipe>(VPV); in isSingleScalar()
|
| H A D | VPlanTransforms.cpp | 59 VPValue *VPV = Ingredient.getVPSingleValue(); in tryToConvertVPInstructionsToVPRecipes() local 60 if (!VPV->getUnderlyingValue()) in tryToConvertVPInstructionsToVPRecipes() 63 Instruction *Inst = cast<Instruction>(VPV->getUnderlyingValue()); in tryToConvertVPInstructionsToVPRecipes() 114 VPV->replaceAllUsesWith(NewRecipe->getVPSingleValue()); in tryToConvertVPInstructionsToVPRecipes() 710 static VPWidenInductionRecipe *getOptimizableIVOf(VPValue *VPV) { in getOptimizableIVOf() argument 711 auto *WideIV = dyn_cast<VPWidenInductionRecipe>(VPV); in getOptimizableIVOf() 720 VPRecipeBase *Def = VPV->getDefiningRecipe(); in getOptimizableIVOf() 737 return match(VPV, m_c_Binary<Instruction::Add>(m_Specific(WideIV), in getOptimizableIVOf() 740 return match(VPV, m_c_Binary<Instruction::FAdd>(m_Specific(WideIV), in getOptimizableIVOf() 743 return match(VPV, m_Binary<Instruction::FSub>(m_Specific(WideIV), in getOptimizableIVOf() [all …]
|
| H A D | VPlanPatternMatch.h | 64 bool match(VPValue *VPV) const { return VPV == Val; } in match() 67 inline specificval_ty m_Specific(const VPValue *VPV) { return VPV; } in m_Specific() argument 97 bool match(VPValue *VPV) const { in match() 98 if (!VPV->isLiveIn()) in match() 100 Value *V = VPV->getLiveInIRValue(); in match()
|
| H A D | VPlanUnroll.cpp | 95 for (const auto &[Idx, VPV] : enumerate(OrigR->definedValues())) { in addRecipeForPart() 96 auto Ins = VPV2Parts.insert({VPV, {}}); in addRecipeForPart() 110 bool contains(VPValue *VPV) const { return VPV2Parts.contains(VPV); } in contains()
|
| H A D | VPlan.cpp | 948 for (VPValue *VPV : getLiveIns()) in ~VPlan() 949 delete VPV; in ~VPlan() 1445 static bool isDefinedInsideLoopRegions(const VPValue *VPV) { in isDefinedInsideLoopRegions() argument 1446 const VPRecipeBase *DefR = VPV->getDefiningRecipe(); in isDefinedInsideLoopRegions()
|
| H A D | VPlan.h | 4108 VPValue *VPV = new VPValue(V); 4109 VPLiveIns.push_back(VPV); 4110 assert(VPV->isLiveIn() && "VPV must be a live-in."); 4111 It->second = VPV;
|
| H A D | LoopVectorize.cpp | 9775 VPValue *VPV = Plan.getOrAddLiveIn(EPResumeVal); in preparePlanForEpilogueVectorLoop() local 9786 IV->setOperand(0, VPV); in preparePlanForEpilogueVectorLoop()
|