From dcdd9966c7dc5c7d1e3e9f3e4f43e151ba5bd3fa Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Mon, 14 Aug 2023 08:59:04 -0400 Subject: [PATCH] panfrost: Do not reference nir_dest Signed-off-by: Alyssa Rosenzweig Reviewed-by: Italo Nicola Part-of: --- src/gallium/drivers/panfrost/pan_nir_lower_sysvals.c | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/gallium/drivers/panfrost/pan_nir_lower_sysvals.c b/src/gallium/drivers/panfrost/pan_nir_lower_sysvals.c index af7e889..c42bcc1 100644 --- a/src/gallium/drivers/panfrost/pan_nir_lower_sysvals.c +++ b/src/gallium/drivers/panfrost/pan_nir_lower_sysvals.c @@ -132,20 +132,20 @@ static bool lower(nir_builder *b, nir_instr *instr, void *data) { struct ctx *ctx = data; - nir_dest *dest = NULL; + nir_def *old = NULL; unsigned sysval = ~0, offset = 0; b->cursor = nir_before_instr(instr); if (instr->type == nir_instr_type_intrinsic) { nir_intrinsic_instr *intr = nir_instr_as_intrinsic(instr); - dest = &intr->dest; + old = &intr->dest.ssa; sysval = sysval_for_intrinsic(intr, &offset); if (sysval == ~0) return false; } else if (instr->type == nir_instr_type_tex) { nir_tex_instr *tex = nir_instr_as_tex(instr); - dest = &tex->dest; + old = &tex->dest.ssa; if (tex->op != nir_texop_txs) return false; @@ -168,12 +168,11 @@ lower(nir_builder *b, nir_instr *instr, void *data) unsigned ubo_offset = (vec4_index * 16) + offset; b->cursor = nir_after_instr(instr); - nir_def *val = - nir_load_ubo(b, nir_dest_num_components(*dest), nir_dest_bit_size(*dest), - nir_imm_int(b, ctx->sysval_ubo), nir_imm_int(b, ubo_offset), - .align_mul = nir_dest_bit_size(*dest) / 8, .align_offset = 0, - .range_base = offset, .range = nir_dest_bit_size(*dest) / 8); - nir_def_rewrite_uses(&dest->ssa, val); + nir_def *val = nir_load_ubo( + b, old->num_components, old->bit_size, nir_imm_int(b, ctx->sysval_ubo), + nir_imm_int(b, ubo_offset), .align_mul = old->bit_size / 8, + .align_offset = 0, .range_base = offset, .range = old->bit_size / 8); + nir_def_rewrite_uses(old, val); return true; } -- 2.7.4