Several of the passes change varyings.  This is necessary for
inputs_read and outputs_written to be accurate.
---
 src/mesa/state_tracker/st_glsl_to_nir.cpp | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/src/mesa/state_tracker/st_glsl_to_nir.cpp 
b/src/mesa/state_tracker/st_glsl_to_nir.cpp
index ae2c49960c9..7d4c20730c3 100644
--- a/src/mesa/state_tracker/st_glsl_to_nir.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_nir.cpp
@@ -857,6 +857,8 @@ st_finalize_nir(struct st_context *st, struct gl_program 
*prog,
       NIR_PASS_V(nir, gl_nir_lower_samplers_as_deref, shader_program);
    else
       NIR_PASS_V(nir, gl_nir_lower_samplers, shader_program);
+
+   nir_shader_gather_info(nir, nir_shader_get_entrypoint(nir));
 }
 
 } /* extern "C" */
-- 
2.18.0

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to