[Mesa-dev] [PATCH] st/st_glsl_to_nir: call nir_lower_64bit_pack

Timothy Arceri tarceri at itsqueeze.com
Thu Dec 14 05:02:45 UTC 2017


Fixes 56 crashes in radeonsi.
---
 src/mesa/state_tracker/st_glsl_to_nir.cpp | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/mesa/state_tracker/st_glsl_to_nir.cpp b/src/mesa/state_tracker/st_glsl_to_nir.cpp
index 7c9e76a2dce..5683dfcccce 100644
--- a/src/mesa/state_tracker/st_glsl_to_nir.cpp
+++ b/src/mesa/state_tracker/st_glsl_to_nir.cpp
@@ -267,20 +267,21 @@ st_nir_assign_uniform_locations(struct gl_program *prog,
    *size = max;
 }
 
 static void
 st_nir_opts(nir_shader *nir)
 {
    bool progress;
    do {
       progress = false;
 
+      NIR_PASS_V(nir, nir_lower_64bit_pack);
       NIR_PASS(progress, nir, nir_copy_prop);
       NIR_PASS(progress, nir, nir_opt_remove_phis);
       NIR_PASS(progress, nir, nir_opt_dce);
       if (nir_opt_trivial_continues(nir)) {
          progress = true;
          NIR_PASS(progress, nir, nir_copy_prop);
          NIR_PASS(progress, nir, nir_opt_dce);
       }
       NIR_PASS(progress, nir, nir_opt_if);
       NIR_PASS(progress, nir, nir_opt_dead_cf);
-- 
2.14.3



More information about the mesa-dev mailing list