Lines Matching refs:VD

152   std::pair<BasicBlock *, BasicBlock *> getBlockEdge(const ValueDFS &VD) const {  in getBlockEdge()
153 if (!VD.Def && VD.U) { in getBlockEdge()
154 auto *PHI = cast<PHINode>(VD.U->getUser()); in getBlockEdge()
155 return std::make_pair(PHI->getIncomingBlock(*VD.U), PHI->getParent()); in getBlockEdge()
158 return ::getBlockEdge(VD.PInfo); in getBlockEdge()
195 Value *getMiddleDef(const ValueDFS &VD) const { in getMiddleDef()
196 if (VD.Def) in getMiddleDef()
197 return VD.Def; in getMiddleDef()
204 if (!VD.U) { in getMiddleDef()
205 assert(VD.PInfo && in getMiddleDef()
207 assert(isa<PredicateAssume>(VD.PInfo) && in getMiddleDef()
209 return cast<PredicateAssume>(VD.PInfo)->AssumeInst->getNextNode(); in getMiddleDef()
327 const ValueDFS &VD) { in popStackUntilDFSScope() argument
328 while (!Stack.empty() && !stackIsInScope(Stack, VD)) in popStackUntilDFSScope()
338 ValueDFS VD; in convertUsesToDFSOrdered() local
345 VD.LocalNum = LN_Last; in convertUsesToDFSOrdered()
350 VD.LocalNum = LN_Middle; in convertUsesToDFSOrdered()
356 VD.DFSIn = DomNode->getDFSNumIn(); in convertUsesToDFSOrdered()
357 VD.DFSOut = DomNode->getDFSNumOut(); in convertUsesToDFSOrdered()
358 VD.U = &U; in convertUsesToDFSOrdered()
359 DFSOrderedSet.push_back(VD); in convertUsesToDFSOrdered()
630 ValueDFS VD; in renameUses() local
637 VD.LocalNum = LN_Middle; in renameUses()
641 VD.DFSIn = DomNode->getDFSNumIn(); in renameUses()
642 VD.DFSOut = DomNode->getDFSNumOut(); in renameUses()
643 VD.PInfo = PossibleCopy; in renameUses()
644 OrderedUses.push_back(VD); in renameUses()
651 VD.LocalNum = LN_Last; in renameUses()
654 VD.DFSIn = DomNode->getDFSNumIn(); in renameUses()
655 VD.DFSOut = DomNode->getDFSNumOut(); in renameUses()
656 VD.PInfo = PossibleCopy; in renameUses()
657 VD.EdgeOnly = true; in renameUses()
658 OrderedUses.push_back(VD); in renameUses()
664 VD.LocalNum = LN_First; in renameUses()
667 VD.DFSIn = DomNode->getDFSNumIn(); in renameUses()
668 VD.DFSOut = DomNode->getDFSNumOut(); in renameUses()
669 VD.PInfo = PossibleCopy; in renameUses()
670 OrderedUses.push_back(VD); in renameUses()
686 for (auto &VD : OrderedUses) { in renameUses() local
689 bool PossibleCopy = VD.PInfo != nullptr; in renameUses()
698 LLVM_DEBUG(dbgs() << "Current DFS numbers are (" << VD.DFSIn << "," in renameUses()
699 << VD.DFSOut << ")\n"); in renameUses()
701 bool ShouldPush = (VD.Def || PossibleCopy); in renameUses()
702 bool OutOfScope = !stackIsInScope(RenameStack, VD); in renameUses()
705 popStackUntilDFSScope(RenameStack, VD); in renameUses()
707 RenameStack.push_back(VD); in renameUses()
715 if (VD.Def || PossibleCopy) in renameUses()
730 << *VD.U->get() << " in " << *(VD.U->getUser()) in renameUses()
732 assert(DT.dominates(cast<Instruction>(Result.Def), *VD.U) && in renameUses()
734 VD.U->set(Result.Def); in renameUses()