Mesa (master): v3d: Drop the V3D 3.x vpm read dead code elimination.

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Tue Mar 5 20:59:01 UTC 2019


Module: Mesa
Branch: master
Commit: 5c655c47db76fd972beed11b8e3c4f5c590d1d44
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=5c655c47db76fd972beed11b8e3c4f5c590d1d44

Author: Eric Anholt <eric at anholt.net>
Date:   Tue Feb 26 21:37:47 2019 -0800

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;




More information about the mesa-commit mailing list