Lines Matching refs:DominatorTree
25 const DominatorTree::UpdateType Update) const { in isUpdateValid()
41 if (Kind == DominatorTree::Insert && !HasEdge) in isUpdateValid()
45 if (Kind == DominatorTree::Delete && HasEdge) in isUpdateValid()
52 const DominatorTree::UpdateType Update) const { in isSelfDominance()
57 bool DomTreeUpdater::applyLazyUpdate(DominatorTree::UpdateKind Kind, in applyLazyUpdate()
64 const DominatorTree::UpdateType Update = {Kind, From, To}; in applyLazyUpdate()
65 const DominatorTree::UpdateType Invert = {Kind != DominatorTree::Insert in applyLazyUpdate()
66 ? DominatorTree::Insert in applyLazyUpdate()
67 : DominatorTree::Delete, in applyLazyUpdate()
102 DT->applyUpdates(ArrayRef<DominatorTree::UpdateType>(I, E)); in applyDomTreeUpdates()
124 PDT->applyUpdates(ArrayRef<DominatorTree::UpdateType>(I, E)); in applyPostDomTreeUpdates()
265 void DomTreeUpdater::applyUpdates(ArrayRef<DominatorTree::UpdateType> Updates, in applyUpdates()
271 SmallVector<DominatorTree::UpdateType, 8> Seen; in applyUpdates()
277 [U](const DominatorTree::UpdateType S) { return S == U; }) && in applyUpdates()
299 DominatorTree &DomTreeUpdater::getDomTree() { in getDomTree()
316 assert(isUpdateValid({DominatorTree::Insert, From, To}) && in insertEdge()
335 applyLazyUpdate(DominatorTree::Insert, From, To); in insertEdge()
345 if (!isUpdateValid({DominatorTree::Insert, From, To})) in insertEdgeRelaxed()
356 applyLazyUpdate(DominatorTree::Insert, From, To); in insertEdgeRelaxed()
362 assert(isUpdateValid({DominatorTree::Delete, From, To}) && in deleteEdge()
381 applyLazyUpdate(DominatorTree::Delete, From, To); in deleteEdge()
391 if (!isUpdateValid({DominatorTree::Delete, From, To})) in deleteEdgeRelaxed()
402 applyLazyUpdate(DominatorTree::Delete, From, To); in deleteEdgeRelaxed()
450 [&](ArrayRef<DominatorTree::UpdateType>::const_iterator begin, in dump()
451 ArrayRef<DominatorTree::UpdateType>::const_iterator end) { in dump()
459 if (U.getKind() == DominatorTree::Insert) in dump()