1617a3babSopenharmony_ci#version 150
2617a3babSopenharmony_ci
3617a3babSopenharmony_ci#extension GL_ARB_tessellation_shader : enable
4617a3babSopenharmony_ci
5617a3babSopenharmony_cilayout(quads, cw) in;
6617a3babSopenharmony_cilayout(fractional_odd_spacing) in;    
7617a3babSopenharmony_cilayout(point_mode) in;
8617a3babSopenharmony_cipatch in vec4 patchIn;
9617a3babSopenharmony_ci
10617a3babSopenharmony_civoid main()
11617a3babSopenharmony_ci{
12617a3babSopenharmony_ci    barrier(); // ERROR
13617a3babSopenharmony_ci
14617a3babSopenharmony_ci    int a = gl_MaxTessEvaluationInputComponents +
15617a3babSopenharmony_ci            gl_MaxTessEvaluationOutputComponents +
16617a3babSopenharmony_ci            gl_MaxTessEvaluationTextureImageUnits +
17617a3babSopenharmony_ci            gl_MaxTessEvaluationUniformComponents +
18617a3babSopenharmony_ci            gl_MaxTessPatchComponents +
19617a3babSopenharmony_ci            gl_MaxPatchVertices +
20617a3babSopenharmony_ci            gl_MaxTessGenLevel;
21617a3babSopenharmony_ci
22617a3babSopenharmony_ci    vec4 p = gl_in[1].gl_Position;
23617a3babSopenharmony_ci    float ps = gl_in[1].gl_PointSize;
24617a3babSopenharmony_ci    float cd = gl_in[1].gl_ClipDistance[2];
25617a3babSopenharmony_ci
26617a3babSopenharmony_ci    int pvi = gl_PatchVerticesIn;
27617a3babSopenharmony_ci    int pid = gl_PrimitiveID;
28617a3babSopenharmony_ci    vec3 tc = gl_TessCoord;
29617a3babSopenharmony_ci    float tlo = gl_TessLevelOuter[3];
30617a3babSopenharmony_ci    float tli = gl_TessLevelInner[1];
31617a3babSopenharmony_ci
32617a3babSopenharmony_ci    gl_Position = p;
33617a3babSopenharmony_ci    gl_PointSize = ps;
34617a3babSopenharmony_ci    gl_ClipDistance[2] = cd;
35617a3babSopenharmony_ci}
36