nir: Add a structure splitting pass
authorJason Ekstrand <jason.ekstrand@intel.com>
Tue, 24 Jul 2018 17:08:06 +0000 (10:08 -0700)
committerJason Ekstrand <jason.ekstrand@intel.com>
Fri, 24 Aug 2018 02:44:14 +0000 (21:44 -0500)
commit26eb077ec486d0daf5a72d20bb5c03509592dce4
tree11d528a32dae3e8e2a9c6e154aa30c94a7c416bf
parentb489998e63f5bd773344c8185d2e9817936116c9
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>
src/compiler/Makefile.sources
src/compiler/nir/meson.build
src/compiler/nir/nir.h
src/compiler/nir/nir_split_vars.c [new file with mode: 0644]