diff --git a/src/nouveau/compiler/nak_nir.c b/src/nouveau/compiler/nak_nir.c index 9bdd405ff02..83d80bc20c4 100644 --- a/src/nouveau/compiler/nak_nir.c +++ b/src/nouveau/compiler/nak_nir.c @@ -1330,6 +1330,8 @@ nak_postprocess_nir(nir_shader *nir, UNREACHABLE("Unsupported shader stage"); } + /* sink memory loads once before we add our own bound checking */ + OPT(nir, nir_opt_sink, nir_move_load_ssbo | nir_move_load_ubo); if (OPT(nir, nak_nir_lower_load_store, nak)) OPT(nir, nir_opt_constant_folding);