Home | History | Annotate | Download | only in CodeGen

Lines Matching defs:Phi

226   // Eliminate blocks that contain only PHI nodes and an
345 /// EliminateMostlyEmptyBlocks - eliminate blocks that contain only PHI nodes,
361 // If the instruction before the branch (skipping debug info) isn't a phi
390 /// single uncond branch between them, and BB contains no other non-phi
394 // We only want to eliminate blocks whose phi nodes are used by phi nodes in
418 // If BB and DestBB contain any common predecessors, then the phi nodes in BB
427 // It is faster to get preds from a PHI than with pred_iterator.
443 // If V2 is a phi node in BB, look up what the mapped value will be.
458 /// EliminateMostlyEmptyBlock - Eliminate a basic block that have only phi's and
491 // Two options: either the InVal is a phi node defined in BB or it is some
495 // Add all of the input values of the input PHI as inputs of this phi.
675 // Figure out which BB this cast is used in. For PHI's this is the
818 // Don't bother for PHI nodes.
917 // Don't bother for PHI nodes.
988 // Don't bother for PHI nodes.
1066 // %res.phi.else = phi <16 x i32> [ %6, %cond.load ], [ undef, %0 ]
1074 // %11 = insertelement <16 x i32> %res.phi.else, i32 %10, i32 1
1078 // %res.phi.else3 = phi <16 x i32> [ %11, %cond.load1 ], [ %res.phi.else, %else ]
1110 PHINode *Phi = nullptr;
1118 // %res.phi.else3 = phi <16 x i32> [ %11, %cond.load1 ], [ %res.phi.else, %else ]
1124 Phi = Builder.CreatePHI(VecType, 2, "res.phi.else");
1125 Phi->addIncoming(VResult, CondBlock);
1126 Phi->addIncoming(PrevPhi, PrevIfBlock);
1127 PrevPhi = Phi;
1128 VResult = Phi;
1159 Phi = Builder.CreatePHI(VecType, 2, "res.phi.select");
1160 Phi->addIncoming(VResult, CondBlock);
1161 Phi->addIncoming(PrevPhi, PrevIfBlock);
1162 Value *NewI = Builder.CreateSelect(Mask, Phi, Src0);
1407 /// %retval = phi i32 [ %tmp0, %bb0 ], [ %tmp1, %bb1 ], [ %tmp2, %bb2 ]
1456 // Make sure there are no instructions between the PHI and return, or that the
1479 // Make sure the phi value is indeed produced by the tail call.
3143 // Try to collapse single-value PHI nodes. This is necessary to undo
3149 // Use a worklist to iteratively look through PHI nodes, and ensure that
3150 // the addressing mode obtained from the non-PHI roots of the graph
3170 // For a PHI node, push all of its incoming values.
3199 // for all other roots of the PHI traversal. Also, when choosing one
3741 // Make sure none of the uses are PHI nodes.
3855 // The select itself is replaced with a PHI Node.
4300 // to introduce PHI nodes too late to be cleaned up. If we detect such a
4301 // trivial PHI, go ahead and zap it here.
4631 // Update PHI nodes in both successors. The original BB needs to be
4632 // replaced in one succesor's PHI nodes, because the branch comes now from
4634 // incoming edge to the PHI nodes, because both branch instructions target
4637 // we perfrom the correct update for the PHI nodes.