summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/freedreno/ir3
diff options
context:
space:
mode:
authorRob Clark <[email protected]>2018-02-20 13:40:46 -0500
committerRob Clark <[email protected]>2018-02-20 13:43:42 -0500
commit4c4e6232ee2e6dd4c19f526c06df05b829174240 (patch)
tree0a5cc12d3485547ea7b18473d881e7d053f3a168 /src/gallium/drivers/freedreno/ir3
parentac731531a1e43e4fa3e10099380a3bba68d65bfd (diff)
freedreno/ir3: fix use_count refcnt'ing issue
Was hitting an assert with vs-varying-array-mat4-index-col-row-wr.shader_test When eliminating a copy, we were dropping the use_count of the mov that is skipped, but not increasing the use_count of it's src instruction. Fixes: 76440fcca91 freedreno/ir3: clean up dangling false-dep's Signed-off-by: Rob Clark <[email protected]>
Diffstat (limited to 'src/gallium/drivers/freedreno/ir3')
-rw-r--r--src/gallium/drivers/freedreno/ir3/ir3_cp.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/ir3/ir3_cp.c b/src/gallium/drivers/freedreno/ir3/ir3_cp.c
index 7713c645e08..391e94ca44f 100644
--- a/src/gallium/drivers/freedreno/ir3/ir3_cp.c
+++ b/src/gallium/drivers/freedreno/ir3/ir3_cp.c
@@ -361,6 +361,7 @@ reg_cp(struct ir3_cp_ctx *ctx, struct ir3_instruction *instr,
instr->barrier_conflict |= src->barrier_conflict;
unuse(src);
+ reg->instr->use_count++;
}
} else if (is_same_type_mov(src) &&