2 WARNING: AST will form illegal SPIR-V; need to transform to legalize
4 gl_FragCoord origin is upper left
6 0:12 Function Definition: osCall(struct-OS-p1-f1-t211; ( temp 4-component vector of float)
7 0:12 Function Parameters:
8 0:12 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
10 0:13 Branch: Return with expression
11 0:13 vector-scale ( temp 4-component vector of float)
12 0:13 a: direct index for structure ( temp float)
13 0:13 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
16 0:13 texture ( temp 4-component vector of float)
17 0:13 Construct combined texture-sampler ( temp sampler2D)
18 0:13 tex: direct index for structure ( temp texture2D)
19 0:13 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
22 0:13 ss: direct index for structure ( temp sampler)
23 0:13 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
29 0:17 Function Definition: @main( ( temp 4-component vector of float)
30 0:17 Function Parameters:
32 0:19 move second child to first child ( temp sampler)
33 0:19 ss: direct index for structure ( temp sampler)
34 0:19 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
37 0:19 'gss2' ( uniform sampler)
38 0:20 move second child to first child ( temp sampler)
39 0:20 ss: direct index for structure ( temp sampler)
40 0:20 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
43 0:20 'gss' ( uniform sampler)
44 0:21 move second child to first child ( temp texture2D)
45 0:21 tex: direct index for structure ( temp texture2D)
46 0:21 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
49 0:21 'gtex' ( uniform texture2D)
50 0:22 move second child to first child ( temp float)
51 0:22 a: direct index for structure ( temp float)
52 0:22 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
57 0:28 Branch: Return with expression
58 0:28 Function Call: osCall(struct-OS-p1-f1-t211; ( temp 4-component vector of float)
59 0:28 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
60 0:17 Function Definition: main( ( temp void)
61 0:17 Function Parameters:
63 0:17 move second child to first child ( temp 4-component vector of float)
64 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
65 0:17 Function Call: @main( ( temp 4-component vector of float)
67 0:? 'gss' ( uniform sampler)
68 0:? 'gss2' ( uniform sampler)
69 0:? 'gtex' ( uniform texture2D)
70 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
73 Linked fragment stage:
77 gl_FragCoord origin is upper left
79 0:12 Function Definition: osCall(struct-OS-p1-f1-t211; ( temp 4-component vector of float)
80 0:12 Function Parameters:
81 0:12 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
83 0:13 Branch: Return with expression
84 0:13 vector-scale ( temp 4-component vector of float)
85 0:13 a: direct index for structure ( temp float)
86 0:13 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
89 0:13 texture ( temp 4-component vector of float)
90 0:13 Construct combined texture-sampler ( temp sampler2D)
91 0:13 tex: direct index for structure ( temp texture2D)
92 0:13 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
95 0:13 ss: direct index for structure ( temp sampler)
96 0:13 's' ( in structure{ temp sampler ss, temp float a, temp texture2D tex})
102 0:17 Function Definition: @main( ( temp 4-component vector of float)
103 0:17 Function Parameters:
105 0:19 move second child to first child ( temp sampler)
106 0:19 ss: direct index for structure ( temp sampler)
107 0:19 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
110 0:19 'gss2' ( uniform sampler)
111 0:20 move second child to first child ( temp sampler)
112 0:20 ss: direct index for structure ( temp sampler)
113 0:20 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
116 0:20 'gss' ( uniform sampler)
117 0:21 move second child to first child ( temp texture2D)
118 0:21 tex: direct index for structure ( temp texture2D)
119 0:21 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
122 0:21 'gtex' ( uniform texture2D)
123 0:22 move second child to first child ( temp float)
124 0:22 a: direct index for structure ( temp float)
125 0:22 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
130 0:28 Branch: Return with expression
131 0:28 Function Call: osCall(struct-OS-p1-f1-t211; ( temp 4-component vector of float)
132 0:28 'os' ( temp structure{ temp sampler ss, temp float a, temp texture2D tex})
133 0:17 Function Definition: main( ( temp void)
134 0:17 Function Parameters:
136 0:17 move second child to first child ( temp 4-component vector of float)
137 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
138 0:17 Function Call: @main( ( temp 4-component vector of float)
140 0:? 'gss' ( uniform sampler)
141 0:? 'gss2' ( uniform sampler)
142 0:? 'gtex' ( uniform texture2D)
143 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float)
145 // Module Version 10000
146 // Generated by (magic number): 8000a
147 // Id's are bound by 64
150 1: ExtInstImport "GLSL.std.450"
151 MemoryModel Logical GLSL450
152 EntryPoint Fragment 4 "main" 62
153 ExecutionMode 4 OriginUpperLeft
157 MemberName 9(OS) 0 "ss"
158 MemberName 9(OS) 1 "a"
159 MemberName 9(OS) 2 "tex"
160 Name 14 "osCall(struct-OS-p1-f1-t211;"
168 Name 62 "@entryPointOutput"
169 Decorate 44(gss2) DescriptorSet 0
170 Decorate 44(gss2) Binding 1
171 Decorate 47(gss) DescriptorSet 0
172 Decorate 47(gss) Binding 0
173 Decorate 51(gtex) DescriptorSet 0
174 Decorate 51(gtex) Binding 2
175 Decorate 62(@entryPointOutput) Location 0
180 8: TypeImage 7(float) 2D sampled format:Unknown
181 9(OS): TypeStruct 6 7(float) 8
182 10: TypePointer Function 9(OS)
183 11: TypeVector 7(float) 4
184 12: TypeFunction 11(fvec4) 10(ptr)
185 16: TypeFunction 11(fvec4)
187 20: 19(int) Constant 1
188 21: TypePointer Function 7(float)
189 24: 19(int) Constant 2
190 25: TypePointer Function 8
191 28: 19(int) Constant 0
192 29: TypePointer Function 6
193 32: TypeSampledImage 8
194 34: TypeVector 7(float) 2
195 35: 7(float) Constant 1045220557
196 36: 7(float) Constant 1050253722
197 37: 34(fvec2) ConstantComposite 35 36
198 43: TypePointer UniformConstant 6
199 44(gss2): 43(ptr) Variable UniformConstant
200 47(gss): 43(ptr) Variable UniformConstant
201 50: TypePointer UniformConstant 8
202 51(gtex): 50(ptr) Variable UniformConstant
203 54: 7(float) Constant 1077936128
204 61: TypePointer Output 11(fvec4)
205 62(@entryPointOutput): 61(ptr) Variable Output
206 4(main): 2 Function None 3
208 63: 11(fvec4) FunctionCall 17(@main()
209 Store 62(@entryPointOutput) 63
212 14(osCall(struct-OS-p1-f1-t211;): 11(fvec4) Function None 12
213 13(s): 10(ptr) FunctionParameter
215 22: 21(ptr) AccessChain 13(s) 20
217 26: 25(ptr) AccessChain 13(s) 24
219 30: 29(ptr) AccessChain 13(s) 28
221 33: 32 SampledImage 27 31
222 38: 11(fvec4) ImageSampleImplicitLod 33 37
223 39: 11(fvec4) VectorTimesScalar 38 23
226 17(@main(): 11(fvec4) Function None 16
228 42(os): 10(ptr) Variable Function
229 56(param): 10(ptr) Variable Function
231 46: 29(ptr) AccessChain 42(os) 28
234 49: 29(ptr) AccessChain 42(os) 28
237 53: 25(ptr) AccessChain 42(os) 24
239 55: 21(ptr) AccessChain 42(os) 20
241 57: 9(OS) Load 42(os)
243 58: 11(fvec4) FunctionCall 14(osCall(struct-OS-p1-f1-t211;) 56(param)