Lines Matching refs:PHI

50     PHINode *InnerEHValuesPHI;   ///< PHI for EH values from landingpad insts.
57 // If there are PHI nodes in the unwind destination block, we need to keep
64 PHINode *PHI = cast<PHINode>(I);
65 UnwindDestPHIValues.push_back(PHI->getIncomingValueForBlock(InvokeBB));
89 /// addIncomingPHIValuesFor - Add incoming-PHI values to the unwind
131 // Create a PHI for the exception values.
163 /// it rewrites them to be invokes that jump to InvokeDest and fills in the PHI
203 // Update any PHI nodes in the exceptional block to indicate that there is
256 // Now that everything is happy, we have one final detail. The PHI nodes in
259 // PHI node) now.
888 // Split the basic block. This guarantees that no PHI nodes will have to be
921 PHINode *PHI = nullptr;
923 // The PHI node should go at the front of the new basic block to merge all
926 PHI = PHINode::Create(RTy, Returns.size(), TheCall->getName(),
929 // PHI node as their operand.
930 TheCall->replaceAllUsesWith(PHI);
933 // Loop over all of the return instructions adding entries to the PHI node
935 if (PHI) {
938 assert(RI->getReturnValue()->getType() == PHI->getType() &&
940 PHI->addIncoming(RI->getReturnValue(), RI->getParent());
970 // Update PHI nodes that use the ReturnBB to use the AfterCallBB.
1006 CalleeEntry->replaceAllUsesWith(OrigBB); // Update PHI nodes
1016 // the entries are the same or undef). If so, remove the PHI so it doesn't
1018 if (PHI) {
1019 if (Value *V = SimplifyInstruction(PHI, IFI.DL)) {
1020 PHI->replaceAllUsesWith(V);
1021 PHI->eraseFromParent();