1hlsl.structarray.flatten.frag
2Shader version: 500
3gl_FragCoord origin is upper left
40:? Sequence
50:23  Function Definition: @main(struct-PS_OUTPUT-vf41; ( temp void)
60:23    Function Parameters:
70:23      'ps_output' ( out structure{ temp 4-component vector of float color})
80:?     Sequence
90:24      move second child to first child ( temp 4-component vector of float)
100:24        color: direct index for structure ( temp 4-component vector of float)
110:24          'ps_output' ( out structure{ temp 4-component vector of float color})
120:24          Constant:
130:24            0 (const int)
140:26        add ( temp 4-component vector of float)
150:25          add ( temp 4-component vector of float)
160:25            texture ( temp 4-component vector of float)
170:25              Construct combined texture-sampler ( temp sampler1D)
180:?                 'g_texdata.tex' ( uniform texture1D)
190:?                 'g_texdata.samp' ( uniform sampler)
200:25              Constant:
210:25                0.500000
220:26            texture ( temp 4-component vector of float)
230:26              Construct combined texture-sampler ( temp sampler1D)
240:?                 'g_texdata_array[1].tex' ( uniform texture1D)
250:?                 'g_texdata_array[1].samp' ( uniform sampler)
260:26              Constant:
270:26                0.400000
280:27          texture ( temp 4-component vector of float)
290:27            Construct combined texture-sampler ( temp sampler1D)
300:27              direct index ( temp texture1D)
310:?                 'g_texdata_array2[1].tex' ( uniform 2-element array of texture1D)
320:27                Constant:
330:27                  0 (const int)
340:27              direct index ( temp sampler)
350:?                 'g_texdata_array2[1].samp' ( uniform 2-element array of sampler)
360:27                Constant:
370:27                  0 (const int)
380:27            Constant:
390:27              0.300000
400:23  Function Definition: main( ( temp void)
410:23    Function Parameters:
420:?     Sequence
430:23      Function Call: @main(struct-PS_OUTPUT-vf41; ( temp void)
440:?         'ps_output' ( temp structure{ temp 4-component vector of float color})
450:23      Sequence
460:23        move second child to first child ( temp 4-component vector of float)
470:?           'ps_output.color' (layout( location=0) out 4-component vector of float)
480:23          color: direct index for structure ( temp 4-component vector of float)
490:?             'ps_output' ( temp structure{ temp 4-component vector of float color})
500:23            Constant:
510:23              0 (const int)
520:?   Linker Objects
530:?     'g_samp' ( uniform sampler)
540:?     'g_tex' ( uniform texture1D)
550:?     'g_texdata.samp' ( uniform sampler)
560:?     'g_texdata.tex' ( uniform texture1D)
570:?     'g_texdata.nonopaque_thing' ( uniform int)
580:?     'g_texdata_array[0].samp' ( uniform sampler)
590:?     'g_texdata_array[0].tex' ( uniform texture1D)
600:?     'g_texdata_array[0].nonopaque_thing' ( uniform int)
610:?     'g_texdata_array[1].samp' ( uniform sampler)
620:?     'g_texdata_array[1].tex' ( uniform texture1D)
630:?     'g_texdata_array[1].nonopaque_thing' ( uniform int)
640:?     'g_texdata_array[2].samp' ( uniform sampler)
650:?     'g_texdata_array[2].tex' ( uniform texture1D)
660:?     'g_texdata_array[2].nonopaque_thing' ( uniform int)
670:?     'g_texdata_array2[0].samp' ( uniform 2-element array of sampler)
680:?     'g_texdata_array2[0].tex' ( uniform 2-element array of texture1D)
690:?     'g_texdata_array2[0].nonopaque_thing' ( uniform int)
700:?     'g_texdata_array2[1].samp' ( uniform 2-element array of sampler)
710:?     'g_texdata_array2[1].tex' ( uniform 2-element array of texture1D)
720:?     'g_texdata_array2[1].nonopaque_thing' ( uniform int)
730:?     'g_texdata_array2[2].samp' ( uniform 2-element array of sampler)
740:?     'g_texdata_array2[2].tex' ( uniform 2-element array of texture1D)
750:?     'g_texdata_array2[2].nonopaque_thing' ( uniform int)
760:?     'ps_output.color' (layout( location=0) out 4-component vector of float)
77
78
79Linked fragment stage:
80
81
82Shader version: 500
83gl_FragCoord origin is upper left
840:? Sequence
850:23  Function Definition: @main(struct-PS_OUTPUT-vf41; ( temp void)
860:23    Function Parameters:
870:23      'ps_output' ( out structure{ temp 4-component vector of float color})
880:?     Sequence
890:24      move second child to first child ( temp 4-component vector of float)
900:24        color: direct index for structure ( temp 4-component vector of float)
910:24          'ps_output' ( out structure{ temp 4-component vector of float color})
920:24          Constant:
930:24            0 (const int)
940:26        add ( temp 4-component vector of float)
950:25          add ( temp 4-component vector of float)
960:25            texture ( temp 4-component vector of float)
970:25              Construct combined texture-sampler ( temp sampler1D)
980:?                 'g_texdata.tex' ( uniform texture1D)
990:?                 'g_texdata.samp' ( uniform sampler)
1000:25              Constant:
1010:25                0.500000
1020:26            texture ( temp 4-component vector of float)
1030:26              Construct combined texture-sampler ( temp sampler1D)
1040:?                 'g_texdata_array[1].tex' ( uniform texture1D)
1050:?                 'g_texdata_array[1].samp' ( uniform sampler)
1060:26              Constant:
1070:26                0.400000
1080:27          texture ( temp 4-component vector of float)
1090:27            Construct combined texture-sampler ( temp sampler1D)
1100:27              direct index ( temp texture1D)
1110:?                 'g_texdata_array2[1].tex' ( uniform 2-element array of texture1D)
1120:27                Constant:
1130:27                  0 (const int)
1140:27              direct index ( temp sampler)
1150:?                 'g_texdata_array2[1].samp' ( uniform 2-element array of sampler)
1160:27                Constant:
1170:27                  0 (const int)
1180:27            Constant:
1190:27              0.300000
1200:23  Function Definition: main( ( temp void)
1210:23    Function Parameters:
1220:?     Sequence
1230:23      Function Call: @main(struct-PS_OUTPUT-vf41; ( temp void)
1240:?         'ps_output' ( temp structure{ temp 4-component vector of float color})
1250:23      Sequence
1260:23        move second child to first child ( temp 4-component vector of float)
1270:?           'ps_output.color' (layout( location=0) out 4-component vector of float)
1280:23          color: direct index for structure ( temp 4-component vector of float)
1290:?             'ps_output' ( temp structure{ temp 4-component vector of float color})
1300:23            Constant:
1310:23              0 (const int)
1320:?   Linker Objects
1330:?     'g_samp' ( uniform sampler)
1340:?     'g_tex' ( uniform texture1D)
1350:?     'g_texdata.samp' ( uniform sampler)
1360:?     'g_texdata.tex' ( uniform texture1D)
1370:?     'g_texdata.nonopaque_thing' ( uniform int)
1380:?     'g_texdata_array[0].samp' ( uniform sampler)
1390:?     'g_texdata_array[0].tex' ( uniform texture1D)
1400:?     'g_texdata_array[0].nonopaque_thing' ( uniform int)
1410:?     'g_texdata_array[1].samp' ( uniform sampler)
1420:?     'g_texdata_array[1].tex' ( uniform texture1D)
1430:?     'g_texdata_array[1].nonopaque_thing' ( uniform int)
1440:?     'g_texdata_array[2].samp' ( uniform sampler)
1450:?     'g_texdata_array[2].tex' ( uniform texture1D)
1460:?     'g_texdata_array[2].nonopaque_thing' ( uniform int)
1470:?     'g_texdata_array2[0].samp' ( uniform 2-element array of sampler)
1480:?     'g_texdata_array2[0].tex' ( uniform 2-element array of texture1D)
1490:?     'g_texdata_array2[0].nonopaque_thing' ( uniform int)
1500:?     'g_texdata_array2[1].samp' ( uniform 2-element array of sampler)
1510:?     'g_texdata_array2[1].tex' ( uniform 2-element array of texture1D)
1520:?     'g_texdata_array2[1].nonopaque_thing' ( uniform int)
1530:?     'g_texdata_array2[2].samp' ( uniform 2-element array of sampler)
1540:?     'g_texdata_array2[2].tex' ( uniform 2-element array of texture1D)
1550:?     'g_texdata_array2[2].nonopaque_thing' ( uniform int)
1560:?     'ps_output.color' (layout( location=0) out 4-component vector of float)
157
158// Module Version 10000
159// Generated by (magic number): 80007
160// Id's are bound by 80
161
162                              Capability Shader
163                              Capability Sampled1D
164               1:             ExtInstImport  "GLSL.std.450"
165                              MemoryModel Logical GLSL450
166                              EntryPoint Fragment 4  "main" 59
167                              ExecutionMode 4 OriginUpperLeft
168                              Source HLSL 500
169                              Name 4  "main"
170                              Name 8  "PS_OUTPUT"
171                              MemberName 8(PS_OUTPUT) 0  "color"
172                              Name 12  "@main(struct-PS_OUTPUT-vf41;"
173                              Name 11  "ps_output"
174                              Name 18  "g_texdata.tex"
175                              Name 22  "g_texdata.samp"
176                              Name 28  "g_texdata_array[1].tex"
177                              Name 30  "g_texdata_array[1].samp"
178                              Name 40  "g_texdata_array2[1].tex"
179                              Name 45  "g_texdata_array2[1].samp"
180                              Name 54  "ps_output"
181                              Name 55  "param"
182                              Name 59  "ps_output.color"
183                              Name 62  "g_samp"
184                              Name 63  "g_tex"
185                              Name 65  "g_texdata.nonopaque_thing"
186                              Name 66  "g_texdata_array[0].samp"
187                              Name 67  "g_texdata_array[0].tex"
188                              Name 68  "g_texdata_array[0].nonopaque_thing"
189                              Name 69  "g_texdata_array[1].nonopaque_thing"
190                              Name 70  "g_texdata_array[2].samp"
191                              Name 71  "g_texdata_array[2].tex"
192                              Name 72  "g_texdata_array[2].nonopaque_thing"
193                              Name 73  "g_texdata_array2[0].samp"
194                              Name 74  "g_texdata_array2[0].tex"
195                              Name 75  "g_texdata_array2[0].nonopaque_thing"
196                              Name 76  "g_texdata_array2[1].nonopaque_thing"
197                              Name 77  "g_texdata_array2[2].samp"
198                              Name 78  "g_texdata_array2[2].tex"
199                              Name 79  "g_texdata_array2[2].nonopaque_thing"
200                              Decorate 18(g_texdata.tex) DescriptorSet 0
201                              Decorate 22(g_texdata.samp) DescriptorSet 0
202                              Decorate 28(g_texdata_array[1].tex) DescriptorSet 0
203                              Decorate 30(g_texdata_array[1].samp) DescriptorSet 0
204                              Decorate 40(g_texdata_array2[1].tex) DescriptorSet 0
205                              Decorate 45(g_texdata_array2[1].samp) DescriptorSet 0
206                              Decorate 59(ps_output.color) Location 0
207                              Decorate 62(g_samp) DescriptorSet 0
208                              Decorate 63(g_tex) DescriptorSet 0
209                              Decorate 66(g_texdata_array[0].samp) DescriptorSet 0
210                              Decorate 67(g_texdata_array[0].tex) DescriptorSet 0
211                              Decorate 70(g_texdata_array[2].samp) DescriptorSet 0
212                              Decorate 71(g_texdata_array[2].tex) DescriptorSet 0
213                              Decorate 73(g_texdata_array2[0].samp) DescriptorSet 0
214                              Decorate 74(g_texdata_array2[0].tex) DescriptorSet 0
215                              Decorate 77(g_texdata_array2[2].samp) DescriptorSet 0
216                              Decorate 78(g_texdata_array2[2].tex) DescriptorSet 0
217               2:             TypeVoid
218               3:             TypeFunction 2
219               6:             TypeFloat 32
220               7:             TypeVector 6(float) 4
221    8(PS_OUTPUT):             TypeStruct 7(fvec4)
222               9:             TypePointer Function 8(PS_OUTPUT)
223              10:             TypeFunction 2 9(ptr)
224              14:             TypeInt 32 1
225              15:     14(int) Constant 0
226              16:             TypeImage 6(float) 1D sampled format:Unknown
227              17:             TypePointer UniformConstant 16
22818(g_texdata.tex):     17(ptr) Variable UniformConstant
229              20:             TypeSampler
230              21:             TypePointer UniformConstant 20
23122(g_texdata.samp):     21(ptr) Variable UniformConstant
232              24:             TypeSampledImage 16
233              26:    6(float) Constant 1056964608
23428(g_texdata_array[1].tex):     17(ptr) Variable UniformConstant
23530(g_texdata_array[1].samp):     21(ptr) Variable UniformConstant
236              33:    6(float) Constant 1053609165
237              36:             TypeInt 32 0
238              37:     36(int) Constant 2
239              38:             TypeArray 16 37
240              39:             TypePointer UniformConstant 38
24140(g_texdata_array2[1].tex):     39(ptr) Variable UniformConstant
242              43:             TypeArray 20 37
243              44:             TypePointer UniformConstant 43
24445(g_texdata_array2[1].samp):     44(ptr) Variable UniformConstant
245              49:    6(float) Constant 1050253722
246              52:             TypePointer Function 7(fvec4)
247              58:             TypePointer Output 7(fvec4)
24859(ps_output.color):     58(ptr) Variable Output
249      62(g_samp):     21(ptr) Variable UniformConstant
250       63(g_tex):     17(ptr) Variable UniformConstant
251              64:             TypePointer UniformConstant 14(int)
25265(g_texdata.nonopaque_thing):     64(ptr) Variable UniformConstant
25366(g_texdata_array[0].samp):     21(ptr) Variable UniformConstant
25467(g_texdata_array[0].tex):     17(ptr) Variable UniformConstant
25568(g_texdata_array[0].nonopaque_thing):     64(ptr) Variable UniformConstant
25669(g_texdata_array[1].nonopaque_thing):     64(ptr) Variable UniformConstant
25770(g_texdata_array[2].samp):     21(ptr) Variable UniformConstant
25871(g_texdata_array[2].tex):     17(ptr) Variable UniformConstant
25972(g_texdata_array[2].nonopaque_thing):     64(ptr) Variable UniformConstant
26073(g_texdata_array2[0].samp):     44(ptr) Variable UniformConstant
26174(g_texdata_array2[0].tex):     39(ptr) Variable UniformConstant
26275(g_texdata_array2[0].nonopaque_thing):     64(ptr) Variable UniformConstant
26376(g_texdata_array2[1].nonopaque_thing):     64(ptr) Variable UniformConstant
26477(g_texdata_array2[2].samp):     44(ptr) Variable UniformConstant
26578(g_texdata_array2[2].tex):     39(ptr) Variable UniformConstant
26679(g_texdata_array2[2].nonopaque_thing):     64(ptr) Variable UniformConstant
267         4(main):           2 Function None 3
268               5:             Label
269   54(ps_output):      9(ptr) Variable Function
270       55(param):      9(ptr) Variable Function
271              56:           2 FunctionCall 12(@main(struct-PS_OUTPUT-vf41;) 55(param)
272              57:8(PS_OUTPUT) Load 55(param)
273                              Store 54(ps_output) 57
274              60:     52(ptr) AccessChain 54(ps_output) 15
275              61:    7(fvec4) Load 60
276                              Store 59(ps_output.color) 61
277                              Return
278                              FunctionEnd
27912(@main(struct-PS_OUTPUT-vf41;):           2 Function None 10
280   11(ps_output):      9(ptr) FunctionParameter
281              13:             Label
282              19:          16 Load 18(g_texdata.tex)
283              23:          20 Load 22(g_texdata.samp)
284              25:          24 SampledImage 19 23
285              27:    7(fvec4) ImageSampleImplicitLod 25 26
286              29:          16 Load 28(g_texdata_array[1].tex)
287              31:          20 Load 30(g_texdata_array[1].samp)
288              32:          24 SampledImage 29 31
289              34:    7(fvec4) ImageSampleImplicitLod 32 33
290              35:    7(fvec4) FAdd 27 34
291              41:     17(ptr) AccessChain 40(g_texdata_array2[1].tex) 15
292              42:          16 Load 41
293              46:     21(ptr) AccessChain 45(g_texdata_array2[1].samp) 15
294              47:          20 Load 46
295              48:          24 SampledImage 42 47
296              50:    7(fvec4) ImageSampleImplicitLod 48 49
297              51:    7(fvec4) FAdd 35 50
298              53:     52(ptr) AccessChain 11(ps_output) 15
299                              Store 53 51
300                              Return
301                              FunctionEnd
302