Bug 92304

Summary: [cts] cts.shaders.negative conformance tests fail
Product: Mesa Reporter: Mark Janes <mark.a.janes>
Component: Drivers/DRI/i965Assignee: Ian Romanick <idr>
Status: CLOSED FIXED QA Contact: Intel 3D Bugs Mailing List <intel-3d-bugs>
Severity: major    
Priority: high CC: idr
Version: git   
Hardware: x86-64 (AMD64)   
OS: Linux (All)   
Whiteboard:
i915 platform: i915 features:

Description Mark Janes 2015-10-05 23:32:15 UTC
New GL Conformance tests fail on all intel platforms:

piglit.es2-cts.shaders.negative.initialize
piglit.es3-cts.shaders.negative.constant_sequence
piglit.es3-cts.shaders.negative.initialize

Note that constant sequence *passes* for es2

Git revision is from master, 93161be.  However the tests fail as far back as the 10.6 branch point.
Comment 1 Marta Löfstedt 2015-10-06 07:17:30 UTC
The tesst are nor run in the previous Intel internal port of the Khronos CTS suit.
Comment 2 Ian Romanick 2015-10-07 02:12:13 UTC
piglit.es2-cts.shaders.negative.initialize and piglit.es3-cts.shaders.negative.initialize are fixed by the following patch on the mesa-dev list for review:

http://lists.freedesktop.org/archives/mesa-dev/2015-October/096398.html

piglit.es3-cts.shaders.negative.constant_sequence is going to require a bit more effort, I think. :(
Comment 3 Marta Löfstedt 2015-10-08 08:17:44 UTC
Ian,

with your patches:

http://patchwork.freedesktop.org/patch/61313/
http://patchwork.freedesktop.org/patch/61314/
http://patchwork.freedesktop.org/patch/61315/
http://patchwork.freedesktop.org/patch/61316/

on top off: Mesa git@aee28a0aa

All:
piglit.es2-cts.shaders.negative.initialize
piglit.es3-cts.shaders.negative.constant_sequence
piglit.es3-cts.shaders.negative.initialize

pass on HSW and BDW.
Comment 4 Ian Romanick 2015-10-12 22:28:40 UTC
These should all be fixed by the following series that was pushed to master a couple hours ago.  These should all eventually get picked to 11.0 and 10.6 stable branches.

92635a8 glsl: In later GLSL versions, sequence operator is cannot be a constant expression
05e4601 glsl: Add method to determine whether an expression contains the sequence operator
bb329f2 glsl: Restrict initializers for global variables to constant expression in ES
3524d6d glsl: Only set ir_variable::constant_value for const-decorated variables
5bc68f0 glsl: Use constant_initializer instead of constant_value to determine whether to keep an unused uniform
313372c glsl/linker: Use constant_initializer instead of constant_value to initialize uniforms
8acce5d ff_fragment_shader: Use binding to set the sampler unit
43b07eb glsl: Allow built-in functions as constant expressions in OpenGL ES 1.00
Comment 5 Mark Janes 2015-10-12 22:40:21 UTC
I verified the fix.
Comment 6 Ian Romanick 2018-11-01 19:32:18 UTC
*** Bug 90157 has been marked as a duplicate of this bug. ***

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.