Lines Matching defs:instr
39 opt_undef_csel(nir_alu_instr *instr)
41 if (!nir_op_is_selection(instr->op))
44 assert(instr->dest.dest.is_ssa);
47 if (!instr->src[i].src.is_ssa)
50 nir_instr *parent = instr->src[i].src.ssa->parent_instr;
57 nir_instr_rewrite_src(&instr->instr, &instr->src[0].src,
58 instr->src[i == 1 ? 2 : 1].src);
59 nir_alu_src_copy(&instr->src[0], &instr->src[i == 1 ? 2 : 1]);
63 nir_instr_rewrite_src(&instr->instr, &instr->src[1].src, empty_src);
64 nir_instr_rewrite_src(&instr->instr, &instr->src[2].src, empty_src);
65 instr->op = nir_op_mov;
90 b->cursor = nir_before_instr(&alu->instr);
101 nir_instr *instr = def->parent_instr;
103 if (instr->type == nir_instr_type_ssa_undef)
106 if (instr->type != nir_instr_type_alu)
109 nir_alu_instr *alu = nir_instr_as_alu(instr);
163 nir_instr_remove(&intrin->instr);
171 nir_opt_undef_instr(nir_builder *b, nir_instr *instr, void *data)
173 if (instr->type == nir_instr_type_alu) {
174 nir_alu_instr *alu = nir_instr_as_alu(instr);
176 } else if (instr->type == nir_instr_type_intrinsic) {
177 nir_intrinsic_instr *intrin = nir_instr_as_intrinsic(instr);