gl/frameworks: Use piglit_set_destroy_func() when gl_fw->destroy is set
[piglit.git] / tests / spec / glsl-1.10 / linker / glsl-uniform-linking-1.shader_test
blobeef8c62f93dcb6746738db003396e6d0c205ae41
1 [require]
2 GLSL >= 1.10
4 [vertex shader]
5 /* test for a bug in ir_to_mesa's uniform handling.  It relied on the
6  * uniform list having increasing per-shader locations as the shader
7  * program's uniform list was walked.  If multiple uniforms were used
8  * and one of them was shared between shaders, the list would be out
9  * of order.
10  */
11 uniform float f1;
12 uniform float f2;
13 /* To prevent linker optimize out f1&f2. */
14 uniform float dummy;
15 varying vec4 color;
17 void main()
19         gl_Position = gl_Vertex;
21         color = vec4(f1 + dummy, f2 + dummy, 0.0, 0.0);
24 [fragment shader]
25 uniform float f2;
26 uniform float f1;
27 varying vec4 color;
29 void main()
31         gl_FragColor = (0.5 + color);
32         gl_FragColor.y -= f2;
33         gl_FragColor.x -= f1;
36 [test]
37 uniform float f1 0.25
38 uniform float f2 0.5
39 uniform float dummy 0
40 draw rect -1 -1 2 2
41 probe all rgba 0.5 0.5 0.5 0.5