Lines Matching defs:NewBB
139 // NewBB. If the first isn't true, then LoopSimplify still holds, NewBB
168 BasicBlock *NewBB = nullptr;
170 NewBB = BasicBlock::Create(TI->getContext(), BBName);
172 NewBB = BasicBlock::Create(TI->getContext(), TIBB->getName() + "." +
176 BranchInst *NewBI = BranchInst::Create(DestBB, NewBB);
182 F.insert(++FBBI, NewBB);
185 TI->setSuccessor(SuccNum, NewBB);
188 // merge incoming values from NewBB instead of from TIBB.
192 // We no longer enter through TIBB, now we come in through NewBB.
194 // TIBB to come from NewBB.
204 PN->setIncomingBlock(BBIdx, NewBB);
218 // We found another edge to DestBB, go to NewBB instead.
219 TI->setSuccessor(i, NewBB);
229 DestBB, NewBB, {TIBB}, Options.MergeIdenticalEdges);
232 return NewBB;
236 // ---> NewBB -----\
240 // First, inform the DT about the new path from TIBB to DestBB via NewBB,
245 Updates.push_back({DominatorTree::Insert, TIBB, NewBB});
246 Updates.push_back({DominatorTree::Insert, NewBB, DestBB});
263 // Both in the same loop, the NewBB joins loop.
264 DestLoop->addBasicBlockToLoop(NewBB, *LI);
267 TIL->addBasicBlockToLoop(NewBB, *LI);
270 DestLoop->addBasicBlockToLoop(NewBB, *LI);
279 P->addBasicBlockToLoop(NewBB, *LI);
286 assert(!TIL->contains(NewBB) &&
291 createPHIsForSplitLoopExit(TIBB, NewBB, DestBB);
305 return NewBB;