[Mesa-stable] Cherry-pick 0886be093fb871b0b6169718277e0f4d18df3ea7 to 17.2 and 17.3

Andres Gomez agomez at igalia.com
Tue Nov 7 10:45:15 UTC 2017


Queued.

Thanks, Mark!

On Mon, 2017-11-06 at 22:28 -0800, Mark Janes wrote:
> The fix for bug 103085 was recently pushed to master, and the issue
> exists on stable branches as well:
> 
> commit:     0886be093fb871b0b6169718277e0f4d18df3ea7
> Author:     Tomasz Figa <tfiga at chromium.org>
> 
>     glsl: Allow precision mismatch on dead data with GLSL ES 1.00
>     
>     Commit 259fc505454ea6a67aeacf6cdebf1398d9947759 added linker error for
>     mismatching uniform precision, as required by GLES 3.0 specification and
>     conformance test-suite.
>     
>     Several Android applications, including Forge of Empires, have shaders
>     which violate this rule, on a dead varying that will be eliminated.
>     The problem affects a big number of applications using Cocos2D engine
>     and other GLES implementations accept this, this poses a serious
>     application compatibility issue.
>     
>     Starting from GLSL ES 3.0, declarations with conflicting precision
>     qualifiers are explicitly prohibited. However GLSL ES 1.00 does not
>     clearly specify the behavior, except that
>     
>       "Uniforms are defined to behave as if they are using the same storage in
>       the vertex and fragment processors and may be implemented this way.
>       If uniforms are used in both the vertex and fragment shaders, developers
>       should be warned if the precisions are different. Conversion of
>       precision should never be implicit."
>     
>     The word "used" is not clear in this context and might refer to
>      1) declared (same as GLES 3.x)
>      2) referred after post-processing, or
>      3) linked after all optimizations are done.
>     
>     Looking at existing applications, 2) or 3) seems to be widely adopted.
>     To avoid compatibility issues, turn the error into a warning if GLSL ES
>     version is lower than 3.0 and the data is dead in at least one of the
>     shaders.
>     
>     Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=97532
>     Signed-off-by: Tomasz Figa <tfiga at chromium.org>
>     Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
> _______________________________________________
> mesa-stable mailing list
> mesa-stable at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-stable
-- 
Br,

Andres


More information about the mesa-stable mailing list