ext_gpu_shader4: add compiler tests for everything
[piglit.git] / tests / spec / oes_geometry_shader / sso_validation / user-defined-gs-input-in-block.shader_test
blob52bd6ebd9836c39b2fad851ebf0aa4ac7fc529b6
1 [require]
2 GL ES >= 3.1
3 GLSL ES >= 3.10
4 GL_OES_geometry_shader
5 SSO ENABLED
7 [vertex shader]
8 #version 310 es
9 #extension GL_OES_shader_io_blocks: require
11 in vec4 piglit_vertex;
12 out Vertex {
13     vec4 c;
14 } v;
16 out gl_PerVertex {
17     vec4 gl_Position;
20 void main()
22     gl_Position = piglit_vertex;
23     v.c = vec4(0.0, 1.0, 0.0, 1.0);
26 [geometry shader]
27 #version 310 es
28 #extension GL_OES_geometry_shader: require
29 #extension GL_OES_shader_io_blocks: require
31 layout(triangles) in;
32 layout(triangle_strip, max_vertices=3) out;
34 in gl_PerVertex {
35     vec4 gl_Position;
36 } gl_in[];
38 in Vertex {
39     vec4 c;
40 } v[];
42 out vec4 fc;
44 void main()
46     for (int i = 0; i < gl_in.length(); i++) {
47         fc = v[i].c;
48         gl_Position = gl_in[i].gl_Position;
49         EmitVertex();
50     }
52     EndPrimitive();
55 [fragment shader]
56 #version 310 es
58 precision highp float;
60 in vec4 fc;
61 out vec4 piglit_fragcolor;
63 void main()
65     piglit_fragcolor = fc;
68 [test]
69 draw rect -1 -1 2 2
70 probe all rgba 0.0 1.0 0.0 1.0