• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1link.vk.multiBlocksValid.1.0.geom
2Shader version: 430
3invocations = -1
4max_vertices = 3
5input primitive = triangles
6output primitive = triangle_strip
70:? Sequence
80:48  Function Definition: main( ( global void)
90:48    Function Parameters:
100:50    Sequence
110:50      move second child to first child ( temp highp 4-component vector of float)
120:50        'oColor' (layout( stream=0) out highp 4-component vector of float)
130:50        component-wise multiply ( temp highp 4-component vector of float)
140:50          color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
150:50            'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
160:50            Constant:
170:50              0 (const int)
180:50          Function Call: getColor2( ( global highp 4-component vector of float)
190:52      move second child to first child ( temp highp float)
200:52        'globalF' ( global highp float)
210:52        Constant:
220:52          1.000000
230:54      Sequence
240:54        Sequence
250:54          move second child to first child ( temp highp int)
260:54            'i' ( temp highp int)
270:54            Constant:
280:54              0 (const int)
290:54        Loop with condition tested first
300:54          Loop Condition
310:54          Compare Less Than ( temp bool)
320:54            'i' ( temp highp int)
330:54            Constant:
340:54              3 (const int)
350:54          Loop Body
360:56          Sequence
370:56            move second child to first child ( temp highp 4-component vector of float)
380:56              gl_Position: direct index for structure (layout( stream=0) gl_Position highp 4-component vector of float Position)
390:56                'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
400:56                Constant:
410:56                  0 (const uint)
420:56              matrix-times-vector ( temp highp 4-component vector of float)
430:56                uProj: direct index for structure (layout( column_major std140 offset=0) uniform highp 4X4 matrix of float)
440:56                  'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
450:56                  Constant:
460:56                    0 (const int)
470:56                Function Call: getWorld(i1; ( global highp 4-component vector of float)
480:56                  'i' ( temp highp int)
490:57            move second child to first child ( temp highp 4-component vector of float)
500:57              val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
510:57                'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
520:57                Constant:
530:57                  0 (const int)
540:57              add ( temp highp 4-component vector of float)
550:57                color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
560:57                  'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
570:57                  Constant:
580:57                    0 (const int)
590:57                vector-scale ( temp highp 4-component vector of float)
600:57                  v2: direct index for structure ( in highp 4-component vector of float)
610:57                    indirect index ( temp block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
620:57                      'iV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
630:57                      'i' ( temp highp int)
640:57                    Constant:
650:57                      1 (const int)
660:57                  'globalF' ( global highp float)
670:58            EmitVertex ( global void)
680:54          Loop Terminal Expression
690:54          Post-Increment ( temp highp int)
700:54            'i' ( temp highp int)
710:61      EndPrimitive ( global void)
720:?   Linker Objects
730:?     'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
740:?     'iV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
750:?     'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
760:?     'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
770:?     'uBuf' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p})
780:?     'oColor' (layout( stream=0) out highp 4-component vector of float)
790:?     'globalF' ( global highp float)
800:?     'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out unsized 1-element array of float ClipDistance gl_ClipDistance})
81
82link.vk.multiBlocksValid.1.1.geom
83Shader version: 430
84invocations = -1
85max_vertices = 3
86input primitive = triangles
87output primitive = triangle_strip
880:? Sequence
890:44  Function Definition: getColor2( ( global highp 4-component vector of float)
900:44    Function Parameters:
910:46    Sequence
920:46      Branch: Return with expression
930:46        color2: direct index for structure (layout( column_major std140 offset=32) uniform highp 4-component vector of float)
940:46          'uColor' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
950:46          Constant:
960:46            2 (const int)
970:49  Function Definition: getWorld(i1; ( global highp 4-component vector of float)
980:49    Function Parameters:
990:49      'i' ( in highp int)
1000:51    Sequence
1010:51      move second child to first child ( temp highp 4-component vector of float)
1020:51        val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
1030:51          'anon@0' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
1040:51          Constant:
1050:51            0 (const uint)
1060:51        Constant:
1070:51          1.000000
1080:51          1.000000
1090:51          1.000000
1100:51          1.000000
1110:52      Branch: Return with expression
1120:52        matrix-times-vector ( temp highp 4-component vector of float)
1130:52          uWorld: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float)
1140:52            'uMatrix' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
1150:52            Constant:
1160:52              1 (const int)
1170:52          v1: direct index for structure ( in highp 4-component vector of float)
1180:52            indirect index ( temp block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
1190:52              'iVV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
1200:52              'i' ( in highp int)
1210:52            Constant:
1220:52              0 (const int)
1230:?   Linker Objects
1240:?     'uColor' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
1250:?     'uBuffer' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p})
1260:?     'uMatrix' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
1270:?     'anon@0' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
1280:?     'iVV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
1290:?     'P' ( in 3-element array of highp 4-component vector of float)
130
131
132Linked geometry stage:
133
134WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
135    geometry stage: Block: ColorBlock Instance: uC: ""
136    geometry stage: Block: ColorBlock Instance: uColor: ""
137WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
138    geometry stage: Block: BufferBlock Instance: uBuf: ""
139    geometry stage: Block: BufferBlock Instance: uBuffer: ""
140WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
141    geometry stage: Block: MatrixBlock Instance: uM: ""
142    geometry stage: Block: MatrixBlock Instance: uMatrix: ""
143WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
144    geometry stage: Block: Vertex Instance: oV: ""
145    geometry stage: Block: Vertex Instance: anon@0: ""
146WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
147    geometry stage: Block: Vertex Instance: iV: ""
148    geometry stage: Block: Vertex Instance: iVV: ""
149
150Shader version: 430
151invocations = 1
152max_vertices = 3
153input primitive = triangles
154output primitive = triangle_strip
1550:? Sequence
1560:48  Function Definition: main( ( global void)
1570:48    Function Parameters:
1580:50    Sequence
1590:50      move second child to first child ( temp highp 4-component vector of float)
1600:50        'oColor' (layout( stream=0) out highp 4-component vector of float)
1610:50        component-wise multiply ( temp highp 4-component vector of float)
1620:50          color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
1630:50            'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
1640:50            Constant:
1650:50              0 (const int)
1660:50          Function Call: getColor2( ( global highp 4-component vector of float)
1670:52      move second child to first child ( temp highp float)
1680:52        'globalF' ( global highp float)
1690:52        Constant:
1700:52          1.000000
1710:54      Sequence
1720:54        Sequence
1730:54          move second child to first child ( temp highp int)
1740:54            'i' ( temp highp int)
1750:54            Constant:
1760:54              0 (const int)
1770:54        Loop with condition tested first
1780:54          Loop Condition
1790:54          Compare Less Than ( temp bool)
1800:54            'i' ( temp highp int)
1810:54            Constant:
1820:54              3 (const int)
1830:54          Loop Body
1840:56          Sequence
1850:56            move second child to first child ( temp highp 4-component vector of float)
1860:56              gl_Position: direct index for structure (layout( stream=0) gl_Position highp 4-component vector of float Position)
1870:56                'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
1880:56                Constant:
1890:56                  0 (const uint)
1900:56              matrix-times-vector ( temp highp 4-component vector of float)
1910:56                uProj: direct index for structure (layout( column_major std140 offset=0) uniform highp 4X4 matrix of float)
1920:56                  'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
1930:56                  Constant:
1940:56                    0 (const int)
1950:56                Function Call: getWorld(i1; ( global highp 4-component vector of float)
1960:56                  'i' ( temp highp int)
1970:57            move second child to first child ( temp highp 4-component vector of float)
1980:57              val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
1990:57                'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
2000:57                Constant:
2010:57                  0 (const int)
2020:57              add ( temp highp 4-component vector of float)
2030:57                color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
2040:57                  'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
2050:57                  Constant:
2060:57                    0 (const int)
2070:57                vector-scale ( temp highp 4-component vector of float)
2080:57                  v2: direct index for structure ( in highp 4-component vector of float)
2090:57                    indirect index ( temp block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
2100:57                      'iV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
2110:57                      'i' ( temp highp int)
2120:57                    Constant:
2130:57                      1 (const int)
2140:57                  'globalF' ( global highp float)
2150:58            EmitVertex ( global void)
2160:54          Loop Terminal Expression
2170:54          Post-Increment ( temp highp int)
2180:54            'i' ( temp highp int)
2190:61      EndPrimitive ( global void)
2200:44  Function Definition: getColor2( ( global highp 4-component vector of float)
2210:44    Function Parameters:
2220:46    Sequence
2230:46      Branch: Return with expression
2240:46        color2: direct index for structure (layout( column_major std140 offset=32) uniform highp 4-component vector of float)
2250:46          'uColor' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
2260:46          Constant:
2270:46            2 (const int)
2280:49  Function Definition: getWorld(i1; ( global highp 4-component vector of float)
2290:49    Function Parameters:
2300:49      'i' ( in highp int)
2310:51    Sequence
2320:51      move second child to first child ( temp highp 4-component vector of float)
2330:51        val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
2340:51          'anon@0' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
2350:51          Constant:
2360:51            0 (const uint)
2370:51        Constant:
2380:51          1.000000
2390:51          1.000000
2400:51          1.000000
2410:51          1.000000
2420:52      Branch: Return with expression
2430:52        matrix-times-vector ( temp highp 4-component vector of float)
2440:52          uWorld: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float)
2450:52            'uMatrix' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
2460:52            Constant:
2470:52              1 (const int)
2480:52          v1: direct index for structure ( in highp 4-component vector of float)
2490:52            indirect index ( temp block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
2500:52              'iVV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
2510:52              'i' ( in highp int)
2520:52            Constant:
2530:52              0 (const int)
2540:?   Linker Objects
2550:?     'uM' (layout( binding=0 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4X4 matrix of float uProj, layout( column_major std140 offset=64) uniform highp 4X4 matrix of float uWorld})
2560:?     'iV' ( in 3-element array of block{ in highp 4-component vector of float v1,  in highp 4-component vector of float v2})
2570:?     'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
2580:?     'uC' (layout( binding=1 column_major std140) uniform block{layout( column_major std140 offset=0) uniform highp 4-component vector of float color1, layout( column_major std140 offset=16) uniform bool b, layout( column_major std140 offset=32) uniform highp 4-component vector of float color2, layout( column_major std140 offset=48) uniform highp 4-component vector of float color3})
2590:?     'uBuf' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p})
2600:?     'oColor' (layout( stream=0) out highp 4-component vector of float)
2610:?     'globalF' ( global highp float)
2620:?     'anon@0' (layout( stream=0) out block{layout( stream=0) gl_Position 4-component vector of float Position gl_Position, layout( stream=0) gl_PointSize float PointSize gl_PointSize, layout( stream=0) out 1-element array of float ClipDistance gl_ClipDistance})
2630:?     'P' ( in 3-element array of highp 4-component vector of float)
264
265// Module Version 10000
266// Generated by (magic number): 8000b
267// Id's are bound by 101
268
269                              Capability Geometry
270               1:             ExtInstImport  "GLSL.std.450"
271                              MemoryModel Logical GLSL450
272                              EntryPoint Geometry 4  "main" 18 46 61 68 100
273                              ExecutionMode 4 Triangles
274                              ExecutionMode 4 Invocations 1
275                              ExecutionMode 4 OutputTriangleStrip
276                              ExecutionMode 4 OutputVertices 3
277                              Source GLSL 430
278                              Name 4  "main"
279                              Name 9  "getColor2("
280                              Name 15  "getWorld(i1;"
281                              Name 14  "i"
282                              Name 18  "oColor"
283                              Name 20  "ColorBlock"
284                              MemberName 20(ColorBlock) 0  "color1"
285                              MemberName 20(ColorBlock) 1  "b"
286                              MemberName 20(ColorBlock) 2  "color2"
287                              MemberName 20(ColorBlock) 3  "color3"
288                              Name 22  "uC"
289                              Name 30  "globalF"
290                              Name 32  "i"
291                              Name 44  "gl_PerVertex"
292                              MemberName 44(gl_PerVertex) 0  "gl_Position"
293                              MemberName 44(gl_PerVertex) 1  "gl_PointSize"
294                              MemberName 44(gl_PerVertex) 2  "gl_ClipDistance"
295                              Name 46  ""
296                              Name 48  "MatrixBlock"
297                              MemberName 48(MatrixBlock) 0  "uProj"
298                              MemberName 48(MatrixBlock) 1  "uWorld"
299                              Name 50  "uM"
300                              Name 54  "param"
301                              Name 59  "Vertex"
302                              MemberName 59(Vertex) 0  "val1"
303                              Name 61  "oV"
304                              Name 64  "Vertex"
305                              MemberName 64(Vertex) 0  "v1"
306                              MemberName 64(Vertex) 1  "v2"
307                              Name 68  "iV"
308                              Name 95  "BufferBlock"
309                              MemberName 95(BufferBlock) 0  "p"
310                              Name 97  "uBuf"
311                              Name 100  "P"
312                              Decorate 18(oColor) Location 1
313                              MemberDecorate 20(ColorBlock) 0 Offset 0
314                              MemberDecorate 20(ColorBlock) 1 Offset 16
315                              MemberDecorate 20(ColorBlock) 2 Offset 32
316                              MemberDecorate 20(ColorBlock) 3 Offset 48
317                              Decorate 20(ColorBlock) Block
318                              Decorate 22(uC) DescriptorSet 0
319                              Decorate 22(uC) Binding 1
320                              MemberDecorate 44(gl_PerVertex) 0 BuiltIn Position
321                              MemberDecorate 44(gl_PerVertex) 1 BuiltIn PointSize
322                              MemberDecorate 44(gl_PerVertex) 2 BuiltIn ClipDistance
323                              Decorate 44(gl_PerVertex) Block
324                              MemberDecorate 48(MatrixBlock) 0 ColMajor
325                              MemberDecorate 48(MatrixBlock) 0 Offset 0
326                              MemberDecorate 48(MatrixBlock) 0 MatrixStride 16
327                              MemberDecorate 48(MatrixBlock) 1 ColMajor
328                              MemberDecorate 48(MatrixBlock) 1 Offset 64
329                              MemberDecorate 48(MatrixBlock) 1 MatrixStride 16
330                              Decorate 48(MatrixBlock) Block
331                              Decorate 50(uM) DescriptorSet 0
332                              Decorate 50(uM) Binding 0
333                              Decorate 59(Vertex) Block
334                              Decorate 61(oV) Location 0
335                              Decorate 64(Vertex) Block
336                              Decorate 68(iV) Location 0
337                              MemberDecorate 95(BufferBlock) 0 ColMajor
338                              MemberDecorate 95(BufferBlock) 0 Offset 0
339                              MemberDecorate 95(BufferBlock) 0 MatrixStride 16
340                              Decorate 95(BufferBlock) BufferBlock
341                              Decorate 97(uBuf) DescriptorSet 0
342                              Decorate 97(uBuf) Binding 1
343                              Decorate 100(P) Location 2
344               2:             TypeVoid
345               3:             TypeFunction 2
346               6:             TypeFloat 32
347               7:             TypeVector 6(float) 4
348               8:             TypeFunction 7(fvec4)
349              11:             TypeInt 32 1
350              12:             TypePointer Function 11(int)
351              13:             TypeFunction 7(fvec4) 12(ptr)
352              17:             TypePointer Output 7(fvec4)
353      18(oColor):     17(ptr) Variable Output
354              19:             TypeInt 32 0
355  20(ColorBlock):             TypeStruct 7(fvec4) 19(int) 7(fvec4) 7(fvec4)
356              21:             TypePointer Uniform 20(ColorBlock)
357          22(uC):     21(ptr) Variable Uniform
358              23:     11(int) Constant 0
359              24:             TypePointer Uniform 7(fvec4)
360              29:             TypePointer Private 6(float)
361     30(globalF):     29(ptr) Variable Private
362              31:    6(float) Constant 1065353216
363              39:     11(int) Constant 3
364              40:             TypeBool
365              42:     19(int) Constant 1
366              43:             TypeArray 6(float) 42
36744(gl_PerVertex):             TypeStruct 7(fvec4) 6(float) 43
368              45:             TypePointer Output 44(gl_PerVertex)
369              46:     45(ptr) Variable Output
370              47:             TypeMatrix 7(fvec4) 4
371 48(MatrixBlock):             TypeStruct 47 47
372              49:             TypePointer Uniform 48(MatrixBlock)
373          50(uM):     49(ptr) Variable Uniform
374              51:             TypePointer Uniform 47
375      59(Vertex):             TypeStruct 7(fvec4)
376              60:             TypePointer Output 59(Vertex)
377          61(oV):     60(ptr) Variable Output
378      64(Vertex):             TypeStruct 7(fvec4) 7(fvec4)
379              65:     19(int) Constant 3
380              66:             TypeArray 64(Vertex) 65
381              67:             TypePointer Input 66
382          68(iV):     67(ptr) Variable Input
383              70:     11(int) Constant 1
384              71:             TypePointer Input 7(fvec4)
385              80:     11(int) Constant 2
386              85:    7(fvec4) ConstantComposite 31 31 31 31
387 95(BufferBlock):             TypeStruct 47
388              96:             TypePointer Uniform 95(BufferBlock)
389        97(uBuf):     96(ptr) Variable Uniform
390              98:             TypeArray 7(fvec4) 65
391              99:             TypePointer Input 98
392          100(P):     99(ptr) Variable Input
393         4(main):           2 Function None 3
394               5:             Label
395           32(i):     12(ptr) Variable Function
396       54(param):     12(ptr) Variable Function
397              25:     24(ptr) AccessChain 22(uC) 23
398              26:    7(fvec4) Load 25
399              27:    7(fvec4) FunctionCall 9(getColor2()
400              28:    7(fvec4) FMul 26 27
401                              Store 18(oColor) 28
402                              Store 30(globalF) 31
403                              Store 32(i) 23
404                              Branch 33
405              33:             Label
406                              LoopMerge 35 36 None
407                              Branch 37
408              37:             Label
409              38:     11(int) Load 32(i)
410              41:    40(bool) SLessThan 38 39
411                              BranchConditional 41 34 35
412              34:               Label
413              52:     51(ptr)   AccessChain 50(uM) 23
414              53:          47   Load 52
415              55:     11(int)   Load 32(i)
416                                Store 54(param) 55
417              56:    7(fvec4)   FunctionCall 15(getWorld(i1;) 54(param)
418              57:    7(fvec4)   MatrixTimesVector 53 56
419              58:     17(ptr)   AccessChain 46 23
420                                Store 58 57
421              62:     24(ptr)   AccessChain 22(uC) 23
422              63:    7(fvec4)   Load 62
423              69:     11(int)   Load 32(i)
424              72:     71(ptr)   AccessChain 68(iV) 69 70
425              73:    7(fvec4)   Load 72
426              74:    6(float)   Load 30(globalF)
427              75:    7(fvec4)   VectorTimesScalar 73 74
428              76:    7(fvec4)   FAdd 63 75
429              77:     17(ptr)   AccessChain 61(oV) 23
430                                Store 77 76
431                                EmitVertex
432                                Branch 36
433              36:               Label
434              78:     11(int)   Load 32(i)
435              79:     11(int)   IAdd 78 70
436                                Store 32(i) 79
437                                Branch 33
438              35:             Label
439                              EndPrimitive
440                              Return
441                              FunctionEnd
442   9(getColor2():    7(fvec4) Function None 8
443              10:             Label
444              81:     24(ptr) AccessChain 22(uC) 80
445              82:    7(fvec4) Load 81
446                              ReturnValue 82
447                              FunctionEnd
44815(getWorld(i1;):    7(fvec4) Function None 13
449           14(i):     12(ptr) FunctionParameter
450              16:             Label
451              86:     17(ptr) AccessChain 61(oV) 23
452                              Store 86 85
453              87:     51(ptr) AccessChain 50(uM) 70
454              88:          47 Load 87
455              89:     11(int) Load 14(i)
456              90:     71(ptr) AccessChain 68(iV) 89 23
457              91:    7(fvec4) Load 90
458              92:    7(fvec4) MatrixTimesVector 88 91
459                              ReturnValue 92
460                              FunctionEnd
461