Merge pull request #2976 from jeremy-lunarg/hayes-fix-2975
[platform/upstream/glslang.git] / Test / spv.400.tesc
1 #version 400 core\r
2 \r
3 layout(vertices = 4) out;\r
4 int outa[gl_out.length()];\r
5 \r
6 patch out vec4 patchOut;\r
7 \r
8 void main()\r
9 {\r
10     barrier();\r
11 \r
12     int a = gl_MaxTessControlInputComponents +\r
13             gl_MaxTessControlOutputComponents +\r
14             gl_MaxTessControlTextureImageUnits +\r
15             gl_MaxTessControlUniformComponents +\r
16             gl_MaxTessControlTotalOutputComponents;\r
17 \r
18     vec4 p = gl_in[1].gl_Position;\r
19     float ps = gl_in[1].gl_PointSize;\r
20     float cd = gl_in[1].gl_ClipDistance[2];\r
21 \r
22     int pvi = gl_PatchVerticesIn;\r
23     int pid = gl_PrimitiveID;\r
24     int iid = gl_InvocationID;\r
25 \r
26     gl_out[gl_InvocationID].gl_Position = p;\r
27     gl_out[gl_InvocationID].gl_PointSize = ps;\r
28     gl_out[gl_InvocationID].gl_ClipDistance[1] = cd;\r
29 \r
30     gl_TessLevelOuter[3] = 3.2;\r
31     gl_TessLevelInner[1] = 1.3;\r
32 }\r
33 \r
34 in vec2 inb[];\r
35 in vec2 ind[gl_MaxPatchVertices];\r
36 \r
37 #extension GL_ARB_separate_shader_objects : enable\r
38 \r
39 layout(location = 3) in vec4 ivla[];\r
40 layout(location = 4) in vec4 ivlb[];\r
41 \r
42 layout(location = 3) out vec4 ovla[];\r
43 layout(location = 4) out vec4 ovlb[];\r