nir/lower_amul: Add a variable mode check

This loop should only apply to UBOs and SSBOs because max_slot is never
used for normal uniforms.

Reviewed-by: Gert Wollny <gert.wollny@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5966>
This commit is contained in:
Jason Ekstrand
2020-07-20 17:31:04 -05:00
committed by Marge Bot
parent 3be0be7d54
commit d5d15c301e

View File

@@ -236,6 +236,9 @@ nir_lower_amul(nir_shader *shader,
int max_slot = 0;
nir_foreach_variable (var, &shader->uniforms) {
if (!(var->data.mode & (nir_var_mem_ubo | nir_var_mem_ssbo)))
continue;
int base = var->data.binding;
int size = MAX2(1, glsl_array_size(var->type));