ext_gpu_shader4: add compiler tests for everything
[piglit.git] / tests / spec / arb_tessellation_shader / compiler / barrier-func.tesc
blobf31443faa304d4a703b69485316a5d8ba32771dd
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 func() {
23     barrier();
26 void main() {
27     gl_out[gl_InvocationID].gl_Position = vec4(0.0);
28     func();
29     gl_TessLevelOuter = float[4](1.0, 1.0, 1.0, 1.0);
30     gl_TessLevelInner = float[2](1.0, 1.0);