Lines Matching refs:BB
118 void prepareEHPad(BasicBlock *BB, bool NeedPersonality, unsigned Index = 0);
178 auto *BB = WL.pop_back_val(); in eraseDeadBBsAndChildren() local
179 if (!pred_empty(BB)) in eraseDeadBBsAndChildren()
181 WL.append(succ_begin(BB), succ_end(BB)); in eraseDeadBBsAndChildren()
182 DeleteDeadBlock(BB); in eraseDeadBBsAndChildren()
210 auto *BB = ThrowI->getParent(); in prepareThrows() local
211 SmallVector<BasicBlock *, 4> Succs(successors(BB)); in prepareThrows()
212 BB->erase(std::next(BasicBlock::iterator(ThrowI)), BB->end()); in prepareThrows()
213 IRB.SetInsertPoint(BB); in prepareThrows()
227 for (BasicBlock &BB : F) { in prepareEHPads()
228 if (!BB.isEHPad()) in prepareEHPads()
230 auto *Pad = BB.getFirstNonPHI(); in prepareEHPads()
232 CatchPads.push_back(&BB); in prepareEHPads()
234 CleanupPads.push_back(&BB); in prepareEHPads()
283 for (auto *BB : CatchPads) { in prepareEHPads() local
284 auto *CPI = cast<CatchPadInst>(BB->getFirstNonPHI()); in prepareEHPads()
289 prepareEHPad(BB, false); in prepareEHPads()
291 prepareEHPad(BB, true, Index++); in prepareEHPads()
295 for (auto *BB : CleanupPads) in prepareEHPads() local
296 prepareEHPad(BB, false); in prepareEHPads()
303 void WasmEHPrepareImpl::prepareEHPad(BasicBlock *BB, bool NeedPersonality, in prepareEHPad() argument
305 assert(BB->isEHPad() && "BB is not an EHPad!"); in prepareEHPad()
306 IRBuilder<> IRB(BB->getContext()); in prepareEHPad()
307 IRB.SetInsertPoint(BB, BB->getFirstInsertionPt()); in prepareEHPad()
309 auto *FPI = cast<FuncletPadInst>(BB->getFirstNonPHI()); in prepareEHPad()
385 for (const auto &BB : *F) { in calculateWasmEHInfo()
386 if (!BB.isEHPad()) in calculateWasmEHInfo()
388 const Instruction *Pad = BB.getFirstNonPHI(); in calculateWasmEHInfo()
397 EHInfo.setUnwindDest(&BB, *CatchSwitch->handlers().begin()); in calculateWasmEHInfo()
399 EHInfo.setUnwindDest(&BB, UnwindBB); in calculateWasmEHInfo()