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): 8000b // 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