intel/nir: Split IO arrays into elements
[mesa.git] / src / intel / compiler / brw_nir.c
index 17ccfa48af61bd9f1c63fdd76a7400b3823ee983..29ad68fdb2a47460652ab00935ebd710e0e9063c 100644 (file)
@@ -709,6 +709,10 @@ void
 brw_nir_link_shaders(const struct brw_compiler *compiler,
                      nir_shader **producer, nir_shader **consumer)
 {
+   nir_lower_io_arrays_to_elements(*producer, *consumer);
+   nir_validate_shader(*producer);
+   nir_validate_shader(*consumer);
+
    NIR_PASS_V(*producer, nir_remove_dead_variables, nir_var_shader_out);
    NIR_PASS_V(*consumer, nir_remove_dead_variables, nir_var_shader_in);