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

Author: Connor Abbott <[email protected]>
Date:   Mon Jun 10 21:59:12 2019 +0200

nir/lower_viewport: Check variable mode first

The location is unused for shader_temp and function_temp variables, and
due to the way we nir_lower_io_to_temproraries demotes shader_out
variables to shader_temp variables, it happened to equal
VARYING_SLOT_POS for the gl_Position temporary, which made this pass
fail with the offline compiler due to this coming before vars_to_ssa.

Reviewed-by: Qiang Yu <[email protected]>

---

 src/compiler/nir/nir_lower_viewport_transform.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/compiler/nir/nir_lower_viewport_transform.c 
b/src/compiler/nir/nir_lower_viewport_transform.c
index 94b54524ab7..4bbc88d75f5 100644
--- a/src/compiler/nir/nir_lower_viewport_transform.c
+++ b/src/compiler/nir/nir_lower_viewport_transform.c
@@ -56,7 +56,8 @@ nir_lower_viewport_transform(nir_shader *shader)
                continue;
 
             nir_variable *var = nir_intrinsic_get_var(intr, 0);
-            if (var->data.location != VARYING_SLOT_POS)
+            if (var->data.mode != nir_var_shader_out ||
+                var->data.location != VARYING_SLOT_POS)
                continue;
 
             nir_builder b;

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

Reply via email to