Searched refs:VPRegionBlock (Results 1 – 12 of 12) sorted by relevance
| /llvm-project-15.0.7/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanVerifier.cpp | 45 static void verifyBlocksInRegion(const VPRegionBlock *Region) { in verifyBlocksInRegion() 98 static void verifyRegion(const VPRegionBlock *Region) { in verifyRegion() 114 static void verifyRegionRec(const VPRegionBlock *Region) { in verifyRegionRec() 121 if (const auto *SubRegion = dyn_cast<VPRegionBlock>(VPB)) in verifyRegionRec() 127 const VPRegionBlock *TopRegion) const { in verifyHierarchicalCFG() 238 const VPRegionBlock *TopRegion = Plan.getVectorLoopRegion(); in verifyPlanIsValid() 271 for (const VPRegionBlock *Region : in verifyPlanIsValid() 272 VPBlockUtils::blocksOnly<const VPRegionBlock>( in verifyPlanIsValid()
|
| H A D | VPlan.cpp | 141 while (const VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block)) in getEntryBasicBlock() 148 while (VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block)) in getEntryBasicBlock() 162 while (const VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block)) in getExitingBasicBlock() 169 while (VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block)) in getExitingBasicBlock() 322 auto *R = dyn_cast<VPRegionBlock>(BB); in execute() 417 VPRegionBlock *VPBasicBlock::getEnclosingLoopRegion() { in getEnclosingLoopRegion() 418 VPRegionBlock *P = getParent(); in getEnclosingLoopRegion() 421 assert(!cast<VPRegionBlock>(P)->isReplicator() && in getEnclosingLoopRegion() 506 void VPRegionBlock::execute(VPTransformState *State) { in execute() 875 else if (const VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block)) in dumpBlock() [all …]
|
| H A D | VPlanVerifier.h | 28 class VPRegionBlock; variable 38 void verifyHierarchicalCFG(const VPRegionBlock *TopRegion) const;
|
| H A D | VPlanTransforms.cpp | 186 VPValue *getPredicatedMask(VPRegionBlock *R) { in getPredicatedMask() 196 static VPBasicBlock *getPredicatedThenBlock(VPRegionBlock *R) { in getPredicatedThenBlock() 216 SetVector<VPRegionBlock *> DeletedRegions; in mergeReplicateRegions() 221 SmallVector<VPRegionBlock *, 8> CandidateRegions( in mergeReplicateRegions() 222 VPBlockUtils::blocksOnly<VPRegionBlock>(depth_first( in mergeReplicateRegions() 228 for (VPRegionBlock *Region1 : CandidateRegions) { in mergeReplicateRegions() 237 dyn_cast_or_null<VPRegionBlock>(MiddleBasicBlock->getSingleSuccessor()); in mergeReplicateRegions() 294 for (VPRegionBlock *ToDelete : DeletedRegions) in mergeReplicateRegions()
|
| H A D | VPlanHCFGBuilder.cpp | 60 DenseMap<Loop *, VPRegionBlock *> Loop2Region; 122 VPRegionBlock *ParentR = nullptr; in getOrCreateVPBB() 126 Iter.first->second = new VPRegionBlock( in getOrCreateVPBB() 347 VPRegionBlock *Region = Loop2Region[L]; in buildPlainCFG() 390 VPRegionBlock *TopRegion = Plan.getVectorLoopRegion(); in buildHierarchicalCFG()
|
| H A D | VPlan.h | 62 class VPRegionBlock; variable 395 VPRegionBlock *Parent = nullptr; 2108 VPRegionBlock *getEnclosingLoopRegion(); 2143 class VPRegionBlock : public VPBlockBase { 2169 ~VPRegionBlock() override { in ~VPRegionBlock() 2307 using GraphRef = VPRegionBlock *; 2324 struct GraphTraits<const VPRegionBlock *> 2326 using GraphRef = const VPRegionBlock *; 2343 struct GraphTraits<Inverse<VPRegionBlock *>> 2345 using GraphRef = VPRegionBlock *; [all …]
|
| H A D | VPlanHCFGBuilder.h | 34 class VPRegionBlock; variable
|
| H A D | VPRecipeBuilder.h | 161 VPRegionBlock *createReplicateRegion(VPReplicateRecipe *PredRecipe,
|
| H A D | VPlanRecipes.cpp | 302 VPRegionBlock *ParentRegion = getParent()->getParent(); in generateInstruction() 328 VPRegionBlock *TopRegion = Plan->getVectorLoopRegion(); in generateInstruction() 1174 VPRegionBlock *LoopRegion = Parent->getEnclosingLoopRegion(); in execute()
|
| H A D | LoopVectorize.cpp | 8438 VPRegionBlock * 8465 VPRegionBlock *Region = new VPRegionBlock(Entry, Exiting, RegionName, true); in createReplicateRegion() 8600 VPRegionBlock *TopRegion = Plan.getVectorLoopRegion(); in addCanonicalIVRecipes() 8759 auto *TopRegion = new VPRegionBlock(HeaderVPBB, LatchVPBB, "vector loop"); in buildVPlanWithVPRecipes() 8873 assert(isa<VPRegionBlock>(Plan->getVectorLoopRegion()) && in buildVPlanWithVPRecipes() 8885 auto GetReplicateRegion = [](VPRecipeBase *R) -> VPRegionBlock * { in buildVPlanWithVPRecipes() 8886 auto *Region = dyn_cast_or_null<VPRegionBlock>(R->getParent()->getParent()); in buildVPlanWithVPRecipes() 10376 VPRegionBlock *VectorLoop = BestEpiPlan.getVectorLoopRegion(); in processLoop()
|
| /llvm-project-15.0.7/llvm/unittests/Transforms/Vectorize/ |
| H A D | VPlanTest.cpp | 269 VPRegionBlock *R1 = new VPRegionBlock(R1BB1, R1BB2, "R1"); in TEST() 283 VPRegionBlock *R1 = new VPRegionBlock(R1BB1, R1BB2, "R1"); in TEST() 300 VPRegionBlock *R1 = new VPRegionBlock(R1BB1, R1BB2, "R1"); in TEST() 305 VPRegionBlock *R2 = new VPRegionBlock(R2BB1, R2BB2, "R2"); in TEST() 380 VPRegionBlock *R1 = new VPRegionBlock(R1BB1, R1BB4, "R1"); in TEST() 392 VPRegionBlock *R2 = new VPRegionBlock(R2BB1, R2BB2, "R2"); in TEST() 471 VPRegionBlock *R1 = new VPRegionBlock(R1BB1, R1BB3, "R1"); in TEST() 476 VPRegionBlock *R2 = new VPRegionBlock(R2BB1, R2BB3, "R2"); in TEST() 545 VPRegionBlock *R1 = new VPRegionBlock(R2, R2, "R1"); in TEST() 599 VPRegionBlock *R2 = new VPRegionBlock(R2BB1, R3, "R2"); in TEST() [all …]
|
| /llvm-project-15.0.7/llvm/docs/Proposals/ |
| H A D | VectorizationPlan.rst | 117 VPBasicBlock and VPRegionBlock, see below. VPBlockBase models the hierarchical 131 :VPRegionBlock: 132 VPRegionBlock is a subclass of VPBlockBase. It models a collection of 134 CFG. A VPRegionBlock may indicate that its contents are to be replicated a
|