Lines Matching refs:BasicBlock

1 //===-- Transform/Utils/BasicBlockUtils.h - BasicBlock Utils ----*- C++ -*-===//
18 // FIXME: Move to this file: BasicBlock::removePredecessor, BB::splitBasicBlock
20 #include "llvm/BasicBlock.h"
34 void DeleteDeadBlock(BasicBlock *BB);
41 void FoldSingleEntryPHINodes(BasicBlock *BB, Pass *P = 0);
48 bool DeleteDeadPHIs(BasicBlock *BB, const TargetLibraryInfo *TLI = 0);
52 bool MergeBlockIntoPredecessor(BasicBlock *BB, Pass *P = 0);
57 void ReplaceInstWithValue(BasicBlock::InstListType &BIL,
58 BasicBlock::iterator &BI, Value *V);
64 void ReplaceInstWithInst(BasicBlock::InstListType &BIL,
65 BasicBlock::iterator &BI, Instruction *I);
78 SmallVectorImpl<std::pair<const BasicBlock*,const BasicBlock*> > &Result);
85 unsigned GetSuccessorNumber(BasicBlock *BB, BasicBlock *Succ);
112 BasicBlock *SplitCriticalEdge(TerminatorInst *TI, unsigned SuccNum,
117 inline BasicBlock *SplitCriticalEdge(BasicBlock *BB, succ_iterator SI,
127 inline bool SplitCriticalEdge(BasicBlock *Succ, pred_iterator PI, Pass *P = 0) {
140 inline BasicBlock *SplitCriticalEdge(BasicBlock *Src, BasicBlock *Dst,
157 BasicBlock *SplitEdge(BasicBlock *From, BasicBlock *To, Pass *P);
164 BasicBlock *SplitBlock(BasicBlock *Old, Instruction *SplitPt, Pass *P);
178 BasicBlock *SplitBlockPredecessors(BasicBlock *BB, ArrayRef<BasicBlock*> Preds,
194 void SplitLandingPadPredecessors(BasicBlock *OrigBB,ArrayRef<BasicBlock*> Preds,
196 Pass *P, SmallVectorImpl<BasicBlock*> &NewBBs);
203 ReturnInst *FoldReturnIntoUncondBranch(ReturnInst *RI, BasicBlock *BB,
204 BasicBlock *Pred);