clover/nir: Call vars_to_explicit_types for shared memory

This is required for shared memory buffers declared with an explicit
size inside the kernel.

Signed-off-by: Karol Herbst <kherbst@redhat.com>
Reviewed-by: Jesse Natalie <jenatali@microsoft.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Reviewed-by: Jason Ekstrand <jason@jlekstrand.net>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/6367>
This commit is contained in:
Karol Herbst
2020-08-15 13:33:29 +02:00
committed by Marge Bot
parent 1e7c2d1862
commit 918e444f04

View File

@@ -145,6 +145,9 @@ module clover::nir::spirv_to_nir(const module &mod, const device &dev,
NIR_PASS_V(nir, nir_lower_vars_to_ssa); NIR_PASS_V(nir, nir_lower_vars_to_ssa);
NIR_PASS_V(nir, nir_opt_dce); NIR_PASS_V(nir, nir_opt_dce);
NIR_PASS_V(nir, nir_lower_vars_to_explicit_types, nir_var_mem_shared,
glsl_get_cl_type_size_align);
/* use offsets for shader_in and shared memory */ /* use offsets for shader_in and shared memory */
nir_variable_mode modes = (nir_variable_mode)( nir_variable_mode modes = (nir_variable_mode)(
nir_var_shader_in | nir_var_shader_in |