Lines Matching refs:BB
48 void DeleteBasicBlock(BasicBlock *BB);
104 for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) {
105 if (CheckUnwind && isa<ResumeInst>(BB->getTerminator())) {
108 } else if (CheckReturn && isa<ReturnInst>(BB->getTerminator())) {
115 for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ++I)
176 for (Function::iterator BB = F->begin(), E = F->end(); BB != E; ++BB) {
177 if (InvokeInst *II = dyn_cast<InvokeInst>(BB->getTerminator()))
200 BB->getInstList().pop_back();
204 DeleteBasicBlock(UnwindBlock); // Delete the new BB.
210 for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; )
215 // by splitting the BB, adding the unreachable, then deleting the
216 // new BB.
217 BasicBlock *New = BB->splitBasicBlock(I);
220 BB->getInstList().pop_back();
221 new UnreachableInst(BB->getContext(), BB);
223 DeleteBasicBlock(New); // Delete the new BB.
235 /// exist in the BB.
236 void PruneEH::DeleteBasicBlock(BasicBlock *BB) {
237 assert(pred_begin(BB) == pred_end(BB) && "BB is not dead!");
240 CallGraphNode *CGN = CG[BB->getParent()];
241 for (BasicBlock::iterator I = BB->end(), E = BB->begin(); I != E; ) {
253 std::vector<BasicBlock*> Succs(succ_begin(BB), succ_end(BB));
256 Succs[i]->removePredecessor(BB);
258 BB->eraseFromParent();