From: Jason Ekstrand Date: Tue, 21 Jul 2020 23:46:24 +0000 (-0500) Subject: nir/lower_variable_initializers: Restrict the modes we lower X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c256cd900e71a44490ed8a248ebc0c7f1abc38c5;p=mesa.git nir/lower_variable_initializers: Restrict the modes we lower This is not a functional change because these are the only modes we handle. All others get silently ignored. Reviewed-by: Dave Airlie Part-of: --- diff --git a/src/compiler/nir/nir_lower_variable_initializers.c b/src/compiler/nir/nir_lower_variable_initializers.c index 3a32bbd0533..7b90a196b2d 100644 --- a/src/compiler/nir/nir_lower_variable_initializers.c +++ b/src/compiler/nir/nir_lower_variable_initializers.c @@ -88,6 +88,16 @@ nir_lower_variable_initializers(nir_shader *shader, nir_variable_mode modes) { bool progress = false; + /* Only some variables have initializers that we want to lower. Others + * such as uniforms have initializers which are useful later during linking + * so we want to skip over those. Restrict to only variable types where + * initializers make sense so that callers can use nir_var_all. + */ + modes &= nir_var_shader_out | + nir_var_shader_temp | + nir_var_function_temp | + nir_var_system_value; + nir_foreach_function(function, shader) { if (!function->impl) continue;