Bug 107839

Summary: [GLSL] WebGL Conformance fragcolor-fragdata-invariant test fails
Product: Mesa Reporter: vadym <vadym.shovkoplias>
Component: glsl-compilerAssignee: mesa-dev
Status: RESOLVED NOTOURBUG QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: normal    
Priority: medium CC: danylo.piliaiev
Version: unspecified   
Hardware: Other   
OS: All   
Whiteboard:
i915 platform: i915 features:

Description vadym 2018-09-05 12:28:06 UTC
Test fails with the latest Mesa in Firefox:

https://www.khronos.org/registry/webgl/sdk/tests/conformance/glsl/misc/fragcolor-fragdata-invariant.html?webglVersion=2&quiet=0

with the following error:
conformance/glsl/misc/fragcolor-fragdata-invariant.html (Passed: 1/2 Failed: 1/2 in 98.0 ms)

    failed: [unexpected fragment shader compile status] (expected: true) Declaring both gl_FragColor and gl_FragData invariant should succeed.
Comment 1 Tapani Pälli 2018-09-05 13:51:00 UTC
But passes fine on Chrome, better check if Firefox is giving sensible input to the driver.
Comment 2 Danylo 2018-09-05 14:08:06 UTC
Indeed, it seems it is not a Mesa's bug since in dev console in Firefox there is next error:

 *** Error compiling FRAGMENT_SHADER '[object WebGLShader]':ERROR: 0:6: 'gl_FragData' : cannot use both gl_FragData and gl_FragColor
ERROR: 0:10: 'gl_FragColor' : cannot use both gl_FragData and gl_FragColor

Which isn't a Mesa's error.

The WebGL test in question should have failed with current Mesa - see https://bugs.freedesktop.org/show_bug.cgi?id=107842
However it passes on Chrome and it looks like Chrome completely ignores invariant qualifiers...
Comment 3 Denis 2019-09-04 11:28:58 UTC
Hi. Looks like there was a fix in FF. Test became passed

Declaring both gl_FragColor and gl_FragData invariant should succeed.

On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".

test: Declaring both gl_FragColor and gl_FragData invariant should succeed.
default vertex shader
default vertex shader translated for driver
test fragment shader
test fragment shader translated for driver
PASS Declaring both gl_FragColor and gl_FragData invariant should succeed.
PASS successfullyParsed is true

TEST COMPLETE


closing

Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.