mesa/src/compiler
Tapani Pälli 27f1298b9d glsl/linker: validate attribute aliasing before optimizations
Patch does a 'dry run' of assign_attribute_or_color_locations before
optimizations to catch cases where we have aliasing of unused attributes
which is forbidden by the GLSL ES 3.x specifications.

We need to run this pass before unused attributes may be removed and with
attribute binding information from program, therefore we re-use existing
pass in linker rather than attempt to write another one.

This fixes WebGL2 test 'gl-bindAttribLocation-aliasing-inactive' and
Piglit test 'gles-3.0-attribute-aliasing'.

Signed-off-by: Tapani Pälli <tapani.palli@intel.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106833
Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
2018-10-31 14:53:47 +02:00
..
glsl glsl/linker: validate attribute aliasing before optimizations 2018-10-31 14:53:47 +02:00
nir nir: Allow using nir_lower_io_to_scalar_early on VS input vars. 2018-10-30 10:46:52 -07:00
spirv spirv: Pass SSA values through functions 2018-10-30 11:22:44 -05:00
.gitignore nir/spirv: Remove a duplicate spirv2nir from .gitignore 2016-10-04 07:43:15 -07:00
Android.glsl.gen.mk Android: clean-up trailing '\' in make variables 2017-03-22 17:52:06 +00:00
Android.glsl.mk android: glsl: build shader cache sources 2017-02-20 16:30:37 +00:00
Android.mk Android: glsl: add rules to generate ir_expression*.h header files 2016-09-06 15:58:55 +01:00
Android.nir.gen.mk Android: fix a missing nir_intrinsics.h error 2018-07-21 08:50:23 +02: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 glsl: remove redundant es_shader checks 2018-10-11 14:45:43 +11:00
glsl_types.h nir: add 16bit type information to glsl types 2018-07-23 23:16:25 +02:00
Makefile.am Revert "configure: allow building with python3" 2018-08-24 11:14:15 +01:00
Makefile.glsl.am Revert "configure: allow building with python3" 2018-08-24 11:14:15 +01:00
Makefile.nir.am nir: Add test file for vars related passes 2018-10-15 17:29:46 -07:00
Makefile.sources nir: Add a pass for gathering transform feedback info 2018-10-29 17:09:08 +01:00
Makefile.spirv.am spirv: autotools: add vtn_gather_types_c.py in distribution tarball 2018-04-10 10:37:46 +02:00
meson.build meson: Build with Python 3 2018-08-10 15:15:09 -07:00
nir_types.cpp nir/types: Add a wrapper for coordinate_components 2018-08-29 14:04:02 -05:00
nir_types.h nir/types: Add a wrapper for coordinate_components 2018-08-29 14:04:02 -05:00
SConscript spirv: Fix building with SCons 2018-03-30 14:33:03 -06:00
SConscript.glsl mesa: Remove prog_hash_table.c 2016-09-12 10:48:35 +10: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 compiler: add SYSTEM_VALUE_VARYING_COORD 2018-08-14 17:59:02 -04:00
shader_enums.h nir: Use a bitfield for image access qualifiers 2018-08-29 14:04:02 -05:00
shader_info.h compiler: Move double_inputs to gl_program::DualSlotInputs 2018-09-06 16:07:50 -05:00