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

Author: Eric Anholt <[email protected]>
Date:   Fri Jul 20 14:06:57 2018 -0700

v3d: Return an invalid src number if asked for a missing implicit uniform.

Sometimes when iterating over sources, we might want to check if it's the
implicit one.  We wouldn't want to match on a non-implicit src using this
function.

---

 src/broadcom/compiler/vir.c                | 2 ++
 src/broadcom/compiler/vir_lower_uniforms.c | 4 +---
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/broadcom/compiler/vir.c b/src/broadcom/compiler/vir.c
index 6ee3b98087..5a4bf80f93 100644
--- a/src/broadcom/compiler/vir.c
+++ b/src/broadcom/compiler/vir.c
@@ -74,6 +74,8 @@ vir_has_implicit_uniform(struct qinst *inst)
 int
 vir_get_implicit_uniform_src(struct qinst *inst)
 {
+        if (!vir_has_implicit_uniform(inst))
+                return -1;
         return vir_get_nsrc(inst) - 1;
 }
 
diff --git a/src/broadcom/compiler/vir_lower_uniforms.c 
b/src/broadcom/compiler/vir_lower_uniforms.c
index 97375b483b..1e900404c9 100644
--- a/src/broadcom/compiler/vir_lower_uniforms.c
+++ b/src/broadcom/compiler/vir_lower_uniforms.c
@@ -76,9 +76,7 @@ is_lowerable_uniform(struct qinst *inst, int i)
 {
         if (inst->src[i].file != QFILE_UNIF)
                 return false;
-        if (vir_has_implicit_uniform(inst))
-                return i != vir_get_implicit_uniform_src(inst);
-        return true;
+        return i != vir_get_implicit_uniform_src(inst);
 }
 
 /* Returns the number of different uniform values referenced by the

_______________________________________________
mesa-commit mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to