Lines Matching refs:dst

182 ir3_get_dst_ssa(struct ir3_context *ctx, nir_ssa_def *dst, unsigned n)
186 _mesa_hash_table_insert(ctx->def_ht, dst, value);
191 ir3_get_dst(struct ir3_context *ctx, nir_dest *dst, unsigned n)
195 if (dst->is_ssa) {
196 value = ir3_get_dst_ssa(ctx, &dst->ssa, n);
242 ir3_put_dst(struct ir3_context *ctx, nir_dest *dst)
244 unsigned bit_size = ir3_bitsize(ctx, nir_dest_bit_size(*dst));
246 /* add extra mov if dst value is shared reg.. in some cases not all
260 struct ir3_instruction *dst = ctx->last_dst[i];
261 ir3_set_dst_type(dst, true);
262 ir3_fixup_src_type(dst);
263 if (dst->opc == OPC_META_SPLIT) {
264 ir3_set_dst_type(ssa(dst->srcs[0]), true);
265 ir3_fixup_src_type(ssa(dst->srcs[0]));
266 dst->srcs[0]->flags |= IR3_REG_HALF;
271 if (!dst->is_ssa) {
272 nir_register *reg = dst->reg.reg;
277 if (dst->reg.indirect)
278 addr = ir3_get_addr0(ctx, ir3_get_src(ctx, dst->reg.indirect)[0],
282 unsigned n = dst->reg.base_offset * reg->num_components + i;
360 ir3_split_dest(struct ir3_block *block, struct ir3_instruction **dst,
366 dst[0] = src;
374 dst[i] = ssa(src->srcs[i + base]);
390 dst[j++] = split;
611 struct ir3_register *dst;
621 dst = src->dsts[0];
626 dst->flags |= IR3_REG_ARRAY;
627 dst->size = arr->length;
628 dst->array.id = arr->id;
629 dst->array.offset = n;
630 dst->array.base = INVALID_REG;
633 ir3_reg_set_last_array(src, dst, arr->last_write);
635 arr->last_write = dst;
653 dst = ir3_dst_create(
656 dst->instr = mov;
657 dst->size = arr->length;
658 dst->array.id = arr->id;
659 dst->array.offset = n;
660 dst->array.base = INVALID_REG;
664 ir3_reg_set_last_array(mov, dst, arr->last_write);
669 arr->last_write = dst;