ARB_ubo/referenced-by-shader: pass if shader compiler moves UBOs between shaders
[piglit.git] / tests / spec / glsl-1.50 / uniform_buffer / gs-mat3x4-row-major.shader_test
blob419d7e1193b3903e723074b50682ec3da0b6efe2
1 [require]
2 GLSL >= 1.50
4 [vertex shader]
5 #version 150
7 in vec4 vertex;
8 out vec4 vertex_to_gs;
10 void main()
12         vertex_to_gs = vertex;
15 [geometry shader]
16 #version 150
18 layout(triangles) in;
19 layout(triangle_strip, max_vertices = 3) out;
21 uniform ubo1 {
22         layout(row_major) mat3x4 m;
25 in vec4 vertex_to_gs[3];
26 out vec4 v;
28 void main()
30         for (int i = 0; i < 3; i++) {
31                 gl_Position = vertex_to_gs[i];
32                 v = m[0] + m[1] + m[2];
33                 EmitVertex();
34         }
37 [fragment shader]
38 #version 150
40 in vec4 v;
42 void main()
44         gl_FragColor = v;
47 [vertex data]
48 vertex/float/2
49 -1.0 -1.0
50  1.0 -1.0
51  1.0  1.0
52 -1.0  1.0
54 [test]
55 uniform mat3x4 m 0.25 0.5 0.75 1.0   1.0 2.0 3.0 4.0   -1.0 -2.0 -3.0 -4.0
56 draw arrays GL_TRIANGLE_FAN 0 4
57 probe all rgba 0.25 0.5 0.75 1.0