Home
last modified time | relevance | path

Searched refs:VPlan (Results 1 – 14 of 14) sorted by relevance

/netbsd-src/external/apache2/llvm/dist/llvm/docs/Proposals/
H A DVectorizationPlan.rst27 VPlan-based vectorization involves three major steps, taking a "scenario-based
38 3. Execute Step: materialize the best VPlan. Note that this is the only step
48 The design of VPlan follows several high-level guidelines:
55 2. Align Cost & Execute: each VPlan must support both estimating the cost and
61 a. Outer-loop vectorization. In particular, VPlan must be able to model the
93 The low-level design of VPlan comprises of the following classes.
98 each VPlan modelling a distinct way to vectorize the loop or the loop nest.
99 Once the best VPlan is determined, including the best VF and UF, this VPlan
102 :VPlan:
104 candidate is represented using a Hierarchical CFG. VPlan supports estimating
[all …]
H A DVectorPredication.rst35 Result: VP usable for IR-level vectorizers (LV, VPlan, RegionVectorizer),
/netbsd-src/external/apache2/llvm/dist/llvm/lib/Transforms/Vectorize/
H A DVPlanHCFGBuilder.h48 VPlan &Plan;
63 VPlanHCFGBuilder(Loop *Lp, LoopInfo *LI, VPlan &P) in VPlanHCFGBuilder()
H A DVPlanPredicator.h32 VPlan &Plan;
68 VPlanPredicator(VPlan &Plan);
H A DVPlan.h61 class VPlan; variable
92 using VPlanPtr = std::unique_ptr<VPlan>;
197 InnerLoopVectorizer *ILV, VPlan *Plan) in VPTransformState()
341 VPlan *Plan;
411 VPlan *Plan = nullptr;
467 VPlan *getPlan();
468 const VPlan *getPlan() const;
472 void setPlan(VPlan *ParentPlan);
1950 class VPlan {
1986 VPlan(VPBlockBase *Entry = nullptr) : Entry(Entry) {
[all …]
H A DVPlan.cpp135 VPlan *VPBlockBase::getPlan() { return getPlanEntry(this)->Plan; } in getPlan()
137 const VPlan *VPBlockBase::getPlan() const { return getPlanEntry(this)->Plan; } in getPlan()
154 void VPBlockBase::setPlan(VPlan *ParentPlan) { in setPlan()
676 void VPlan::execute(VPTransformState *State) { in execute()
763 void VPlan::print(raw_ostream &O) const { in print()
775 void VPlan::printDOT(raw_ostream &O) const { in printDOT()
781 void VPlan::dump() const { print(dbgs()); } in dump()
784 void VPlan::updateDominatorTree(DominatorTree *DT, BasicBlock *LoopPreHeaderBB, in updateDominatorTree()
1235 VPInterleavedAccessInfo::VPInterleavedAccessInfo(VPlan &Plan, in VPInterleavedAccessInfo()
1246 void VPSlotTracker::assignSlots(const VPlan &Plan) { in assignSlots()
H A DVPlanValue.h393 class VPlan; variable
405 void assignSlots(const VPlan &Plan);
408 VPSlotTracker(const VPlan *Plan = nullptr) {
H A DCMakeLists.txt8 VPlan.cpp
H A DVPlanHCFGBuilder.cpp43 VPlan &Plan;
73 PlainCFGBuilder(Loop *Lp, LoopInfo *LI, VPlan &P) in PlainCFGBuilder()
H A DVPRecipeBuilder.h83 VFRange &Range, VPlan &Plan) const;
H A DVPlanPredicator.cpp242 VPlanPredicator::VPlanPredicator(VPlan &Plan) in VPlanPredicator()
H A DLoopVectorize.cpp8655 VPlan &Plan) const { in tryToOptimizeInductionTruncate()
9057 auto Plan = std::make_unique<VPlan>(); in buildVPlanWithVPRecipes()
9273 auto Plan = std::make_unique<VPlan>(); in buildVPlan()
/netbsd-src/external/apache2/llvm/dist/llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/
H A DBUILD.gn14 "VPlan.cpp",
/netbsd-src/external/apache2/llvm/lib/libLLVMVectorize/
H A DMakefile15 VPlan.cpp \