On Sat, May 23, 2015 at 11:47 AM, Kenneth Graunke <kenn...@whitecape.org> wrote: > On Tuesday, May 19, 2015 05:28:17 PM Jason Ekstrand wrote: >> Previously, the prog_to_nir pass was directly generating uniform load/store >> intrinsics. This converts it to use a single giant "parameters" variable >> and we now depend on lowering to get the uniform load/store intrinsics. >> One advantage of this is that we now have one code-path after we do the >> initial conversion into NIR. >> >> No shader-db changes. >> >> Signed-off-by: Jason Ekstrand <jason.ekstr...@intel.com> >> --- >> src/mesa/drivers/dri/i965/brw_nir.c | 15 ++------- >> src/mesa/program/prog_to_nir.c | 65 >> ++++++++++++++++++++----------------- >> 2 files changed, 38 insertions(+), 42 deletions(-) > > That is indeed nicer...much less special casing. This patch also makes > an eventual goal of mine easier: > > If we ever start converting ARB programs directly to NIR, we'll be able > to create multiple variables for disjoint sections of parameters---several > arrays, rather than one giant array. (Currently, that information is lost > in Mesa IR, as far as I know.) This would allow us to eliminate more > unused parameters in the presence of indirects.
Yeah, hopefully we can start doing some sort of array-splitting in NIR which would help with that. Doing that on uniforms can be tricky though... > Reviewed-by: Kenneth Graunke <kenn...@whitecape.org> Thanks! _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev