blob: b4de7bd82aac38431c4287509df4c8a72dc8f362 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
|
spv.unit1.frag
Shader version: 460
gl_FragCoord origin is upper left
0:? Sequence
0:10 Function Definition: main( ( global void)
0:10 Function Parameters:
0:12 Sequence
0:12 move second child to first child ( temp highp float)
0:12 'f' ( global highp float)
0:12 Constant:
0:12 10.000000
0:13 Sequence
0:13 move second child to first child ( temp highp float)
0:13 'g' ( temp highp float)
0:13 Function Call: foo( ( global highp float)
0:14 add second child into first child ( temp highp float)
0:14 'f' ( global highp float)
0:14 'g' ( temp highp float)
0:15 add second child into first child ( temp highp float)
0:15 'f' ( global highp float)
0:15 direct index ( temp highp float)
0:15 'gl_FragCoord' ( gl_FragCoord highp 4-component vector of float FragCoord)
0:15 Constant:
0:15 1 (const int)
0:? Linker Objects
0:? 'f' ( global highp float)
0:? 'a1' ( global highp float)
0:? 'cout' ( out highp float)
spv.unit2.frag
Shader version: 410
gl_FragCoord origin is upper left
0:? Sequence
0:12 Function Definition: foo( ( global highp float)
0:12 Function Parameters:
0:14 Sequence
0:14 Sequence
0:14 move second child to first child ( temp highp float)
0:14 'h2' ( temp highp float)
0:14 add ( temp highp float)
0:14 component-wise multiply ( temp highp float)
0:14 Constant:
0:14 2.000000
0:14 'f' ( global highp float)
0:14 'cin' ( smooth in highp float)
0:15 Sequence
0:15 move second child to first child ( temp highp float)
0:15 'g2' ( temp highp float)
0:15 Function Call: bar( ( global highp float)
0:16 Branch: Return with expression
0:16 add ( temp highp float)
0:16 add ( temp highp float)
0:16 'h2' ( temp highp float)
0:16 'g2' ( temp highp float)
0:16 direct index ( temp highp float)
0:16 'gl_FragCoord' ( gl_FragCoord highp 4-component vector of float FragCoord)
0:16 Constant:
0:16 1 (const int)
0:? Linker Objects
0:? 'a2' ( global highp float)
0:? 'f' ( global highp float)
0:? 'cout' ( out highp float)
0:? 'cin' ( smooth in highp float)
spv.unit3.frag
Shader version: 460
gl_FragCoord origin is upper left
0:? Sequence
0:4 Sequence
0:4 move second child to first child ( temp highp float)
0:4 'h3' ( global highp float)
0:4 Constant:
0:4 3.000000
0:9 Function Definition: bar( ( global highp float)
0:9 Function Parameters:
0:11 Sequence
0:11 multiply second child into first child ( temp highp float)
0:11 'h3' ( global highp float)
0:11 'f' ( global highp float)
0:12 Sequence
0:12 move second child to first child ( temp highp float)
0:12 'g3' ( temp highp float)
0:12 component-wise multiply ( temp highp float)
0:12 Constant:
0:12 2.000000
0:12 'h3' ( global highp float)
0:13 move second child to first child ( temp highp float)
0:13 'cout' ( out highp float)
0:13 'g3' ( temp highp float)
0:14 Branch: Return with expression
0:14 add ( temp highp float)
0:14 add ( temp highp float)
0:14 'h3' ( global highp float)
0:14 'g3' ( temp highp float)
0:14 direct index ( temp highp float)
0:14 'gl_FragCoord' ( gl_FragCoord highp 4-component vector of float FragCoord)
0:14 Constant:
0:14 1 (const int)
0:? Linker Objects
0:? 'f' ( global highp float)
0:? 'h3' ( global highp float)
0:? 'cout' ( out highp float)
0:? 'cin' ( smooth in highp float)
Linked fragment stage:
Shader version: 460
gl_FragCoord origin is upper left
0:? Sequence
0:10 Function Definition: main( ( global void)
0:10 Function Parameters:
0:12 Sequence
0:12 move second child to first child ( temp highp float)
0:12 'f' ( global highp float)
0:12 Constant:
0:12 10.000000
0:13 Sequence
0:13 move second child to first child ( temp highp float)
0:13 'g' ( temp highp float)
0:13 Function Call: foo( ( global highp float)
0:14 add second child into first child ( temp highp float)
0:14 'f' ( global highp float)
0:14 'g' ( temp highp float)
0:15 add second child into first child ( temp highp float)
0:15 'f' ( global highp float)
0:15 direct index ( temp highp float)
0:15 'gl_FragCoord' ( gl_FragCoord highp 4-component vector of float FragCoord)
0:15 Constant:
0:15 1 (const int)
0:12 Function Definition: foo( ( global highp float)
0:12 Function Parameters:
0:14 Sequence
0:14 Sequence
0:14 move second child to first child ( temp highp float)
0:14 'h2' ( temp highp float)
0:14 add ( temp highp float)
0:14 component-wise multiply ( temp highp float)
0:14 Constant:
0:14 2.000000
0:14 'f' ( global highp float)
0:14 'cin' ( smooth in highp float)
0:15 Sequence
0:15 move second child to first child ( temp highp float)
0:15 'g2' ( temp highp float)
0:15 Function Call: bar( ( global highp float)
0:16 Branch: Return with expression
0:16 add ( temp highp float)
0:16 add ( temp highp float)
0:16 'h2' ( temp highp float)
0:16 'g2' ( temp highp float)
0:16 direct index ( temp highp float)
0:16 'gl_FragCoord' ( gl_FragCoord highp 4-component vector of float FragCoord)
0:16 Constant:
0:16 1 (const int)
0:4 Sequence
0:4 move second child to first child ( temp highp float)
0:4 'h3' ( global highp float)
0:4 Constant:
0:4 3.000000
0:9 Function Definition: bar( ( global highp float)
0:9 Function Parameters:
0:11 Sequence
0:11 multiply second child into first child ( temp highp float)
0:11 'h3' ( global highp float)
0:11 'f' ( global highp float)
0:12 Sequence
0:12 move second child to first child ( temp highp float)
0:12 'g3' ( temp highp float)
0:12 component-wise multiply ( temp highp float)
0:12 Constant:
0:12 2.000000
0:12 'h3' ( global highp float)
0:13 move second child to first child ( temp highp float)
0:13 'cout' ( out highp float)
0:13 'g3' ( temp highp float)
0:14 Branch: Return with expression
0:14 add ( temp highp float)
0:14 add ( temp highp float)
0:14 'h3' ( global highp float)
0:14 'g3' ( temp highp float)
0:14 direct index ( temp highp float)
0:14 'gl_FragCoord' ( gl_FragCoord highp 4-component vector of float FragCoord)
0:14 Constant:
0:14 1 (const int)
0:? Linker Objects
0:? 'f' ( global highp float)
0:? 'a1' ( global highp float)
0:? 'cout' ( out highp float)
0:? 'a2' ( global highp float)
0:? 'cin' ( smooth in highp float)
0:? 'h3' ( global highp float)
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 69
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 25 37 57
ExecutionMode 4 OriginUpperLeft
Source GLSL 460
Name 4 "main"
Name 8 "foo("
Name 10 "bar("
Name 13 "h3"
Name 15 "f"
Name 18 "g"
Name 25 "gl_FragCoord"
Name 33 "h2"
Name 37 "cin"
Name 40 "g2"
Name 53 "g3"
Name 57 "cout"
Name 67 "a1"
Name 68 "a2"
Decorate 25(gl_FragCoord) BuiltIn FragCoord
Decorate 37(cin) Location 0
Decorate 57(cout) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeFunction 6(float)
12: TypePointer Private 6(float)
13(h3): 12(ptr) Variable Private
14: 6(float) Constant 1077936128
15(f): 12(ptr) Variable Private
16: 6(float) Constant 1092616192
17: TypePointer Function 6(float)
23: TypeVector 6(float) 4
24: TypePointer Input 23(fvec4)
25(gl_FragCoord): 24(ptr) Variable Input
26: TypeInt 32 0
27: 26(int) Constant 1
28: TypePointer Input 6(float)
34: 6(float) Constant 1073741824
37(cin): 28(ptr) Variable Input
56: TypePointer Output 6(float)
57(cout): 56(ptr) Variable Output
67(a1): 12(ptr) Variable Private
68(a2): 12(ptr) Variable Private
4(main): 2 Function None 3
5: Label
18(g): 17(ptr) Variable Function
Store 13(h3) 14
Store 15(f) 16
19: 6(float) FunctionCall 8(foo()
Store 18(g) 19
20: 6(float) Load 18(g)
21: 6(float) Load 15(f)
22: 6(float) FAdd 21 20
Store 15(f) 22
29: 28(ptr) AccessChain 25(gl_FragCoord) 27
30: 6(float) Load 29
31: 6(float) Load 15(f)
32: 6(float) FAdd 31 30
Store 15(f) 32
Return
FunctionEnd
8(foo(): 6(float) Function None 7
9: Label
33(h2): 17(ptr) Variable Function
40(g2): 17(ptr) Variable Function
35: 6(float) Load 15(f)
36: 6(float) FMul 34 35
38: 6(float) Load 37(cin)
39: 6(float) FAdd 36 38
Store 33(h2) 39
41: 6(float) FunctionCall 10(bar()
Store 40(g2) 41
42: 6(float) Load 33(h2)
43: 6(float) Load 40(g2)
44: 6(float) FAdd 42 43
45: 28(ptr) AccessChain 25(gl_FragCoord) 27
46: 6(float) Load 45
47: 6(float) FAdd 44 46
ReturnValue 47
FunctionEnd
10(bar(): 6(float) Function None 7
11: Label
53(g3): 17(ptr) Variable Function
50: 6(float) Load 15(f)
51: 6(float) Load 13(h3)
52: 6(float) FMul 51 50
Store 13(h3) 52
54: 6(float) Load 13(h3)
55: 6(float) FMul 34 54
Store 53(g3) 55
58: 6(float) Load 53(g3)
Store 57(cout) 58
59: 6(float) Load 13(h3)
60: 6(float) Load 53(g3)
61: 6(float) FAdd 59 60
62: 28(ptr) AccessChain 25(gl_FragCoord) 27
63: 6(float) Load 62
64: 6(float) FAdd 61 63
ReturnValue 64
FunctionEnd
|