nir: Add a structure splitting pass
This pass doesn't really do much now because nir_lower_vars_to_ssa can already see through structures and considers them to be "split". This pass exists to help other passes more easily see through structure variables. If a back-end does implement arrays using scratch or indirects on registers, having more smaller arrays is likely to have better memory efficiency. Reviewed-by: Caio Marcelo de Oliveira Filho <caio.oliveira@intel.com>
This commit is contained in:
@@ -2661,6 +2661,7 @@ int nir_gs_count_vertices(const nir_shader *shader);
|
||||
|
||||
bool nir_split_var_copies(nir_shader *shader);
|
||||
bool nir_split_per_member_structs(nir_shader *shader);
|
||||
bool nir_split_struct_vars(nir_shader *shader, nir_variable_mode modes);
|
||||
|
||||
bool nir_lower_returns_impl(nir_function_impl *impl);
|
||||
bool nir_lower_returns(nir_shader *shader);
|
||||
|
Reference in New Issue
Block a user