blob: 9dac4c64e255ca49c18c700068301e723c9e659d [file] [log] [blame]
vk.relaxed.link1.frag
Shader version: 460
gl_FragCoord origin is upper left
0:? Sequence
0:19 Function Definition: bar( ( global highp 4-component vector of float)
0:19 Function Parameters:
0:20 Sequence
0:20 Sequence
0:20 move second child to first child ( temp highp uint)
0:20 'j' ( temp highp uint)
0:20 add ( temp highp uint)
0:20 AtomicAdd ( global highp uint)
0:20 counter1: direct index for structure ( coherent volatile buffer highp uint)
0:20 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
0:20 Constant:
0:20 0 (const uint)
0:20 Constant:
0:20 1 (const uint)
0:20 subtract ( temp highp uint)
0:20 AtomicAdd ( global highp uint)
0:20 counter2: direct index for structure ( coherent volatile buffer highp uint)
0:20 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
0:20 Constant:
0:20 1 (const uint)
0:20 Constant:
0:20 4294967295 (const uint)
0:20 Constant:
0:20 1 (const uint)
0:21 Sequence
0:21 move second child to first child ( temp highp 4-component vector of float)
0:21 'v' ( temp highp 4-component vector of float)
0:21 add ( temp highp 4-component vector of float)
0:21 add ( temp highp 4-component vector of float)
0:21 add ( temp highp 4-component vector of float)
0:21 a: direct index for structure ( uniform highp 4-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 0 (const uint)
0:21 Construct vec4 ( temp highp 4-component vector of float)
0:21 direct index ( temp highp float)
0:21 b1: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 1 (const uint)
0:21 Constant:
0:21 0 (const int)
0:21 direct index ( temp highp float)
0:21 b1: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 1 (const uint)
0:21 Constant:
0:21 1 (const int)
0:21 direct index ( temp highp float)
0:21 b2: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 2 (const uint)
0:21 Constant:
0:21 0 (const int)
0:21 direct index ( temp highp float)
0:21 b2: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 2 (const uint)
0:21 Constant:
0:21 1 (const int)
0:21 c1: direct index for structure ( uniform highp 4-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 3 (const uint)
0:21 d: direct index for structure ( uniform highp 4-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:21 Constant:
0:21 4 (const uint)
0:23 Branch: Return with expression
0:23 vector-scale ( temp highp 4-component vector of float)
0:23 Convert uint to float ( temp highp float)
0:23 'j' ( temp highp uint)
0:23 'v' ( temp highp 4-component vector of float)
0:26 Function Definition: main( ( global void)
0:26 Function Parameters:
0:27 Sequence
0:27 move second child to first child ( temp highp 4-component vector of float)
0:27 'o' ( out highp 4-component vector of float)
0:27 add ( temp highp 4-component vector of float)
0:27 Function Call: foo( ( global highp 4-component vector of float)
0:27 Function Call: bar( ( global highp 4-component vector of float)
0:? Linker Objects
0:? 'o' ( out highp 4-component vector of float)
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d})
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
vk.relaxed.link2.frag
Shader version: 460
gl_FragCoord origin is upper left
0:? Sequence
0:14 Function Definition: foo( ( global highp 4-component vector of float)
0:14 Function Parameters:
0:15 Sequence
0:15 Sequence
0:15 move second child to first child ( temp highp uint)
0:15 'j' ( temp highp uint)
0:15 add ( temp highp uint)
0:15 AtomicAdd ( global highp uint)
0:15 counter2: direct index for structure ( coherent volatile buffer highp uint)
0:15 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
0:15 Constant:
0:15 1 (const uint)
0:15 Constant:
0:15 1 (const uint)
0:15 subtract ( temp highp uint)
0:15 AtomicAdd ( global highp uint)
0:15 counter3: direct index for structure ( coherent volatile buffer highp uint)
0:15 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
0:15 Constant:
0:15 0 (const uint)
0:15 Constant:
0:15 4294967295 (const uint)
0:15 Constant:
0:15 1 (const uint)
0:16 Sequence
0:16 move second child to first child ( temp highp 4-component vector of float)
0:16 'v' ( temp highp 4-component vector of float)
0:16 add ( temp highp 4-component vector of float)
0:16 add ( temp highp 4-component vector of float)
0:16 add ( temp highp 4-component vector of float)
0:16 a: direct index for structure ( uniform highp 4-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 0 (const uint)
0:16 Construct vec4 ( temp highp 4-component vector of float)
0:16 direct index ( temp highp float)
0:16 b1: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 2 (const uint)
0:16 Constant:
0:16 0 (const int)
0:16 direct index ( temp highp float)
0:16 b1: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 2 (const uint)
0:16 Constant:
0:16 1 (const int)
0:16 direct index ( temp highp float)
0:16 b2: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 1 (const uint)
0:16 Constant:
0:16 0 (const int)
0:16 direct index ( temp highp float)
0:16 b2: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 1 (const uint)
0:16 Constant:
0:16 1 (const int)
0:16 c2: direct index for structure ( uniform highp 4-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 3 (const uint)
0:16 d: direct index for structure ( uniform highp 4-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:16 Constant:
0:16 4 (const uint)
0:18 Branch: Return with expression
0:18 vector-scale ( temp highp 4-component vector of float)
0:18 Convert uint to float ( temp highp float)
0:18 'j' ( temp highp uint)
0:18 'v' ( temp highp 4-component vector of float)
0:? Linker Objects
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b2, uniform highp 2-component vector of float b1, uniform highp 4-component vector of float c2, uniform highp 4-component vector of float d})
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3, coherent volatile buffer highp uint counter2})
Linked fragment stage:
Shader version: 460
gl_FragCoord origin is upper left
0:? Sequence
0:19 Function Definition: bar( ( global highp 4-component vector of float)
0:19 Function Parameters:
0:20 Sequence
0:20 Sequence
0:20 move second child to first child ( temp highp uint)
0:20 'j' ( temp highp uint)
0:20 add ( temp highp uint)
0:20 AtomicAdd ( global highp uint)
0:20 counter1: direct index for structure ( coherent volatile buffer highp uint)
0:20 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2, coherent volatile buffer highp uint counter3})
0:20 Constant:
0:20 0 (const uint)
0:20 Constant:
0:20 1 (const uint)
0:20 subtract ( temp highp uint)
0:20 AtomicAdd ( global highp uint)
0:20 counter2: direct index for structure ( coherent volatile buffer highp uint)
0:20 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2, coherent volatile buffer highp uint counter3})
0:20 Constant:
0:20 1 (const uint)
0:20 Constant:
0:20 4294967295 (const uint)
0:20 Constant:
0:20 1 (const uint)
0:21 Sequence
0:21 move second child to first child ( temp highp 4-component vector of float)
0:21 'v' ( temp highp 4-component vector of float)
0:21 add ( temp highp 4-component vector of float)
0:21 add ( temp highp 4-component vector of float)
0:21 add ( temp highp 4-component vector of float)
0:21 a: direct index for structure ( uniform highp 4-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 0 (const uint)
0:21 Construct vec4 ( temp highp 4-component vector of float)
0:21 direct index ( temp highp float)
0:21 b1: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 1 (const uint)
0:21 Constant:
0:21 0 (const int)
0:21 direct index ( temp highp float)
0:21 b1: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 1 (const uint)
0:21 Constant:
0:21 1 (const int)
0:21 direct index ( temp highp float)
0:21 b2: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 2 (const uint)
0:21 Constant:
0:21 0 (const int)
0:21 direct index ( temp highp float)
0:21 b2: direct index for structure ( uniform highp 2-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 2 (const uint)
0:21 Constant:
0:21 1 (const int)
0:21 c1: direct index for structure ( uniform highp 4-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 3 (const uint)
0:21 d: direct index for structure ( uniform highp 4-component vector of float)
0:21 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:21 Constant:
0:21 4 (const uint)
0:23 Branch: Return with expression
0:23 vector-scale ( temp highp 4-component vector of float)
0:23 Convert uint to float ( temp highp float)
0:23 'j' ( temp highp uint)
0:23 'v' ( temp highp 4-component vector of float)
0:26 Function Definition: main( ( global void)
0:26 Function Parameters:
0:27 Sequence
0:27 move second child to first child ( temp highp 4-component vector of float)
0:27 'o' ( out highp 4-component vector of float)
0:27 add ( temp highp 4-component vector of float)
0:27 Function Call: foo( ( global highp 4-component vector of float)
0:27 Function Call: bar( ( global highp 4-component vector of float)
0:14 Function Definition: foo( ( global highp 4-component vector of float)
0:14 Function Parameters:
0:15 Sequence
0:15 Sequence
0:15 move second child to first child ( temp highp uint)
0:15 'j' ( temp highp uint)
0:15 add ( temp highp uint)
0:15 AtomicAdd ( global highp uint)
0:15 counter2: direct index for structure ( coherent volatile buffer highp uint)
0:15 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2, coherent volatile buffer highp uint counter3})
0:15 Constant:
0:15 1 (const uint)
0:15 Constant:
0:15 1 (const uint)
0:15 subtract ( temp highp uint)
0:15 AtomicAdd ( global highp uint)
0:15 counter3: direct index for structure ( coherent volatile buffer highp uint)
0:15 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2, coherent volatile buffer highp uint counter3})
0:15 Constant:
0:15 2 (const uint)
0:15 Constant:
0:15 4294967295 (const uint)
0:15 Constant:
0:15 1 (const uint)
0:16 Sequence
0:16 move second child to first child ( temp highp 4-component vector of float)
0:16 'v' ( temp highp 4-component vector of float)
0:16 add ( temp highp 4-component vector of float)
0:16 add ( temp highp 4-component vector of float)
0:16 add ( temp highp 4-component vector of float)
0:16 a: direct index for structure ( uniform highp 4-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 0 (const uint)
0:16 Construct vec4 ( temp highp 4-component vector of float)
0:16 direct index ( temp highp float)
0:16 b1: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 1 (const uint)
0:16 Constant:
0:16 0 (const int)
0:16 direct index ( temp highp float)
0:16 b1: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 1 (const uint)
0:16 Constant:
0:16 1 (const int)
0:16 direct index ( temp highp float)
0:16 b2: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 2 (const uint)
0:16 Constant:
0:16 0 (const int)
0:16 direct index ( temp highp float)
0:16 b2: direct index for structure ( uniform highp 2-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 2 (const uint)
0:16 Constant:
0:16 1 (const int)
0:16 c2: direct index for structure ( uniform highp 4-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 5 (const uint)
0:16 d: direct index for structure ( uniform highp 4-component vector of float)
0:16 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:16 Constant:
0:16 4 (const uint)
0:18 Branch: Return with expression
0:18 vector-scale ( temp highp 4-component vector of float)
0:18 Convert uint to float ( temp highp float)
0:18 'j' ( temp highp uint)
0:18 'v' ( temp highp 4-component vector of float)
0:? Linker Objects
0:? 'o' ( out highp 4-component vector of float)
0:? 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b1, uniform highp 2-component vector of float b2, uniform highp 4-component vector of float c1, uniform highp 4-component vector of float d, uniform highp 4-component vector of float c2})
0:? 'anon@1' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2, coherent volatile buffer highp uint counter3})
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 105
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 68
ExecutionMode 4 OriginUpperLeft
Source GLSL 460
Name 4 "main"
Name 9 "bar("
Name 11 "foo("
Name 15 "j"
Name 16 "gl_AtomicCounterBlock_0"
MemberName 16(gl_AtomicCounterBlock_0) 0 "counter1"
MemberName 16(gl_AtomicCounterBlock_0) 1 "counter2"
MemberName 16(gl_AtomicCounterBlock_0) 2 "counter3"
Name 18 ""
Name 33 "v"
Name 35 "gl_DefaultUniformBlock"
MemberName 35(gl_DefaultUniformBlock) 0 "a"
MemberName 35(gl_DefaultUniformBlock) 1 "b1"
MemberName 35(gl_DefaultUniformBlock) 2 "b2"
MemberName 35(gl_DefaultUniformBlock) 3 "c1"
MemberName 35(gl_DefaultUniformBlock) 4 "d"
MemberName 35(gl_DefaultUniformBlock) 5 "c2"
Name 37 ""
Name 68 "o"
Name 72 "j"
Name 79 "v"
MemberDecorate 16(gl_AtomicCounterBlock_0) 0 Coherent
MemberDecorate 16(gl_AtomicCounterBlock_0) 0 Volatile
MemberDecorate 16(gl_AtomicCounterBlock_0) 0 Coherent
MemberDecorate 16(gl_AtomicCounterBlock_0) 0 Offset 0
MemberDecorate 16(gl_AtomicCounterBlock_0) 1 Coherent
MemberDecorate 16(gl_AtomicCounterBlock_0) 1 Volatile
MemberDecorate 16(gl_AtomicCounterBlock_0) 1 Coherent
MemberDecorate 16(gl_AtomicCounterBlock_0) 1 Offset 4
MemberDecorate 16(gl_AtomicCounterBlock_0) 2 Coherent
MemberDecorate 16(gl_AtomicCounterBlock_0) 2 Volatile
MemberDecorate 16(gl_AtomicCounterBlock_0) 2 Coherent
MemberDecorate 16(gl_AtomicCounterBlock_0) 2 Offset 8
Decorate 16(gl_AtomicCounterBlock_0) BufferBlock
Decorate 18 DescriptorSet 0
Decorate 18 Binding 1
MemberDecorate 35(gl_DefaultUniformBlock) 0 Offset 0
MemberDecorate 35(gl_DefaultUniformBlock) 1 Offset 16
MemberDecorate 35(gl_DefaultUniformBlock) 2 Offset 24
MemberDecorate 35(gl_DefaultUniformBlock) 3 Offset 32
MemberDecorate 35(gl_DefaultUniformBlock) 4 Offset 48
MemberDecorate 35(gl_DefaultUniformBlock) 5 Offset 64
Decorate 35(gl_DefaultUniformBlock) Block
Decorate 37 DescriptorSet 0
Decorate 37 Binding 0
Decorate 68(o) Location 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypeVector 6(float) 4
8: TypeFunction 7(fvec4)
13: TypeInt 32 0
14: TypePointer Function 13(int)
16(gl_AtomicCounterBlock_0): TypeStruct 13(int) 13(int) 13(int)
17: TypePointer Uniform 16(gl_AtomicCounterBlock_0)
18: 17(ptr) Variable Uniform
19: TypeInt 32 1
20: 19(int) Constant 0
21: TypePointer Uniform 13(int)
23: 13(int) Constant 1
24: 13(int) Constant 0
26: 19(int) Constant 1
28: 13(int) Constant 4294967295
32: TypePointer Function 7(fvec4)
34: TypeVector 6(float) 2
35(gl_DefaultUniformBlock): TypeStruct 7(fvec4) 34(fvec2) 34(fvec2) 7(fvec4) 7(fvec4) 7(fvec4)
36: TypePointer Uniform 35(gl_DefaultUniformBlock)
37: 36(ptr) Variable Uniform
38: TypePointer Uniform 7(fvec4)
41: TypePointer Uniform 6(float)
46: 19(int) Constant 2
53: 19(int) Constant 3
57: 19(int) Constant 4
67: TypePointer Output 7(fvec4)
68(o): 67(ptr) Variable Output
92: 19(int) Constant 5
4(main): 2 Function None 3
5: Label
69: 7(fvec4) FunctionCall 11(foo()
70: 7(fvec4) FunctionCall 9(bar()
71: 7(fvec4) FAdd 69 70
Store 68(o) 71
Return
FunctionEnd
9(bar(): 7(fvec4) Function None 8
10: Label
15(j): 14(ptr) Variable Function
33(v): 32(ptr) Variable Function
22: 21(ptr) AccessChain 18 20
25: 13(int) AtomicIAdd 22 23 24 23
27: 21(ptr) AccessChain 18 26
29: 13(int) AtomicIAdd 27 23 24 28
30: 13(int) ISub 29 23
31: 13(int) IAdd 25 30
Store 15(j) 31
39: 38(ptr) AccessChain 37 20
40: 7(fvec4) Load 39
42: 41(ptr) AccessChain 37 26 24
43: 6(float) Load 42
44: 41(ptr) AccessChain 37 26 23
45: 6(float) Load 44
47: 41(ptr) AccessChain 37 46 24
48: 6(float) Load 47
49: 41(ptr) AccessChain 37 46 23
50: 6(float) Load 49
51: 7(fvec4) CompositeConstruct 43 45 48 50
52: 7(fvec4) FAdd 40 51
54: 38(ptr) AccessChain 37 53
55: 7(fvec4) Load 54
56: 7(fvec4) FAdd 52 55
58: 38(ptr) AccessChain 37 57
59: 7(fvec4) Load 58
60: 7(fvec4) FAdd 56 59
Store 33(v) 60
61: 13(int) Load 15(j)
62: 6(float) ConvertUToF 61
63: 7(fvec4) Load 33(v)
64: 7(fvec4) VectorTimesScalar 63 62
ReturnValue 64
FunctionEnd
11(foo(): 7(fvec4) Function None 8
12: Label
72(j): 14(ptr) Variable Function
79(v): 32(ptr) Variable Function
73: 21(ptr) AccessChain 18 26
74: 13(int) AtomicIAdd 73 23 24 23
75: 21(ptr) AccessChain 18 46
76: 13(int) AtomicIAdd 75 23 24 28
77: 13(int) ISub 76 23
78: 13(int) IAdd 74 77
Store 72(j) 78
80: 38(ptr) AccessChain 37 20
81: 7(fvec4) Load 80
82: 41(ptr) AccessChain 37 26 24
83: 6(float) Load 82
84: 41(ptr) AccessChain 37 26 23
85: 6(float) Load 84
86: 41(ptr) AccessChain 37 46 24
87: 6(float) Load 86
88: 41(ptr) AccessChain 37 46 23
89: 6(float) Load 88
90: 7(fvec4) CompositeConstruct 83 85 87 89
91: 7(fvec4) FAdd 81 90
93: 38(ptr) AccessChain 37 92
94: 7(fvec4) Load 93
95: 7(fvec4) FAdd 91 94
96: 38(ptr) AccessChain 37 57
97: 7(fvec4) Load 96
98: 7(fvec4) FAdd 95 97
Store 79(v) 98
99: 13(int) Load 72(j)
100: 6(float) ConvertUToF 99
101: 7(fvec4) Load 79(v)
102: 7(fvec4) VectorTimesScalar 101 100
ReturnValue 102
FunctionEnd