clover/nir: Lower function_temp to scratch.

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/6433>
This commit is contained in:
Karol Herbst 2020-08-16 17:43:18 +02:00 committed by Marge Bot
parent 8e259dad4c
commit d421af3a99

View file

@ -226,7 +226,8 @@ module clover::nir::spirv_to_nir(const module &mod, const device &dev,
offset += glsl_get_cl_size(var->type);
}
NIR_PASS_V(nir, nir_lower_vars_to_explicit_types, nir_var_mem_shared,
NIR_PASS_V(nir, nir_lower_vars_to_explicit_types,
nir_var_mem_shared | nir_var_function_temp,
glsl_get_cl_type_size_align);
/* use offsets for uniform and shared memory */
@ -236,9 +237,14 @@ module clover::nir::spirv_to_nir(const module &mod, const device &dev,
NIR_PASS_V(nir, nir_lower_explicit_io, nir_var_mem_shared,
spirv_options.shared_addr_format);
NIR_PASS_V(nir, nir_lower_explicit_io, nir_var_function_temp,
spirv_options.temp_addr_format);
NIR_PASS_V(nir, nir_lower_explicit_io, nir_var_mem_global,
spirv_options.global_addr_format);
NIR_PASS_V(nir, nir_remove_dead_variables, nir_var_all, NULL);
if (compiler_options->lower_int64_options)
NIR_PASS_V(nir, nir_lower_int64);