ext_gpu_shader4: add compiler tests for everything
[piglit.git] / tests / spec / arb_tessellation_shader / compiler / barrier-for.tesc
blob51683f4813a21ef9fdd6b3211d113c76811b7aa3
1 // [config]
2 // expect_result: fail
3 // glsl_version: 1.50
4 // require_extensions: GL_ARB_tessellation_shader
5 // check_link: true
6 // [end config]
8 /**
9  * From issue 42:
10  *
11  * As a result, we choose a heavy-handed approach in which we only allow
12  * calls to barrier() inside main().  Even within main, barrier() calls are
13  * forbidden inside loops (even those that turn out to have constant loop
14  * counts and don't execute "break" or "continue" statements), if
15  * statements, or after a return statement.
16  */
18 #version 150
19 #extension GL_ARB_tessellation_shader: require
20 layout(vertices = 3) out;
22 void main() {
23     gl_out[gl_InvocationID].gl_Position = vec4(0.0);
24     for (int i = 0; i < 3; i++)
25         barrier();
26     gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 1.0);
27     gl_TessLevelInner = float[2](1.0, 1.0);