Home | History | Annotate | Download | only in Utils

Lines Matching refs:BasicBlock

31   bool FlattenParallelAndOr(BasicBlock *BB, IRBuilder<> &Builder,
36 bool MergeIfRegion(BasicBlock *BB, IRBuilder<> &Builder, Pass *P = nullptr);
42 bool CompareIfRegionBlock(BasicBlock *Head1, BasicBlock *Head2,
43 BasicBlock *Block1, BasicBlock *Block2);
47 bool run(BasicBlock *BB);
125 bool FlattenCFGOpt::FlattenParallelAndOr(BasicBlock *BB, IRBuilder<> &Builder,
131 BasicBlock *LastCondBlock = nullptr;
132 BasicBlock *FirstCondBlock = nullptr;
133 BasicBlock *UnCondBlock = nullptr;
137 SmallPtrSet<BasicBlock *, 16> Preds(pred_begin(BB), pred_end(BB));
138 for (SmallPtrSetIterator<BasicBlock *> PI = Preds.begin(), PE = Preds.end();
140 BasicBlock *Pred = *PI;
147 BasicBlock *PP = Pred->getSinglePredecessor();
180 for (BasicBlock::iterator BI = Pred->begin(), BE = PBI; BI != BE;) {
195 BasicBlock *PS1 = PBI->getSuccessor(0);
196 BasicBlock *PS2 = PBI->getSuccessor(1);
197 BasicBlock *PS = (PS1 == BB) ? PS2 : PS1;
224 BasicBlock *PS1 = TBB->getSuccessor(0);
225 BasicBlock *PS2 = TBB->getSuccessor(1);
239 BasicBlock *CurrBlock = LastCondBlock;
268 BasicBlock *CB;
313 bool FlattenCFGOpt::CompareIfRegionBlock(BasicBlock *Head1, BasicBlock *Head2,
314 BasicBlock *Block1,
315 BasicBlock *Block2) {
328 BasicBlock::iterator iter1 = Block1->begin();
329 BasicBlock::iterator end1 = Block1->getTerminator();
330 BasicBlock::iterator iter2 = Block2->begin();
331 BasicBlock::iterator end2 = Block2->getTerminator();
358 for (BasicBlock::iterator BI = PBI2, BE = PTI2; BI != BE; ++BI) {
388 bool FlattenCFGOpt::MergeIfRegion(BasicBlock *BB, IRBuilder<> &Builder,
390 BasicBlock *IfTrue2, *IfFalse2;
396 BasicBlock *SecondEntryBlock = CInst2->getParent();
400 BasicBlock *IfTrue1, *IfFalse1;
406 BasicBlock *FirstEntryBlock = CInst1->getParent();
427 for (BasicBlock::iterator BI = PBI2, BE = PTI2; BI != BE; ++BI) {
440 BasicBlock *SaveInsertBB = Builder.GetInsertBlock();
441 BasicBlock::iterator SaveInsertPt = Builder.GetInsertPoint();
466 bool FlattenCFGOpt::run(BasicBlock *BB) {
486 bool llvm::FlattenCFG(BasicBlock *BB, AliasAnalysis *AA) {