Lines Matching defs:src
192 nir_instr_rewrite_src_ssa(&intr->instr, &intr->src[0],
193 convert(&b, intr->src[0].ssa));
366 return alu->op == m && alu->src[0].src.ssa->bit_size == n;
430 /* Create a mapping from src_type to src[i]. */
432 map[tex->src[i].src_type] = i;
434 /* Legalize src types. */
436 nir_tex_src_type_constraint c = constraints[tex->src[i].src_type];
441 /* Determine the required bit size for the src. */
449 bit_size = tex->src[map[c.match_src]].src.ssa->bit_size;
453 if (bit_size == tex->src[i].src.ssa->bit_size)
477 convert(&b, nir_ssa_for_src(&b, tex->src[i].src,
478 tex->src[i].src.ssa->num_components));
479 nir_instr_rewrite_src_ssa(&tex->instr, &tex->src[i].src, conv);
555 fold_16bit_src(nir_builder *b, nir_instr *instr, nir_src *src, nir_alu_type src_type)
560 for (unsigned i = 0; i < src->ssa->num_components; i++) {
561 nir_ssa_scalar comp = nir_ssa_scalar_resolved(src->ssa, i);
578 nir_ssa_def *new_vec = nir_vec_scalars(b, new_comps, src->ssa->num_components);
580 nir_instr_rewrite_src_ssa(instr, src, new_vec);
587 nir_src *data_src = &instr->src[3];
698 if (!(BITFIELD_BIT(tex->src[i].src_type) & options->src_types))
701 nir_src *src = &tex->src[i].src;
703 nir_alu_type src_type = nir_tex_instr_src_type(tex, i) | src->ssa->bit_size;
710 if (!can_fold_16bit_src(src->ssa, src_type, false))
717 nir_src *src = &tex->src[i].src;
718 nir_alu_type src_type = nir_tex_instr_src_type(tex, i) | src->ssa->bit_size;
719 fold_16bit_src(b, &tex->instr, src, src_type);