Lines Matching defs:Block

154 /// \return the VPBasicBlock that is the entry of Block, possibly indirectly.
156 const VPBlockBase *Block = this;
157 while (const VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block))
158 Block = Region->getEntry();
159 return cast<VPBasicBlock>(Block);
163 VPBlockBase *Block = this;
164 while (VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block))
165 Block = Region->getEntry();
166 return cast<VPBasicBlock>(Block);
176 /// \return the VPBasicBlock that is the exit of Block, possibly indirectly.
178 const VPBlockBase *Block = this;
179 while (const VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block))
180 Block = Region->getExiting();
181 return cast<VPBasicBlock>(Block);
185 VPBlockBase *Block = this;
186 while (VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block))
187 Block = Region->getExiting();
188 return cast<VPBasicBlock>(Block);
195 "Block w/o successors not the exiting block of its parent.");
203 "Block w/o predecessors not the entry of its parent.");
208 for (VPBlockBase *Block : to_vector(vp_depth_first_shallow(Entry)))
209 delete Block;
717 for (VPBlockBase *Block : vp_depth_first_shallow(NewEntry))
718 Block->setParent(NewRegion);
723 for (VPBlockBase *Block : vp_depth_first_shallow(Entry))
726 Block->dropAllReferences(NewValue);
748 for (VPBlockBase *Block : RPOT) {
749 LLVM_DEBUG(dbgs() << "LV: VPBlock in RPO " << Block->getName() << '\n');
750 Block->execute(State);
769 for (VPBlockBase *Block : RPOT) {
770 LLVM_DEBUG(dbgs() << "LV: VPBlock in RPO " << Block->getName() << '\n');
771 Block->execute(State);
790 for (VPBlockBase *Block : vp_depth_first_shallow(getEntry()))
791 Cost += Block->cost(VF, Ctx);
844 for (VPBlockBase *Block : vp_depth_first_shallow(Entry))
845 Block->dropAllReferences(&DummyValue);
1019 for (VPBlockBase *Block : vp_depth_first_shallow(Entry))
1020 Block->execute(State);
1135 for (const VPBlockBase *Block : vp_depth_first_shallow(getEntry())) {
1137 Block->print(O, "", SlotTracker);
1270 Twine VPlanPrinter::getUID(const VPBlockBase *Block) {
1271 return (isa<VPRegionBlock>(Block) ? "cluster_N" : "N") +
1272 Twine(getOrCreateBID(Block));
1275 Twine VPlanPrinter::getOrCreateName(const VPBlockBase *Block) {
1276 const std::string &Name = Block->getName();
1279 return "VPB" + Twine(getOrCreateBID(Block));
1308 for (const VPBlockBase *Block : vp_depth_first_shallow(Plan.getEntry()))
1309 dumpBlock(Block);
1314 void VPlanPrinter::dumpBlock(const VPBlockBase *Block) {
1315 if (const VPBasicBlock *BasicBlock = dyn_cast<VPBasicBlock>(Block))
1317 else if (const VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block))
1340 void VPlanPrinter::dumpEdges(const VPBlockBase *Block) {
1341 auto &Successors = Block->getSuccessors();
1343 drawEdge(Block, Successors.front(), false, "");
1345 drawEdge(Block, Successors.front(), false, "T");
1346 drawEdge(Block, Successors.back(), false, "F");
1350 drawEdge(Block, Successor, false, Twine(SuccessorNumber++));
1393 for (const VPBlockBase *Block : vp_depth_first_shallow(Region->getEntry()))
1394 dumpBlock(Block);
1474 void VPInterleavedAccessInfo::visitBlock(VPBlockBase *Block, Old2NewTy &Old2New,
1476 if (VPBasicBlock *VPBB = dyn_cast<VPBasicBlock>(Block)) {
1504 } else if (VPRegionBlock *Region = dyn_cast<VPRegionBlock>(Block))