Lines Matching refs:CommonExitBlock
277 BasicBlock *CommonExitBlock = nullptr; in getCommonExitBlock() local
283 if (!CommonExitBlock) { in getCommonExitBlock()
284 CommonExitBlock = Succ; in getCommonExitBlock()
287 if (CommonExitBlock == Succ) in getCommonExitBlock()
298 return CommonExitBlock; in getCommonExitBlock()
351 CodeExtractor::findOrCreateBlockForHoisting(BasicBlock *CommonExitBlock) { in findOrCreateBlockForHoisting() argument
353 assert(!Blocks.count(CommonExitBlock) && in findOrCreateBlockForHoisting()
355 for (auto *Pred : predecessors(CommonExitBlock)) { in findOrCreateBlockForHoisting()
386 assert(!getFirstPHI(CommonExitBlock) && "Phi not expected"); in findOrCreateBlockForHoisting()
389 BasicBlock *NewExitBlock = CommonExitBlock->splitBasicBlock( in findOrCreateBlockForHoisting()
390 CommonExitBlock->getFirstNonPHI()->getIterator()); in findOrCreateBlockForHoisting()
392 for (auto PI = pred_begin(CommonExitBlock), PE = pred_end(CommonExitBlock); in findOrCreateBlockForHoisting()
397 Pred->getTerminator()->replaceUsesOfWith(CommonExitBlock, NewExitBlock); in findOrCreateBlockForHoisting()
400 Blocks.insert(CommonExitBlock); in findOrCreateBlockForHoisting()
401 return CommonExitBlock; in findOrCreateBlockForHoisting()