Home | History | Annotate | Download | only in Utils

Lines Matching defs:PHI

73     PHINode *InnerEHValuesPHI;   ///< PHI for EH values from landingpad insts.
80 // If there are PHI nodes in the unwind destination block, we need to keep
87 PHINode *PHI = cast<PHINode>(I);
88 UnwindDestPHIValues.push_back(PHI->getIncomingValueForBlock(InvokeBB));
112 /// Add incoming-PHI values to the unwind destination block for the given
121 PHINode *phi = cast<PHINode>(I);
122 phi->addIncoming(UnwindDestPHIValues[i], src);
153 // Create a PHI for the exception values.
185 /// it rewrites them to be invokes that jump to InvokeDest and fills in the PHI
276 // Update any PHI nodes in the exceptional block to indicate that there
285 // Now that everything is happy, we have one final detail. The PHI nodes in
288 // PHI node) now.
305 // If there are PHI nodes in the unwind destination block, we need to keep
312 PHINode *PHI = dyn_cast<PHINode>(&I);
313 if (!PHI)
315 UnwindDestPHIValues.push_back(PHI->getIncomingValueForBlock(InvokeBB));
318 // Add incoming-PHI values to the unwind destination block for the given basic
323 PHINode *PHI = cast<PHINode>(I);
324 PHI->addIncoming(V, Src);
374 // Update any PHI nodes in the exceptional block to indicate that there
378 // Now that everything is happy, we have one final detail. The PHI nodes in
381 // PHI node) now.
1490 // phi below.
1574 // Split the basic block. This guarantees that no PHI nodes will have to be
1608 PHINode *PHI = nullptr;
1610 // The PHI node should go at the front of the new basic block to merge all
1613 PHI = PHINode::Create(RTy, Returns.size(), TheCall->getName(),
1616 // PHI node as their operand.
1617 TheCall->replaceAllUsesWith(PHI);
1620 // Loop over all of the return instructions adding entries to the PHI node
1622 if (PHI) {
1625 assert(RI->getReturnValue()->getType() == PHI->getType() &&
1627 PHI->addIncoming(RI->getReturnValue(), RI->getParent());
1656 // Update PHI nodes that use the ReturnBB to use the AfterCallBB.
1692 CalleeEntry->replaceAllUsesWith(OrigBB); // Update PHI nodes
1701 // If we inserted a phi node, check to see if it has a single value (e.g. all
1702 // the entries are the same or undef). If so, remove the PHI so it doesn't
1704 if (PHI) {
1706 if (Value *V = SimplifyInstruction(PHI, DL, nullptr, nullptr,
1708 PHI->replaceAllUsesWith(V);
1709 PHI->eraseFromParent();