Lines Matching refs:DT

65                            const DominatorTree &DT,
96 static bool domTreeLevelBefore(DominatorTree *DT, const Instruction *InstA, in domTreeLevelBefore() argument
103 DomTreeNode *DA = DT->getNode(InstA->getParent()); in domTreeLevelBefore()
104 DomTreeNode *DB = DT->getNode(InstB->getParent()); in domTreeLevelBefore()
109 const BasicBlock &BB, const BasicBlock &Dominator, const DominatorTree &DT, in collectControlConditions() argument
111 assert(DT.dominates(&Dominator, &BB) && "Expecting Dominator to dominate BB"); in collectControlConditions()
124 assert(DT.getNode(CurBlock) && "Expecting a valid DT node for CurBlock"); in collectControlConditions()
125 BasicBlock *IDom = DT.getNode(CurBlock)->getIDom()->getBlock(); in collectControlConditions()
126 assert(DT.dominates(&Dominator, IDom) && in collectControlConditions()
230 const DominatorTree &DT, in isControlFlowEquivalent() argument
232 return isControlFlowEquivalent(*I0.getParent(), *I1.getParent(), DT, PDT); in isControlFlowEquivalent()
236 const DominatorTree &DT, in isControlFlowEquivalent() argument
241 if ((DT.dominates(&BB0, &BB1) && PDT.dominates(&BB1, &BB0)) || in isControlFlowEquivalent()
242 (PDT.dominates(&BB0, &BB1) && DT.dominates(&BB1, &BB0))) in isControlFlowEquivalent()
247 const BasicBlock *CommonDominator = DT.findNearestCommonDominator(&BB0, &BB1); in isControlFlowEquivalent()
253 ControlConditions::collectControlConditions(BB0, *CommonDominator, DT, in isControlFlowEquivalent()
259 ControlConditions::collectControlConditions(BB1, *CommonDominator, DT, in isControlFlowEquivalent()
311 DominatorTree &DT, const PostDominatorTree *PDT, in isSafeToMoveBefore() argument
332 if (!isControlFlowEquivalent(I, InsertPoint, DT, *PDT)) in isSafeToMoveBefore()
335 if (!DT.dominates(&InsertPoint, &I)) in isSafeToMoveBefore()
338 if (UserInst != &InsertPoint && !DT.dominates(&InsertPoint, U)) in isSafeToMoveBefore()
340 if (!DT.dominates(&I, &InsertPoint)) in isSafeToMoveBefore()
343 if (&InsertPoint == OpInst || !DT.dominates(OpInst, &InsertPoint)) in isSafeToMoveBefore()
346 DT.updateDFSNumbers(); in isSafeToMoveBefore()
347 const bool MoveForward = domTreeLevelBefore(&DT, &I, &InsertPoint); in isSafeToMoveBefore()
393 DominatorTree &DT, const PostDominatorTree *PDT, in isSafeToMoveBefore() argument
399 return isSafeToMoveBefore(I, InsertPoint, DT, PDT, DI); in isSafeToMoveBefore()
404 DominatorTree &DT, in moveInstructionsToTheBeginning() argument
413 if (isSafeToMoveBefore(I, *MovePos, DT, &PDT, &DI)) in moveInstructionsToTheBeginning()
419 DominatorTree &DT, in moveInstructionsToTheEnd() argument
425 if (isSafeToMoveBefore(I, *MovePos, DT, &PDT, &DI)) in moveInstructionsToTheEnd()