mesa/src/compiler
Rhys Perry bcd14756ee nir/lower_io_to_vector: add flat mode
This has lower_io_to_vector try to turn variables into arrays of 4-sized
vectors when possible and fall back to the old approach when that isn't
possible.

This is so that lower_io_to_vector can guarantee that only one variable is
used for each fragment shader output.

v2: handle dual-source blending
v3: don't try to merge structs and non-32-bit types in get_flat_type()
v3: fix per-vertex inputs
v3: fix and cleanup location advancement in get_flat_type() and it's
    calling code
v4: prioritize the original mode over the flat mode
v4: don't create flat variables to merge only one variable
v5: don't skip an entire slot when encountering structs in the old mode

Signed-off-by: Rhys Perry <pendingchaos02@gmail.com>
Reviewed-by: Connor Abbott <cwabbott0@gmail.com>
2019-09-06 15:38:04 +00:00
..
glsl glsl: Fix unroll of do{} while(false) like loops 2019-09-06 10:27:33 +00:00
nir nir/lower_io_to_vector: add flat mode 2019-09-06 15:38:04 +00:00
spirv nir: Add explicit signs to image min/max intrinsics 2019-08-21 17:19:55 +00:00
Android.glsl.gen.mk mesa: android: Remove unnecessary dependency tracking rules 2019-05-06 11:29:25 +00:00
Android.glsl.mk android: glsl: build shader cache sources 2017-02-20 16:30:37 +00:00
Android.mk
Android.nir.gen.mk nir: Add missing dependency in Android.nir.gen.mk 2019-08-19 09:53:18 +03:00
Android.nir.mk android: fix libmesa_nir build 2017-07-21 08:47:56 +03:00
blob.c compiler/blob: Add blob_skip_bytes 2018-07-09 23:02:33 -07:00
blob.h compiler/blob: Add blob_skip_bytes 2018-07-09 23:02:33 -07:00
builtin_type_macros.h glsl_types: vec8/vec16 support 2018-03-25 10:42:54 -04:00
glsl_types.cpp compiler: ensure glsl types are not created without a reference 2019-08-21 09:44:10 +02:00
glsl_types.h nir: add nir_lower_to_explicit() 2019-08-08 12:10:39 -05:00
Makefile.sources nir: Carve out nir_lower_samplers from GLSL code. 2019-09-06 12:20:20 +03:00
meson.build meson: drop unused dep_{thread,dl} 2019-08-03 00:08:37 +00:00
nir_types.cpp nir: add nir_lower_to_explicit() 2019-08-08 12:10:39 -05:00
nir_types.h nir: add nir_lower_to_explicit() 2019-08-08 12:10:39 -05:00
SConscript spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
SConscript.glsl scons: Generate float64_glsl.h for glsl_to_nir fp64 lowering 2019-03-02 14:33:44 -08:00
SConscript.nir nir: mako all the intrinsics 2018-03-27 08:36:37 -04:00
SConscript.spirv spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
shader_enums.c glsl: Optionally declare gl_PointCoord as a system value 2019-07-18 13:20:39 +00:00
shader_enums.h nir/lower_io_to_vector: allow FS outputs to be vectorized 2019-09-06 15:38:04 +00:00
shader_info.h compiler: add shader_info.cs.user_data_components_amd 2019-08-12 14:52:17 -04:00