nir/glsl: set deref cast mode for blocks during function inlining

More cast fixes this time for UBO and SSBO. Which were missing testing
previously.

Fixes: d681cf96fb ("nir/glsl: set deref cast mode during function inlining")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/11587

Reviewed-by: Marek Olšák <marek.olsak@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/31668>
This commit is contained in:
Timothy Arceri
2024-10-16 10:04:06 +11:00
committed by Marge Bot
parent bd6f3e30f2
commit aa7c59e02c

View File

@@ -67,6 +67,10 @@ fixup_cast_deref_mode(nir_deref_instr *deref)
deref->modes |= nir_var_uniform;
} else if (parent->modes & nir_var_image) {
deref->modes |= nir_var_image;
} else if (parent->modes & nir_var_mem_ubo) {
deref->modes |= nir_var_mem_ubo;
} else if (parent->modes & nir_var_mem_ssbo) {
deref->modes |= nir_var_mem_ssbo;
} else
return;