nir: add varying array splitting pass

V2:
 - fix matrix support, non-array matrices were being skipped in v1

v3:
 - handle lowering of tcs output loads correctly
 - correctly mark indirect locations for either in or out not both
   when processing a stage.
 - use nir_src_copy() when lowering stores.

Reviewed-by: Nicolai Hähnle <nicolai.haehnle@amd.com>
This commit is contained in:
Timothy Arceri
2017-10-23 15:51:29 +11:00
parent 11efe42a73
commit c797bc6aa7
4 changed files with 386 additions and 0 deletions

View File

@@ -114,6 +114,7 @@ files_libnir = files(
'nir_lower_indirect_derefs.c',
'nir_lower_int64.c',
'nir_lower_io.c',
'nir_lower_io_arrays_to_elements.c',
'nir_lower_io_to_temporaries.c',
'nir_lower_io_to_scalar.c',
'nir_lower_io_types.c',