[Bug 97532] Regression: GLB 2.7 segfaults due to bogus linker precision error (259fc505) on dead variable

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Tue Sep 6 19:29:03 UTC 2016


https://bugs.freedesktop.org/show_bug.cgi?id=97532

--- Comment #13 from Kenneth Graunke <kenneth at whitecape.org> ---
Eero is right, the GLES version of GLBenchmark breaks.  The GL version works
fine.

I double checked the rules and Ian's patch is absolutely correct - the ES 3.2
spec says:

"Uniforms in shaders all share a single global name space when
 linked into a program or separable program. Hence, the types,
 precisions and any location specifiers of all declared uniform
 variables with the same name must match across shaders that
 are linked into a single program."

In addition to the uniform not actually being used in the vertex
shader...neither declaration is actually qualified with a specific precision. 
It's just using the default precision in both cases.  One thought would be to
enforce the "must match" rule when explicitly qualified, and take the maximum
if all declarations are inheriting a default precision.  (I'm trying to think
if there's some weasily way this could actually be legal - it seems surprising
that this app has been out for 3 years and no other ES vendor has hit this
bug...)

Or perhaps we just need to add a driconf option to either resort to "take the
max" or just force everything to highp (like in desktop GL).

Ian, thoughts?

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-3d-bugs/attachments/20160906/a5263e44/attachment.html>


More information about the intel-3d-bugs mailing list