yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

Zackery Mason-BlaugImplement optional cross-stage check for input with no matching output5fc62e82

main
1.8 KiB104 linesraw
1#version 460
2
3layout(location = 0) in BBlock0 {
4    vec4 b0;
5    vec4 b1;
6    vec4 b2;
7    vec4 b3;
8};
9
10layout(location = 4) in vec4 b4[2];
11
12layout(location = 6) in BBlock1 {
13    vec4 b5;
14};
15
16layout(location = 7) in vec4 b6[5];
17
18layout(location = 12) in float b7[4];
19
20layout(location = 21) in BBlock2 {
21    vec2 b8;
22    float b9;
23    layout(location = 16) vec3 b10;
24    float b11[4];
25};
26
27layout(location = 23) in BBlock3 {
28    float b12[6];
29};
30
31layout(location = 29) in BBlock4 {
32    float b13[]; // implicitly sized to 10
33};
34
35layout(location = 39) in BBlock5 {
36    flat ivec2 b14;
37};
38
39layout(location = 40) in mat2 b15;
40
41in flat uint b16;
42
43layout(location = 45) in BBlock6 {
44    vec4 b17;
45    layout(location = 43) vec4 b18;
46    vec4 b19;
47};
48
49layout(binding = 0) uniform UBO0 {
50    int i;
51} ubo0;
52
53layout(location = 46) in vec4 b20[4];
54
55layout(location = 50) in BBlock7 {
56    vec4 b21[10];
57};
58
59layout(location = 60) in vec2 b22;
60
61// automatically mapped by name
62in GBlock0 {
63    vec4 a20;
64};
65
66// automatically mapped by name
67in vec2 g_a21[2];
68
69out vec4 o;
70
71uint uncalled() {
72    return b16;
73}
74
75void main() {
76    o = b1;
77    o += b2;
78    o += b3;
79    o += b4[0];
80    o += b4[1];
81    o += b5;
82    o += b6[0];
83    o += b6[1];
84    o += b6[2];
85    o += b6[3];
86    o += b6[4];
87    o += vec4(b7[0], b7[1], b7[2], b7[3]);
88    o += b8.xxyy;
89    o += vec4(b9);
90    o += b10.xyzx;
91    o += vec4(b11[0], b11[1], b11[2], b11[3]);
92    o += vec4(b12[0], b12[1], b12[2], b12[3] + b12[4] + b12[5]);
93    o += vec4(b13[9], b13[7], b13[6], b13[0]);
94    if (false) {
95        o += (b15 * vec2(1.0)).xxyy;
96        o += b18;
97        o += b19;
98    }
99    o += b20[ubo0.i];
100    o += b21[ubo0.i];
101    o += b22.xxyy;
102    o += a20;
103    o += vec4(g_a21[0], g_a21[1]);
104}