glslang/Test/baseResults/link.vk.multiBlocksValid.1.0.geom.out
Greg Fischer ca0d54d51b Enhance readability of error messages for GLSL
Specifically, make GLSL link error messages more specific and output
only information relevant to the error.

Also change type printing to more closely reflect GLSL syntax. This
is the default for link error messages, but must me enabled with the
new option --enhanced-msgs for compilation error messages.

Also with --enhanced-msgs, only emit one error message per source
line.
2022-02-01 12:10:08 -07:00

461 lines
29 KiB
Plaintext

link.vk.multiBlocksValid.1.0.geom
Shader version: 430
invocations = -1
max_vertices = 3
input primitive = triangles
output primitive = triangle_strip
0:? Sequence
0:48 Function Definition: main( ( global void)
0:48 Function Parameters:
0:50 Sequence
0:50 move second child to first child ( temp highp 4-component vector of float)
0:50 'oColor' (layout( stream=0) out highp 4-component vector of float)
0:50 component-wise multiply ( temp highp 4-component vector of float)
0:50 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
0: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})
0:50 Constant:
0:50 0 (const int)
0:50 Function Call: getColor2( ( global highp 4-component vector of float)
0:52 move second child to first child ( temp highp float)
0:52 'globalF' ( global highp float)
0:52 Constant:
0:52 1.000000
0:54 Sequence
0:54 Sequence
0:54 move second child to first child ( temp highp int)
0:54 'i' ( temp highp int)
0:54 Constant:
0:54 0 (const int)
0:54 Loop with condition tested first
0:54 Loop Condition
0:54 Compare Less Than ( temp bool)
0:54 'i' ( temp highp int)
0:54 Constant:
0:54 3 (const int)
0:54 Loop Body
0:56 Sequence
0:56 move second child to first child ( temp highp 4-component vector of float)
0:56 gl_Position: direct index for structure (layout( stream=0) gl_Position highp 4-component vector of float Position)
0: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})
0:56 Constant:
0:56 0 (const uint)
0:56 matrix-times-vector ( temp highp 4-component vector of float)
0:56 uProj: direct index for structure (layout( column_major std140 offset=0) uniform highp 4X4 matrix of float)
0: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})
0:56 Constant:
0:56 0 (const int)
0:56 Function Call: getWorld(i1; ( global highp 4-component vector of float)
0:56 'i' ( temp highp int)
0:57 move second child to first child ( temp highp 4-component vector of float)
0:57 val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
0:57 'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:57 Constant:
0:57 0 (const int)
0:57 add ( temp highp 4-component vector of float)
0:57 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
0: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})
0:57 Constant:
0:57 0 (const int)
0:57 vector-scale ( temp highp 4-component vector of float)
0:57 v2: direct index for structure ( in highp 4-component vector of float)
0:57 indirect index ( temp block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:57 'iV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:57 'i' ( temp highp int)
0:57 Constant:
0:57 1 (const int)
0:57 'globalF' ( global highp float)
0:58 EmitVertex ( global void)
0:54 Loop Terminal Expression
0:54 Post-Increment ( temp highp int)
0:54 'i' ( temp highp int)
0:61 EndPrimitive ( global void)
0:? Linker Objects
0:? '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})
0:? 'iV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:? 'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:? '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})
0:? 'uBuf' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p})
0:? 'oColor' (layout( stream=0) out highp 4-component vector of float)
0:? 'globalF' ( global highp float)
0:? '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})
link.vk.multiBlocksValid.1.1.geom
Shader version: 430
invocations = -1
max_vertices = 3
input primitive = triangles
output primitive = triangle_strip
0:? Sequence
0:44 Function Definition: getColor2( ( global highp 4-component vector of float)
0:44 Function Parameters:
0:46 Sequence
0:46 Branch: Return with expression
0:46 color2: direct index for structure (layout( column_major std140 offset=32) uniform highp 4-component vector of float)
0: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})
0:46 Constant:
0:46 2 (const int)
0:49 Function Definition: getWorld(i1; ( global highp 4-component vector of float)
0:49 Function Parameters:
0:49 'i' ( in highp int)
0:51 Sequence
0:51 move second child to first child ( temp highp 4-component vector of float)
0:51 val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
0:51 'anon@0' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:51 Constant:
0:51 0 (const uint)
0:51 Constant:
0:51 1.000000
0:51 1.000000
0:51 1.000000
0:51 1.000000
0:52 Branch: Return with expression
0:52 matrix-times-vector ( temp highp 4-component vector of float)
0:52 uWorld: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float)
0: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})
0:52 Constant:
0:52 1 (const int)
0:52 v1: direct index for structure ( in highp 4-component vector of float)
0:52 indirect index ( temp block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:52 'iVV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:52 'i' ( in highp int)
0:52 Constant:
0:52 0 (const int)
0:? Linker Objects
0:? '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})
0:? 'uBuffer' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p})
0:? '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})
0:? 'anon@0' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:? 'iVV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:? 'P' ( in 3-element array of highp 4-component vector of float)
Linked geometry stage:
WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
geometry stage: Block: ColorBlock Instance: uC: ""
geometry stage: Block: ColorBlock Instance: uColor: ""
WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
geometry stage: Block: BufferBlock Instance: uBuf: ""
geometry stage: Block: BufferBlock Instance: uBuffer: ""
WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
geometry stage: Block: MatrixBlock Instance: uM: ""
geometry stage: Block: MatrixBlock Instance: uMatrix: ""
WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
geometry stage: Block: Vertex Instance: oV: ""
geometry stage: Block: Vertex Instance: anon@0: ""
WARNING: Linking geometry and geometry stages: Matched shader interfaces are using different instance names.
geometry stage: Block: Vertex Instance: iV: ""
geometry stage: Block: Vertex Instance: iVV: ""
Shader version: 430
invocations = 1
max_vertices = 3
input primitive = triangles
output primitive = triangle_strip
0:? Sequence
0:48 Function Definition: main( ( global void)
0:48 Function Parameters:
0:50 Sequence
0:50 move second child to first child ( temp highp 4-component vector of float)
0:50 'oColor' (layout( stream=0) out highp 4-component vector of float)
0:50 component-wise multiply ( temp highp 4-component vector of float)
0:50 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
0: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})
0:50 Constant:
0:50 0 (const int)
0:50 Function Call: getColor2( ( global highp 4-component vector of float)
0:52 move second child to first child ( temp highp float)
0:52 'globalF' ( global highp float)
0:52 Constant:
0:52 1.000000
0:54 Sequence
0:54 Sequence
0:54 move second child to first child ( temp highp int)
0:54 'i' ( temp highp int)
0:54 Constant:
0:54 0 (const int)
0:54 Loop with condition tested first
0:54 Loop Condition
0:54 Compare Less Than ( temp bool)
0:54 'i' ( temp highp int)
0:54 Constant:
0:54 3 (const int)
0:54 Loop Body
0:56 Sequence
0:56 move second child to first child ( temp highp 4-component vector of float)
0:56 gl_Position: direct index for structure (layout( stream=0) gl_Position highp 4-component vector of float Position)
0: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})
0:56 Constant:
0:56 0 (const uint)
0:56 matrix-times-vector ( temp highp 4-component vector of float)
0:56 uProj: direct index for structure (layout( column_major std140 offset=0) uniform highp 4X4 matrix of float)
0: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})
0:56 Constant:
0:56 0 (const int)
0:56 Function Call: getWorld(i1; ( global highp 4-component vector of float)
0:56 'i' ( temp highp int)
0:57 move second child to first child ( temp highp 4-component vector of float)
0:57 val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
0:57 'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:57 Constant:
0:57 0 (const int)
0:57 add ( temp highp 4-component vector of float)
0:57 color1: direct index for structure (layout( column_major std140 offset=0) uniform highp 4-component vector of float)
0: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})
0:57 Constant:
0:57 0 (const int)
0:57 vector-scale ( temp highp 4-component vector of float)
0:57 v2: direct index for structure ( in highp 4-component vector of float)
0:57 indirect index ( temp block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:57 'iV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:57 'i' ( temp highp int)
0:57 Constant:
0:57 1 (const int)
0:57 'globalF' ( global highp float)
0:58 EmitVertex ( global void)
0:54 Loop Terminal Expression
0:54 Post-Increment ( temp highp int)
0:54 'i' ( temp highp int)
0:61 EndPrimitive ( global void)
0:44 Function Definition: getColor2( ( global highp 4-component vector of float)
0:44 Function Parameters:
0:46 Sequence
0:46 Branch: Return with expression
0:46 color2: direct index for structure (layout( column_major std140 offset=32) uniform highp 4-component vector of float)
0: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})
0:46 Constant:
0:46 2 (const int)
0:49 Function Definition: getWorld(i1; ( global highp 4-component vector of float)
0:49 Function Parameters:
0:49 'i' ( in highp int)
0:51 Sequence
0:51 move second child to first child ( temp highp 4-component vector of float)
0:51 val1: direct index for structure (layout( stream=0) out highp 4-component vector of float)
0:51 'anon@0' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:51 Constant:
0:51 0 (const uint)
0:51 Constant:
0:51 1.000000
0:51 1.000000
0:51 1.000000
0:51 1.000000
0:52 Branch: Return with expression
0:52 matrix-times-vector ( temp highp 4-component vector of float)
0:52 uWorld: direct index for structure (layout( column_major std140 offset=64) uniform highp 4X4 matrix of float)
0: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})
0:52 Constant:
0:52 1 (const int)
0:52 v1: direct index for structure ( in highp 4-component vector of float)
0:52 indirect index ( temp block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:52 'iVV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:52 'i' ( in highp int)
0:52 Constant:
0:52 0 (const int)
0:? Linker Objects
0:? '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})
0:? 'iV' ( in 3-element array of block{ in highp 4-component vector of float v1, in highp 4-component vector of float v2})
0:? 'oV' (layout( stream=0) out block{layout( stream=0) out highp 4-component vector of float val1})
0:? '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})
0:? 'uBuf' (layout( binding=1 column_major std430) buffer block{layout( column_major std430 offset=0) buffer highp 4X4 matrix of float p})
0:? 'oColor' (layout( stream=0) out highp 4-component vector of float)
0:? 'globalF' ( global highp float)
0:? '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})
0:? 'P' ( in 3-element array of highp 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 101
Capability Geometry
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Geometry 4 "main" 18 46 61 68 100
ExecutionMode 4 Triangles
ExecutionMode 4 Invocations 1
ExecutionMode 4 OutputTriangleStrip
ExecutionMode 4 OutputVertices 3
Source GLSL 430
Name 4 "main"
Name 9 "getColor2("
Name 15 "getWorld(i1;"
Name 14 "i"
Name 18 "oColor"
Name 20 "ColorBlock"
MemberName 20(ColorBlock) 0 "color1"
MemberName 20(ColorBlock) 1 "b"
MemberName 20(ColorBlock) 2 "color2"
MemberName 20(ColorBlock) 3 "color3"
Name 22 "uC"
Name 30 "globalF"
Name 32 "i"
Name 44 "gl_PerVertex"
MemberName 44(gl_PerVertex) 0 "gl_Position"
MemberName 44(gl_PerVertex) 1 "gl_PointSize"
MemberName 44(gl_PerVertex) 2 "gl_ClipDistance"
Name 46 ""
Name 48 "MatrixBlock"
MemberName 48(MatrixBlock) 0 "uProj"
MemberName 48(MatrixBlock) 1 "uWorld"
Name 50 "uM"
Name 54 "param"
Name 59 "Vertex"
MemberName 59(Vertex) 0 "val1"
Name 61 "oV"
Name 64 "Vertex"
MemberName 64(Vertex) 0 "v1"
MemberName 64(Vertex) 1 "v2"
Name 68 "iV"
Name 95 "BufferBlock"
MemberName 95(BufferBlock) 0 "p"
Name 97 "uBuf"
Name 100 "P"
Decorate 18(oColor) Location 1
MemberDecorate 20(ColorBlock) 0 Offset 0
MemberDecorate 20(ColorBlock) 1 Offset 16
MemberDecorate 20(ColorBlock) 2 Offset 32
MemberDecorate 20(ColorBlock) 3 Offset 48
Decorate 20(ColorBlock) Block
Decorate 22(uC) DescriptorSet 0
Decorate 22(uC) Binding 1
MemberDecorate 44(gl_PerVertex) 0 BuiltIn Position
MemberDecorate 44(gl_PerVertex) 1 BuiltIn PointSize
MemberDecorate 44(gl_PerVertex) 2 BuiltIn ClipDistance
Decorate 44(gl_PerVertex) Block
MemberDecorate 48(MatrixBlock) 0 ColMajor
MemberDecorate 48(MatrixBlock) 0 Offset 0
MemberDecorate 48(MatrixBlock) 0 MatrixStride 16
MemberDecorate 48(MatrixBlock) 1 ColMajor
MemberDecorate 48(MatrixBlock) 1 Offset 64
MemberDecorate 48(MatrixBlock) 1 MatrixStride 16
Decorate 48(MatrixBlock) Block
Decorate 50(uM) DescriptorSet 0
Decorate 50(uM) Binding 0
Decorate 59(Vertex) Block
Decorate 61(oV) Location 0
Decorate 64(Vertex) Block
Decorate 68(iV) Location 0
MemberDecorate 95(BufferBlock) 0 ColMajor
MemberDecorate 95(BufferBlock) 0 Offset 0
MemberDecorate 95(BufferBlock) 0 MatrixStride 16
Decorate 95(BufferBlock) BufferBlock
Decorate 97(uBuf) DescriptorSet 0
Decorate 97(uBuf) Binding 1
Decorate 100(P) Location 2
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypeFunction 7(fvec4)
11: TypeInt 32 1
12: TypePointer Function 11(int)
13: TypeFunction 7(fvec4) 12(ptr)
17: TypePointer Output 7(fvec4)
18(oColor): 17(ptr) Variable Output
19: TypeInt 32 0
20(ColorBlock): TypeStruct 7(fvec4) 19(int) 7(fvec4) 7(fvec4)
21: TypePointer Uniform 20(ColorBlock)
22(uC): 21(ptr) Variable Uniform
23: 11(int) Constant 0
24: TypePointer Uniform 7(fvec4)
29: TypePointer Private 6(float)
30(globalF): 29(ptr) Variable Private
31: 6(float) Constant 1065353216
39: 11(int) Constant 3
40: TypeBool
42: 19(int) Constant 1
43: TypeArray 6(float) 42
44(gl_PerVertex): TypeStruct 7(fvec4) 6(float) 43
45: TypePointer Output 44(gl_PerVertex)
46: 45(ptr) Variable Output
47: TypeMatrix 7(fvec4) 4
48(MatrixBlock): TypeStruct 47 47
49: TypePointer Uniform 48(MatrixBlock)
50(uM): 49(ptr) Variable Uniform
51: TypePointer Uniform 47
59(Vertex): TypeStruct 7(fvec4)
60: TypePointer Output 59(Vertex)
61(oV): 60(ptr) Variable Output
64(Vertex): TypeStruct 7(fvec4) 7(fvec4)
65: 19(int) Constant 3
66: TypeArray 64(Vertex) 65
67: TypePointer Input 66
68(iV): 67(ptr) Variable Input
70: 11(int) Constant 1
71: TypePointer Input 7(fvec4)
80: 11(int) Constant 2
85: 7(fvec4) ConstantComposite 31 31 31 31
95(BufferBlock): TypeStruct 47
96: TypePointer Uniform 95(BufferBlock)
97(uBuf): 96(ptr) Variable Uniform
98: TypeArray 7(fvec4) 65
99: TypePointer Input 98
100(P): 99(ptr) Variable Input
4(main): 2 Function None 3
5: Label
32(i): 12(ptr) Variable Function
54(param): 12(ptr) Variable Function
25: 24(ptr) AccessChain 22(uC) 23
26: 7(fvec4) Load 25
27: 7(fvec4) FunctionCall 9(getColor2()
28: 7(fvec4) FMul 26 27
Store 18(oColor) 28
Store 30(globalF) 31
Store 32(i) 23
Branch 33
33: Label
LoopMerge 35 36 None
Branch 37
37: Label
38: 11(int) Load 32(i)
41: 40(bool) SLessThan 38 39
BranchConditional 41 34 35
34: Label
52: 51(ptr) AccessChain 50(uM) 23
53: 47 Load 52
55: 11(int) Load 32(i)
Store 54(param) 55
56: 7(fvec4) FunctionCall 15(getWorld(i1;) 54(param)
57: 7(fvec4) MatrixTimesVector 53 56
58: 17(ptr) AccessChain 46 23
Store 58 57
62: 24(ptr) AccessChain 22(uC) 23
63: 7(fvec4) Load 62
69: 11(int) Load 32(i)
72: 71(ptr) AccessChain 68(iV) 69 70
73: 7(fvec4) Load 72
74: 6(float) Load 30(globalF)
75: 7(fvec4) VectorTimesScalar 73 74
76: 7(fvec4) FAdd 63 75
77: 17(ptr) AccessChain 61(oV) 23
Store 77 76
EmitVertex
Branch 36
36: Label
78: 11(int) Load 32(i)
79: 11(int) IAdd 78 70
Store 32(i) 79
Branch 33
35: Label
EndPrimitive
Return
FunctionEnd
9(getColor2(): 7(fvec4) Function None 8
10: Label
81: 24(ptr) AccessChain 22(uC) 80
82: 7(fvec4) Load 81
ReturnValue 82
FunctionEnd
15(getWorld(i1;): 7(fvec4) Function None 13
14(i): 12(ptr) FunctionParameter
16: Label
86: 17(ptr) AccessChain 61(oV) 23
Store 86 85
87: 51(ptr) AccessChain 50(uM) 70
88: 47 Load 87
89: 11(int) Load 14(i)
90: 71(ptr) AccessChain 68(iV) 89 23
91: 7(fvec4) Load 90
92: 7(fvec4) MatrixTimesVector 88 91
ReturnValue 92
FunctionEnd