Home | History | Annotate | Download | only in Analysis

Lines Matching refs:BasicBlock

1 //===-- CFG.cpp - BasicBlock analysis --------------------------------------==//
28 SmallVectorImpl<std::pair<const BasicBlock*,const BasicBlock*> > &Result) {
29 const BasicBlock *BB = &F.getEntryBlock();
33 SmallPtrSet<const BasicBlock*, 8> Visited;
34 SmallVector<std::pair<const BasicBlock*, succ_const_iterator>, 8> VisitStack;
35 SmallPtrSet<const BasicBlock*, 8> InStack;
41 std::pair<const BasicBlock*, succ_const_iterator> &Top = VisitStack.back();
42 const BasicBlock *ParentBB = Top.first;
72 unsigned llvm::GetSuccessorNumber(BasicBlock *BB, BasicBlock *Succ) {
92 const BasicBlock *Dest = TI->getSuccessor(SuccNum);
97 const BasicBlock *FirstPred = *I;
112 static const Loop *getOutermostLoop(const LoopInfo *LI, const BasicBlock *BB) {
123 const BasicBlock *BB1, const BasicBlock *BB2) {
129 static bool isPotentiallyReachableInner(SmallVectorImpl<BasicBlock *> &Worklist,
130 BasicBlock *StopBB,
141 SmallSet<const BasicBlock*, 64> Visited;
143 BasicBlock *BB = Worklist.pop_back_val();
174 bool llvm::isPotentiallyReachable(const BasicBlock *A, const BasicBlock *B,
179 SmallVector<BasicBlock*, 32> Worklist;
180 Worklist.push_back(const_cast<BasicBlock*>(A));
182 return isPotentiallyReachableInner(Worklist, const_cast<BasicBlock*>(B),
191 SmallVector<BasicBlock*, 32> Worklist;
199 BasicBlock *BB = const_cast<BasicBlock *>(A->getParent());
207 for (BasicBlock::const_iterator I = A, E = BB->end(); I != E; ++I) {
225 Worklist.push_back(const_cast<BasicBlock*>(A->getParent()));
234 const_cast<BasicBlock*>(B->getParent()),