Lines Matching refs:PN
84 bool hasLiveIncomingEdge(const PHINode *PN, const BasicBlock *InBB) const {
86 const BasicBlock* BB = PN->getParent();
351 if (const auto *PN = dyn_cast<PHINode>(V)) {
352 for (Value *InV: PN->incoming_values())
460 bool hasLiveIncomingEdge(const PHINode *PN, const BasicBlock *InBB) const {
461 return CD.hasLiveIncomingEdge(PN, InBB);
659 if (const PHINode *PN = dyn_cast<PHINode>(&I)) {
660 if (containsGCPtrType(PN->getType())) {
664 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) {
665 const BasicBlock *InBB = PN->getIncomingBlock(i);
667 !CD.hasLiveIncomingEdge(PN, InBB))
670 const Value *InValue = PN->getIncomingValue(i);
795 if (const PHINode *PN = dyn_cast<PHINode>(&I)) {
796 if (containsGCPtrType(PN->getType()))
797 for (unsigned i = 0, e = PN->getNumIncomingValues(); i != e; ++i) {
798 const BasicBlock *InBB = PN->getIncomingBlock(i);
801 !Tracker->hasLiveIncomingEdge(PN, InBB))
804 const Value *InValue = PN->getIncomingValue(i);
808 reportInvalidUse(*InValue, *PN);