Lines Matching refs:VPBasicBlock
155 const VPBasicBlock *VPBlockBase::getEntryBasicBlock() const { in getEntryBasicBlock()
159 return cast<VPBasicBlock>(Block); in getEntryBasicBlock()
162 VPBasicBlock *VPBlockBase::getEntryBasicBlock() { in getEntryBasicBlock()
166 return cast<VPBasicBlock>(Block); in getEntryBasicBlock()
177 const VPBasicBlock *VPBlockBase::getExitingBasicBlock() const { in getExitingBasicBlock()
181 return cast<VPBasicBlock>(Block); in getExitingBasicBlock()
184 VPBasicBlock *VPBlockBase::getExitingBasicBlock() { in getExitingBasicBlock()
188 return cast<VPBasicBlock>(Block); in getExitingBasicBlock()
212 VPBasicBlock::iterator VPBasicBlock::getFirstNonPhi() { in getFirstNonPhi()
276 BasicBlock *LoopVectorPreHeader = CFG.VPBB2IRBB[cast<VPBasicBlock>( in get()
411 VPBasicBlock::createEmptyBasicBlock(VPTransformState::CFGState &CFG) { in createEmptyBasicBlock()
421 VPBasicBlock *PredVPBB = PredVPBlock->getExitingBasicBlock(); in createEmptyBasicBlock()
465 VPBasicBlock *PredVPBB = PredVPBlock->getExitingBasicBlock(); in execute()
483 void VPBasicBlock::execute(VPTransformState *State) { in execute()
485 VPBasicBlock *PrevVPBB = State->CFG.PrevVPBB; in execute()
527 void VPBasicBlock::dropAllReferences(VPValue *NewValue) { in dropAllReferences()
537 void VPBasicBlock::executeRecipes(VPTransformState *State, BasicBlock *BB) { in executeRecipes()
550 VPBasicBlock *VPBasicBlock::splitAt(iterator SplitAt) { in splitAt()
560 auto *SplitBlock = new VPBasicBlock(getName() + ".split"); in splitAt()
575 VPRegionBlock *VPBasicBlock::getEnclosingLoopRegion() { in getEnclosingLoopRegion()
585 static bool hasConditionalTerminator(const VPBasicBlock *VPBB) { in hasConditionalTerminator()
613 VPRecipeBase *VPBasicBlock::getTerminator() { in getTerminator()
619 const VPRecipeBase *VPBasicBlock::getTerminator() const { in getTerminator()
625 bool VPBasicBlock::isExiting() const { in isExiting()
642 void VPBasicBlock::print(raw_ostream &O, const Twine &Indent, in print()
780 InstructionCost VPBasicBlock::cost(ElementCount VF, VPCostContext &Ctx) { in cost()
811 VPBasicBlock *Then = cast<VPBasicBlock>(getEntry()->getSuccessors()[0]); in cost()
862 VPBasicBlock *VecPreheader = new VPBasicBlock("vector.ph"); in createInitialVPlan()
868 VPBasicBlock *HeaderVPBB = new VPBasicBlock("vector.body"); in createInitialVPlan()
869 VPBasicBlock *LatchVPBB = new VPBasicBlock("vector.latch"); in createInitialVPlan()
875 VPBasicBlock *MiddleVPBB = new VPBasicBlock("middle.block"); in createInitialVPlan()
878 VPBasicBlock *ScalarPH = new VPBasicBlock("scalar.ph"); in createInitialVPlan()
959 static void replaceVPBBWithIRVPBB(VPBasicBlock *VPBB, BasicBlock *IRBB) { in replaceVPBBWithIRVPBB()
993 VPBasicBlock *MiddleVPBB = in execute()
994 cast<VPBasicBlock>(getVectorLoopRegion()->getSingleSuccessor()); in execute()
1003 VPBasicBlock *ScalarPhVPBB = cast<VPBasicBlock>( in execute()
1022 VPBasicBlock *LatchVPBB = getVectorLoopRegion()->getExitingBasicBlock(); in execute()
1027 VPBasicBlock *Header = getVectorLoopRegion()->getEntryBasicBlock(); in execute()
1199 zip(VPBlockUtils::blocksOnly<VPBasicBlock>(OldDeepRPOT), in remapOperands()
1200 VPBlockUtils::blocksOnly<VPBasicBlock>(NewDeepRPOT))) { in remapOperands()
1215 for (VPBasicBlock *NewBB : in remapOperands()
1216 VPBlockUtils::blocksOnly<VPBasicBlock>(NewDeepRPOT)) { in remapOperands()
1227 VPBasicBlock *NewPreheader = Preheader->clone(); in duplicate()
1231 auto *NewPlan = new VPlan(NewPreheader, cast<VPBasicBlock>(NewEntry)); in duplicate()
1315 if (const VPBasicBlock *BasicBlock = dyn_cast<VPBasicBlock>(Block)) in dumpBlock()
1354 void VPlanPrinter::dumpBasicBlock(const VPBasicBlock *BasicBlock) { in dumpBasicBlock()
1476 if (VPBasicBlock *VPBB = dyn_cast<VPBasicBlock>(Block)) { in visitBlock()
1561 for (const VPBasicBlock *VPBB : in assignNames()
1562 VPBlockUtils::blocksOnly<const VPBasicBlock>(RPOT)) in assignNames()
1566 void VPSlotTracker::assignNames(const VPBasicBlock *VPBB) { in assignNames()