Closed Bug 782500 Opened 14 years ago Closed 13 years ago

nvidia Tegra 3 drivers may give bogus errors on unused fragment shader varyings

Categories

(Core :: Graphics: CanvasWebGL, defect)

ARM
Android
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: vlad, Unassigned)

Details

Attachments

(1 file)

I don't have a testcase for this yet, but it should be easy enough to write. I'm seeing something on a much larger codebase that makes me suspect that the Tegra drivers at least on the Nexus 7 (Version: OpenGL ES 2.0 14.01002) aren't following the GLSL ES spec (v1.0.17) section 4.3.5, which explicitly states: "Only those varying variables statically used (i.e. read) in the fragment shader must be declared in the vertex shader; declaring superfluous varying variables in the vertex shader is permissible." I suspect there's an unused varying declared in a fragment shader, and no corresponding declaration in the vertex shader... and linkProgram is saying: L0007: Cannot find vertex shader varying for declared fragment shader varyingworld
If this ends up being the case, we should notify nvidia (and also tell them to add a space before their "%s" of the varying name :)... but we may want to tighten up the restriction via ANGLE and require no superfluous declarations.
Indeed. It sounds like we should add a conformance test for this, as well. I don't think we can tighten anything in ANGLE, because this flexibility is a feature. It might be possible to inject an missing varyings at link time, though.
(In reply to Jeff Gilbert [:jgilbert] from comment #2) > Indeed. It sounds like we should add a conformance test for this, as well. > > I don't think we can tighten anything in ANGLE, because this flexibility is > a feature. It might be possible to inject an missing varyings at link time, > though. s/an/any
Hmm. This goes green on the Nexus 7 I mentioned earlier; the driver reports the same version (14.01002), though it's now running Android 4.2.1 where when I tested it earlier it was running 4.1 (I think). Of course, I can't remember where I ran into this in the first place :/
Green on my 4.1 HTC One X (T3 version) too. Hrrrm.
I'm going to resolve this as WORKSFORME; I remember the thing that drove me to look at this generating shaders via a pretty complex structure. I was pretty sure I looked at the final generated shaders, but now I'm doubting myself.
Status: NEW → RESOLVED
Closed: 13 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: