Lines Matching defs:phi
3377 /* phi instructions are left partially constructed. We don't resolve
3379 * the phi's srcs might be defined after the phi due to back edges in
3385 struct ir3_instruction *phi, **dst;
3387 /* NOTE: phi's should be lowered to scalar at this point */
3392 phi = ir3_instr_create(ctx->block, OPC_META_PHI, 1,
3394 __ssa_dst(phi);
3395 phi->phi.nphi = nphi;
3397 dst[0] = phi;
3407 struct ir3_instruction *phi, nir_phi_instr *nphi)
3412 __ssa_dst(continue_phi)->flags = phi->dsts[0]->flags;
3416 read_phi_src(ctx, blk->predecessors[i], phi, nphi);
3420 ir3_src_create(continue_phi, INVALID_REG, phi->dsts[0]->flags);
3437 unreachable("couldn't find phi node ir3 block");
3444 foreach_instr (phi, &block->instr_list) {
3445 if (phi->opc != OPC_META_PHI)
3448 nir_phi_instr *nphi = phi->phi.nphi;
3455 struct ir3_instruction *src = read_phi_src(ctx, pred, phi, nphi);
3457 __ssa_src(phi, src, 0);
3460 ir3_src_create(phi, INVALID_REG, phi->dsts[0]->flags);