Lines Matching refs:BasicBlock

40   bool FlattenParallelAndOr(BasicBlock *BB, IRBuilder<> &Builder);
45 bool MergeIfRegion(BasicBlock *BB, IRBuilder<> &Builder);
52 bool CompareIfRegionBlock(BasicBlock *Block1, BasicBlock *Block2,
53 BasicBlock *Head2);
58 bool run(BasicBlock *BB);
136 bool FlattenCFGOpt::FlattenParallelAndOr(BasicBlock *BB, IRBuilder<> &Builder) { in FlattenParallelAndOr()
141 BasicBlock *LastCondBlock = nullptr; in FlattenParallelAndOr()
142 BasicBlock *FirstCondBlock = nullptr; in FlattenParallelAndOr()
143 BasicBlock *UnCondBlock = nullptr; in FlattenParallelAndOr()
147 SmallPtrSet<BasicBlock *, 16> Preds(pred_begin(BB), pred_end(BB)); in FlattenParallelAndOr()
148 for (BasicBlock *Pred : Preds) { in FlattenParallelAndOr()
155 BasicBlock *PP = Pred->getSinglePredecessor(); in FlattenParallelAndOr()
188 for (BasicBlock::iterator BI = Pred->begin(), BE = PBI->getIterator(); in FlattenParallelAndOr()
204 BasicBlock *PS1 = PBI->getSuccessor(0); in FlattenParallelAndOr()
205 BasicBlock *PS2 = PBI->getSuccessor(1); in FlattenParallelAndOr()
206 BasicBlock *PS = (PS1 == BB) ? PS2 : PS1; in FlattenParallelAndOr()
233 BasicBlock *PS1 = TBB->getSuccessor(0); in FlattenParallelAndOr()
234 BasicBlock *PS2 = TBB->getSuccessor(1); in FlattenParallelAndOr()
248 BasicBlock *CurrBlock = LastCondBlock; in FlattenParallelAndOr()
278 BasicBlock *CB; in FlattenParallelAndOr()
320 bool FlattenCFGOpt::CompareIfRegionBlock(BasicBlock *Block1, BasicBlock *Block2, in CompareIfRegionBlock()
321 BasicBlock *Head2) { in CompareIfRegionBlock()
327 BasicBlock::iterator iter1 = Block1->begin(); in CompareIfRegionBlock()
328 BasicBlock::iterator end1 = Block1->getTerminator()->getIterator(); in CompareIfRegionBlock()
329 BasicBlock::iterator iter2 = Block2->begin(); in CompareIfRegionBlock()
330 BasicBlock::iterator end2 = Block2->getTerminator()->getIterator(); in CompareIfRegionBlock()
357 for (BasicBlock::iterator BI(PBI2), BE(PTI2); BI != BE; ++BI) { in CompareIfRegionBlock()
409 bool FlattenCFGOpt::MergeIfRegion(BasicBlock *BB, IRBuilder<> &Builder) { in MergeIfRegion()
414 BasicBlock *IfTrue2, *IfFalse2; in MergeIfRegion()
422 BasicBlock *SecondEntryBlock = CInst2->getParent(); in MergeIfRegion()
426 BasicBlock *IfTrue1, *IfFalse1; in MergeIfRegion()
434 BasicBlock *FirstEntryBlock = CInst1->getParent(); in MergeIfRegion()
478 for (BasicBlock::iterator BI(PBI2), BE(PTI2); BI != BE; ++BI) { in MergeIfRegion()
490 BasicBlock *SaveInsertBB = Builder.GetInsertBlock(); in MergeIfRegion()
491 BasicBlock::iterator SaveInsertPt = Builder.GetInsertPoint(); in MergeIfRegion()
519 bool FlattenCFGOpt::run(BasicBlock *BB) { in run()
533 bool llvm::FlattenCFG(BasicBlock *BB, AAResults *AA) { in FlattenCFG()