Author :
Olli Etuaho
Date :
2018-03-23 14:36:39
Hash :44861c48 Message :Clarify aliasing rules in CHROMIUM_bind_uniform_location
The CHROMIUM_bind_uniform_location spec previously had some
conflicting information on when uniform location aliasing was
allowed. Now the section on uniform location aliasing makes it clear
that aliasing locations of two statically used uniforms is an error.
This guarantees compatibility between different compiler versions that
may treat a different subset of uniforms as active, depending on
optimizations. It follows the spirit of GLSL ES 3.00.6 spec section
12.46, that has similar rules for attributes.
The implementation is fixed to correctly follow the spec. When
flattening uniforms, static use is tracked separately from activeness.
BUG=angleproject:2262
TEST=angle_end2end_tests
Change-Id: I570fd384064aec66ef0380a53fa01ac5e43eec5a
Reviewed-on: https://chromium-review.googlesource.com/978144
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>