Searched refs:VPBasicBlock (Results 1 – 13 of 13) sorted by relevance
| /openbsd-src/gnu/llvm/llvm/lib/Transforms/Vectorize/ |
| H A D | VPlanHCFGBuilder.cpp | 52 DenseMap<BasicBlock *, VPBasicBlock *> BB2VPBB; 63 void setVPBBPredsFromBB(VPBasicBlock *VPBB, BasicBlock *BB); 65 VPBasicBlock *getOrCreateVPBB(BasicBlock *BB); 70 void createVPInstructionsForVPBB(VPBasicBlock *VPBB, BasicBlock *BB); 78 VPBasicBlock *buildPlainCFG(); 84 void PlainCFGBuilder::setVPBBPredsFromBB(VPBasicBlock *VPBB, BasicBlock *BB) { in setVPBBPredsFromBB() 114 VPBasicBlock *PlainCFGBuilder::getOrCreateVPBB(BasicBlock *BB) { in getOrCreateVPBB() 133 VPBasicBlock *VPBB = new VPBasicBlock(BB->getName()); in getOrCreateVPBB() 207 void PlainCFGBuilder::createVPInstructionsForVPBB(VPBasicBlock *VPBB, in createVPInstructionsForVPBB() 257 VPBasicBlock *PlainCFGBuilder::buildPlainCFG() { in buildPlainCFG() [all …]
|
| H A D | VPlanTransforms.cpp | 33 for (VPBasicBlock *VPBB : VPBlockUtils::blocksOnly<VPBasicBlock>(RPOT)) { in VPInstructionsToVPRecipes() 114 SetVector<std::pair<VPBasicBlock *, VPRecipeBase *>> WorkList; in sinkScalarOperands() 116 VPBasicBlock *EntryVPBB = VPR->getEntryBasicBlock(); in sinkScalarOperands() 119 VPBasicBlock *VPBB = dyn_cast<VPBasicBlock>(EntryVPBB->getSuccessors()[0]); in sinkScalarOperands() 132 VPBasicBlock *SinkTo; in sinkScalarOperands() 199 auto *EntryBB = dyn_cast<VPBasicBlock>(R->getEntry()); in getPredicatedMask() 208 static VPBasicBlock *getPredicatedThenBlock(VPRegionBlock *R) { in getPredicatedThenBlock() 209 auto *EntryBB = cast<VPBasicBlock>(R->getEntry()); in getPredicatedThenBlock() 213 auto *Succ0 = dyn_cast<VPBasicBlock>(EntryBB->getSuccessors()[0]); in getPredicatedThenBlock() 214 auto *Succ1 = dyn_cast<VPBasicBlock>(EntryBB->getSuccessors()[1]); in getPredicatedThenBlock() [all …]
|
| H A D | LoopVectorizationPlanner.h | 44 VPBasicBlock *BB = nullptr; 45 VPBasicBlock::iterator InsertPt = VPBasicBlock::iterator(); 69 InsertPt = VPBasicBlock::iterator(); in clearInsertionPoint() 72 VPBasicBlock *getInsertBlock() const { return BB; } in getInsertBlock() 73 VPBasicBlock::iterator getInsertPoint() const { return InsertPt; } in getInsertPoint() 77 VPBasicBlock *Block = nullptr; 78 VPBasicBlock::iterator Point; 85 VPInsertPoint(VPBasicBlock *InsertBlock, VPBasicBlock::iterator InsertPoint) in VPInsertPoint() 91 VPBasicBlock *getBlock() const { return Block; } in getBlock() 92 VPBasicBlock::iterator getPoint() const { return Point; } in getPoint() [all …]
|
| H A D | VPlan.cpp | 148 const VPBasicBlock *VPBlockBase::getEntryBasicBlock() const { in getEntryBasicBlock() 152 return cast<VPBasicBlock>(Block); in getEntryBasicBlock() 155 VPBasicBlock *VPBlockBase::getEntryBasicBlock() { in getEntryBasicBlock() 159 return cast<VPBasicBlock>(Block); in getEntryBasicBlock() 169 const VPBasicBlock *VPBlockBase::getExitingBasicBlock() const { in getExitingBasicBlock() 173 return cast<VPBasicBlock>(Block); in getExitingBasicBlock() 176 VPBasicBlock *VPBlockBase::getExitingBasicBlock() { in getExitingBasicBlock() 180 return cast<VPBasicBlock>(Block); in getExitingBasicBlock() 204 VPBasicBlock::iterator VPBasicBlock::getFirstNonPhi() { in getFirstNonPhi() 282 VPBasicBlock::createEmptyBasicBlock(VPTransformState::CFGState &CFG) { in createEmptyBasicBlock() [all …]
|
| H A D | VPlanVerifier.cpp | 51 auto *VPBB = dyn_cast<VPBasicBlock>(VPB); in verifyBlocksInRegion() 138 static bool verifyPhiRecipes(const VPBasicBlock *VPBB) { in verifyPhiRecipes() 193 verifyVPBasicBlock(const VPBasicBlock *VPBB, in verifyVPBasicBlock() 258 auto *VPBB = dyn_cast<VPBasicBlock>(VPB); in verifyPlanIsValid() 266 const VPBasicBlock *Entry = dyn_cast<VPBasicBlock>(TopRegion->getEntry()); in verifyPlanIsValid() 278 const VPBasicBlock *Exiting = dyn_cast<VPBasicBlock>(TopRegion->getExiting()); in verifyPlanIsValid()
|
| H A D | VPRecipeBuilder.h | 104 VPBasicBlock *VPBB, VPlanPtr &Plan); 123 VFRange &Range, VPBasicBlock *VPBB, 172 VPBasicBlock *handleReplication( 173 Instruction *I, VFRange &Range, VPBasicBlock *VPBB,
|
| H A D | VPlan.h | 59 class VPBasicBlock; variable 332 VPBasicBlock *PrevVPBB = nullptr; 344 SmallDenseMap<VPBasicBlock *, BasicBlock *> VPBB2IRBB; 478 const VPBasicBlock *getEntryBasicBlock() const; 479 VPBasicBlock *getEntryBasicBlock(); 484 const VPBasicBlock *getExitingBasicBlock() const; 485 VPBasicBlock *getExitingBasicBlock(); 664 class VPRecipeBase : public ilist_node_with_parent<VPRecipeBase, VPBasicBlock>, 667 friend VPBasicBlock; variable 671 VPBasicBlock *Parent = nullptr; [all …]
|
| H A D | VPlanHCFGBuilder.h | 62 VPBasicBlock *buildPlainCFG();
|
| H A D | VPlanValue.h | 49 friend class VPBasicBlock; variable 426 class VPBasicBlock; variable
|
| H A D | LoopVectorize.cpp | 1082 for (VPBasicBlock *VPBB : VPBlockUtils::blocksOnly<VPBasicBlock>(Iter)) { in collectPoisonGeneratingRecipes() 3678 VPBasicBlock *LatchVPBB = Plan.getVectorLoopRegion()->getExitingBasicBlock(); in fixVectorizedLoop() 3735 VPBasicBlock *Header = in fixCrossIterationPHIs() 3888 VPBasicBlock *LatchVPBB = in fixReduction() 4166 for (VPBasicBlock *VPBB : VPBlockUtils::blocksOnly<VPBasicBlock>(Iter)) { in fixNonInductionPHIs() 4176 VPBasicBlock *VPBB = VPPhi->getIncomingBlock(i); in fixNonInductionPHIs() 7700 VPBasicBlock *HeaderVPBB = in executePlan() 8115 VPBasicBlock *HeaderVPBB = in createBlockInMask() 8401 VPBasicBlock *VPBB, VPlanPtr &Plan) { in tryToWiden() 8470 VPBasicBlock *VPRecipeBuilder::handleReplication( in handleReplication() [all …]
|
| H A D | VPlanRecipes.cpp | 154 void VPRecipeBase::insertBefore(VPBasicBlock &BB, in insertBefore() 186 void VPRecipeBase::moveBefore(VPBasicBlock &BB, in moveBefore() 308 VPBasicBlock *Header = ParentRegion->getEntryBasicBlock(); in generateInstruction() 334 VPBasicBlock *Header = TopRegion->getEntry()->getEntryBasicBlock(); in generateInstruction() 1260 VPBasicBlock *Parent = getParent(); in execute()
|
| H A D | VPlanSLP.cpp | 115 VPBasicBlock *Parent = cast<VPInstruction>(Operands[0])->getParent(); in areVectorizable()
|
| /openbsd-src/gnu/llvm/llvm/docs/Proposals/ |
| H A D | VectorizationPlan.rst | 117 VPBasicBlock and VPRegionBlock, see below. VPBlockBase models the hierarchical 123 :VPBasicBlock: 124 VPBasicBlock is a subclass of VPBlockBase, and serves as the leaves of the 127 basic-block originate from one or more VPBasicBlocks. VPBasicBlock holds a
|