Home | History | Annotate | Download | only in SelectionDAG

Lines Matching refs:PHI

131 STATISTIC(NumFastIselFailPHI,"Fast isel fails on PHI");
311 /// SplitCriticalSideEffectEdges - Look for critical edges with a PHI value that
313 /// through the predecessor block that doesn't go to the phi block doesn't
319 // Loop for blocks with phi nodes.
325 // For each block with a PHI node, check to see if any of the input values
328 // PHI.
335 // Since this block has a PHI Node, we assume it has multiple input
721 // update PHI nodes later on.
919 case Instruction::PHI: NumFastIselFailPHI++; return;
1148 DEBUG(dbgs() << "Total amount of phi nodes to update: "
1156 // PHI nodes in successors.
1161 MachineInstrBuilder PHI(*MF, FuncInfo->PHINodesToUpdate[i].first);
1162 assert(PHI->isPHI() &&
1163 "This is not a machine PHI node that we are updating!");
1164 if (!FuncInfo->MBB->isSuccessor(PHI->getParent()))
1166 PHI.addReg(FuncInfo->PHINodesToUpdate[i].second).addMBB(FuncInfo->MBB);
1215 // Update PHI Nodes
1218 MachineInstrBuilder PHI(*MF, FuncInfo->PHINodesToUpdate[pi].first);
1219 MachineBasicBlock *PHIBB = PHI->getParent();
1220 assert(PHI->isPHI() &&
1221 "This is not a machine PHI node that we are updating!");
1225 PHI.addReg(FuncInfo->PHINodesToUpdate[pi].second)
1234 PHI.addReg(FuncInfo->PHINodesToUpdate[pi].second).addMBB(cBB);
1241 // Updating the PHI nodes is tricky in this case, since we need to determine
1242 // whether the PHI is a successor of the range check MBB or the jump table MBB
1266 // Update PHI Nodes
1269 MachineInstrBuilder PHI(*MF, FuncInfo->PHINodesToUpdate[pi].first);
1270 MachineBasicBlock *PHIBB = PHI->getParent();
1271 assert(PHI->isPHI() &&
1272 "This is not a machine PHI node that we are updating!");
1275 PHI.addReg(FuncInfo->PHINodesToUpdate[pi].second)
1279 PHI.addReg(FuncInfo->PHINodesToUpdate[pi].second).addMBB(FuncInfo->MBB);
1285 // need to update PHI nodes in that block.
1287 MachineInstrBuilder PHI(*MF, FuncInfo->PHINodesToUpdate[i].first);
1288 assert(PHI->isPHI() &&
1289 "This is not a machine PHI node that we are updating!");
1290 if (FuncInfo->MBB->isSuccessor(PHI->getParent()))
1291 PHI.addReg(FuncInfo->PHINodesToUpdate[i].second).addMBB(FuncInfo->MBB);
1314 // populating PHI nodes in successors.
1317 // Handle any PHI nodes in successors of this chunk, as if we were coming
1318 // from the original BB before switch expansion. Note that PHI nodes can
1330 MachineInstrBuilder PHI(*MF, MBBI);
1331 // This value for this PHI node is recorded in PHINodesToUpdate.
1334 "Didn't find PHI entry!");
1335 if (FuncInfo->PHINodesToUpdate[pn].first == PHI) {
1336 PHI.addReg(FuncInfo->PHINodesToUpdate[pn].second).addMBB(ThisBB);