reference, declaration → definition definition → references, declarations, derived classes, virtual overrides reference to multiple definitions → definitions unreferenced |
727 if (Instruction *TI = PN.getParent()->getTerminator()) 731 Instruction *FirstInst = cast<Instruction>(PN.getIncomingValue(0)); 734 return FoldPHIArgGEPIntoPHI(PN); 736 return FoldPHIArgLoadIntoPHI(PN); 750 if (PN.getType()->isIntegerTy() && CastSrcTy->isIntegerTy()) { 751 if (!shouldChangeType(PN.getType(), CastSrcTy)) 759 return FoldPHIArgBinOpIntoPHI(PN); 765 for (unsigned i = 1, e = PN.getNumIncomingValues(); i != e; ++i) { 766 Instruction *I = dyn_cast<Instruction>(PN.getIncomingValue(i)); 780 PN.getNumIncomingValues(), 781 PN.getName()+".in"); 784 NewPN->addIncoming(InVal, PN.getIncomingBlock(0)); 787 for (unsigned i = 1, e = PN.getNumIncomingValues(); i != e; ++i) { 788 Value *NewInVal = cast<Instruction>(PN.getIncomingValue(i))->getOperand(0); 791 NewPN->addIncoming(NewInVal, PN.getIncomingBlock(i)); 801 InsertNewInstBefore(NewPN, PN); 808 PN.getType()); 809 PHIArgMergedDebugLoc(NewCI, PN); 815 BinOp->copyIRFlags(PN.getIncomingValue(0)); 817 for (unsigned i = 1, e = PN.getNumIncomingValues(); i != e; ++i) 818 BinOp->andIRFlags(PN.getIncomingValue(i)); 820 PHIArgMergedDebugLoc(BinOp, PN); 827 PHIArgMergedDebugLoc(NewCI, PN);