Lines Matching refs:PN
83 bool hasLiveIncomingEdge(const PHINode *PN, const BasicBlock *InBB) const { in hasLiveIncomingEdge() argument
85 const BasicBlock* BB = PN->getParent(); in hasLiveIncomingEdge()
350 if (const auto *PN = dyn_cast<PHINode>(V)) { in getBaseType() local
351 append_range(Worklist, PN->incoming_values()); in getBaseType()
469 bool hasLiveIncomingEdge(const PHINode *PN, const BasicBlock *InBB) const { in hasLiveIncomingEdge() argument
470 return CD.hasLiveIncomingEdge(PN, InBB); in hasLiveIncomingEdge()
665 if (const PHINode *PN = dyn_cast<PHINode>(&I)) { in removeValidUnrelocatedDefs() local
666 if (containsGCPtrType(PN->getType())) { in removeValidUnrelocatedDefs()
670 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) { in removeValidUnrelocatedDefs()
671 const BasicBlock *InBB = PN->getIncomingBlock(i); in removeValidUnrelocatedDefs()
673 !CD.hasLiveIncomingEdge(PN, InBB)) in removeValidUnrelocatedDefs()
676 const Value *InValue = PN->getIncomingValue(i); in removeValidUnrelocatedDefs()
801 if (const PHINode *PN = dyn_cast<PHINode>(&I)) { in verifyInstruction() local
802 if (containsGCPtrType(PN->getType())) in verifyInstruction()
803 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) { in verifyInstruction()
804 const BasicBlock *InBB = PN->getIncomingBlock(i); in verifyInstruction()
807 !Tracker->hasLiveIncomingEdge(PN, InBB)) in verifyInstruction()
810 const Value *InValue = PN->getIncomingValue(i); in verifyInstruction()
814 reportInvalidUse(*InValue, *PN); in verifyInstruction()