Lines Matching refs:basicblock
649 /// \brief Per-BasicBlock state.
671 SmallVector<BasicBlock *, 2> Preds;
674 SmallVector<BasicBlock *, 2> Succs;
758 typedef SmallVectorImpl<BasicBlock *>::const_iterator edge_iterator;
764 void addSucc(BasicBlock *Succ) { Succs.push_back(Succ); }
765 void addPred(BasicBlock *Pred) { Preds.push_back(Pred); }
955 static void GenerateARCBBEntranceAnnotation(const char *Name, BasicBlock *BB,
998 static void GenerateARCBBTerminatorAnnotation(const char *Name, BasicBlock *BB,
1120 #define ANNOTATE_BOTTOMUP_BBSTART(states, basicblock)
1121 #define ANNOTATE_BOTTOMUP_BBEND(states, basicblock)
1122 #define ANNOTATE_TOPDOWN_BBSTART(states, basicblock)
1123 #define ANNOTATE_TOPDOWN_BBEND(states, basicblock)
1170 void CheckForCFGHazards(const BasicBlock *BB,
1171 DenseMap<const BasicBlock *, BBState> &BBStates,
1174 BasicBlock *BB,
1177 bool VisitBottomUp(BasicBlock *BB,
1178 DenseMap<const BasicBlock *, BBState> &BBStates,
1183 bool VisitTopDown(BasicBlock *BB,
1184 DenseMap<const BasicBlock *, BBState> &BBStates,
1187 DenseMap<const BasicBlock *, BBState> &BBStates,
1197 bool ConnectTDBUTraversals(DenseMap<const BasicBlock *, BBState> &BBStates,
1210 bool PerformCodePlacement(DenseMap<const BasicBlock *, BBState> &BBStates,
1282 BasicBlock::const_iterator I = Call;
1288 BasicBlock *RetainRVParent = RetainRV->getParent();
1290 BasicBlock::const_iterator I = RetainRVParent->begin();
1300 BasicBlock::iterator I = RetainRV, Begin = RetainRV->getParent()->begin();
1604 SmallPtrSet<const BasicBlock *, 4> Visited;
1742 ObjCARCOpt::CheckForCFGHazards(const BasicBlock *BB,
1743 DenseMap<const BasicBlock *, BBState> &BBStates,
1772 const DenseMap<const BasicBlock *, BBState>::iterator BBI =
1836 BasicBlock *BB,
1992 S.InsertReverseInsertPt(llvm::next(BasicBlock::iterator(Inst)));
2006 S.InsertReverseInsertPt(llvm::next(BasicBlock::iterator(Inst)));
2030 ObjCARCOpt::VisitBottomUp(BasicBlock *BB,
2031 DenseMap<const BasicBlock *, BBState> &BBStates,
2044 const BasicBlock *Succ = *SI;
2045 DenseMap<const BasicBlock *, BBState>::iterator I = BBStates.find(Succ);
2062 for (BasicBlock::iterator I = BB->end(), E = BB->begin(); I != E; --I) {
2079 BasicBlock *Pred = *PI;
2242 ObjCARCOpt::VisitTopDown(BasicBlock *BB,
2243 DenseMap<const BasicBlock *, BBState> &BBStates,
2254 const BasicBlock *Pred = *PI;
2255 DenseMap<const BasicBlock *, BBState>::iterator I = BBStates.find(Pred);
2272 for (BasicBlock::iterator I = BB->begin(), E = BB->end(); I != E; ++I) {
2293 SmallVectorImpl<BasicBlock *> &PostOrder,
2294 SmallVectorImpl<BasicBlock *> &ReverseCFGPostOrder,
2296 DenseMap<const BasicBlock *, BBState> &BBStates) {
2298 SmallPtrSet<BasicBlock *, 16> Visited;
2301 SmallPtrSet<BasicBlock *, 16> OnStack;
2302 SmallVector<std::pair<BasicBlock *, succ_iterator>, 16> SuccStack;
2306 BasicBlock *EntryBB = &F.getEntryBlock();
2315 BasicBlock *CurrBB = SuccStack.back().first;
2320 BasicBlock *SuccBB = *SuccStack.back().second++;
2346 SmallVector<std::pair<BasicBlock *, BBState::edge_iterator>, 16> PredStack;
2348 BasicBlock *ExitBB = I;
2361 BasicBlock *BB = *PredStack.back().second++;
2375 DenseMap<const BasicBlock *, BBState> &BBStates,
2384 SmallVector<BasicBlock *, 16> PostOrder;
2385 SmallVector<BasicBlock *, 16> ReverseCFGPostOrder;
2392 for (SmallVectorImpl<BasicBlock *>::const_reverse_iterator I =
2399 for (SmallVectorImpl<BasicBlock *>::const_reverse_iterator I =
2475 ObjCARCOpt::ConnectTDBUTraversals(DenseMap<const BasicBlock *, BBState>
2682 ObjCARCOpt::PerformCodePlacement(DenseMap<const BasicBlock *, BBState>
2780 BasicBlock *CurrentBB = Current.getBasicBlockIterator();
2781 for (BasicBlock::iterator B = CurrentBB->begin(),
2923 DenseMap<const BasicBlock *, BBState> BBStates;
2945 SmallPtrSet<const BasicBlock *, 4> &Visited,
2971 FindPredecessorRetainWithSafePath(const Value *Arg, BasicBlock *BB,
2974 SmallPtrSet<const BasicBlock *, 4> &Visited,
2998 FindPredecessorAutoreleaseWithSafePath(const Value *Arg, BasicBlock *BB,
3001 SmallPtrSet<const BasicBlock *, 4> &V,
3036 SmallPtrSet<const BasicBlock *, 4> Visited;
3038 BasicBlock *BB = FI;