From 5c655c47db76fd972beed11b8e3c4f5c590d1d44 Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Tue, 26 Feb 2019 21:37:47 -0800 Subject: [PATCH] v3d: Drop the V3D 3.x vpm read dead code elimination. We now have NIR dead code eliminating our VPM reads, so this shouldn't be necessary. --- src/broadcom/compiler/vir_opt_dead_code.c | 35 ++--------------------- 1 file changed, 2 insertions(+), 33 deletions(-) diff --git a/src/broadcom/compiler/vir_opt_dead_code.c b/src/broadcom/compiler/vir_opt_dead_code.c index 56b276d581b..6048ccfccb7 100644 --- a/src/broadcom/compiler/vir_opt_dead_code.c +++ b/src/broadcom/compiler/vir_opt_dead_code.c @@ -55,28 +55,8 @@ static bool has_nonremovable_reads(struct v3d_compile *c, struct qinst *inst) { for (int i = 0; i < vir_get_nsrc(inst); i++) { - if (inst->src[i].file == QFILE_VPM) { - /* Instance ID, Vertex ID: Should have been removed at - * the NIR level - */ - if (inst->src[i].index == ~0) - return true; - - uint32_t attr = inst->src[i].index / 4; - uint32_t offset = inst->src[i].index % 4; - - if (c->vattr_sizes[attr] != offset) - return true; - - /* Can't get rid of the last VPM read, or the - * simulator (at least) throws an error. - */ - uint32_t total_size = 0; - for (uint32_t i = 0; i < ARRAY_SIZE(c->vattr_sizes); i++) - total_size += c->vattr_sizes[i]; - if (total_size == 1) - return true; - } + if (inst->src[i].file == QFILE_VPM) + return true; } return false; @@ -187,17 +167,6 @@ vir_opt_dead_code(struct v3d_compile *c) continue; } - for (int i = 0; i < vir_get_nsrc(inst); i++) { - if (inst->src[i].file != QFILE_VPM) - continue; - uint32_t attr = inst->src[i].index / 4; - uint32_t offset = (inst->src[i].index % 4); - - if (c->vattr_sizes[attr] == offset) { - c->vattr_sizes[attr]--; - } - } - assert(inst != last_flags_write); dce(c, inst); progress = true; -- 2.30.2