Merge pull request #2892 from greg-lunarg/mb
[platform/upstream/glslang.git] / Test / spv.450.tesc
1 #version 450 core\r
2 \r
3 layout(vertices = 4) out;\r
4 \r
5 layout(location=1) patch out vec4 patchOut;\r
6 \r
7 struct S {\r
8     float sMem1;  // should not see a patch decoration\r
9     float sMem2;  // should not see a patch decoration\r
10 };\r
11 \r
12 layout(location = 12) patch out TheBlock {\r
13     highp float bMem1;  // should not see a location decoration\r
14     highp float bMem2;\r
15     S s;                // should see a patch decoration\r
16 } tcBlock[2];\r
17 \r
18 void main()\r
19 {\r
20     gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
21 }\r
22 \r
23 layout(location = 2) patch out SingleBlock {\r
24     highp float bMem1;  // should not see a location decoration\r
25     highp float bMem2;\r
26     S s;                // should see a patch decoration\r
27 } singleBlock;\r
28 \r
29 layout(location = 20) patch out bn {\r
30                         vec4 v1; // location 20\r
31   layout(location = 24) vec4 v2; // location 24\r
32                         vec4 v3; // location 25\r
33 };