1025 lines
68 KiB
Plaintext
1025 lines
68 KiB
Plaintext
vk.relaxed.frag
|
|
WARNING: 0:7: 'b' : Ignoring initializer for uniform
|
|
WARNING: 0:8: 'c' : ignoring layout qualifier for uniform location
|
|
|
|
Shader version: 460
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:43 Function Definition: bar( ( global highp uint)
|
|
0:43 Function Parameters:
|
|
0:44 Sequence
|
|
0:44 Sequence
|
|
0:44 move second child to first child ( temp highp uint)
|
|
0:44 'j' ( temp highp uint)
|
|
0:44 Constant:
|
|
0:44 0 (const uint)
|
|
0:45 move second child to first child ( temp highp uint)
|
|
0:45 'j' ( temp highp uint)
|
|
0:45 AtomicAdd ( global highp uint)
|
|
0:45 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:45 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:45 Constant:
|
|
0:45 0 (const uint)
|
|
0:45 Constant:
|
|
0:45 1 (const uint)
|
|
0:46 move second child to first child ( temp highp uint)
|
|
0:46 'j' ( temp highp uint)
|
|
0:46 subtract ( temp highp uint)
|
|
0:46 AtomicAdd ( global highp uint)
|
|
0:46 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:46 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:46 Constant:
|
|
0:46 0 (const uint)
|
|
0:46 Constant:
|
|
0:46 4294967295 (const uint)
|
|
0:46 Constant:
|
|
0:46 1 (const uint)
|
|
0:47 move second child to first child ( temp highp uint)
|
|
0:47 'j' ( temp highp uint)
|
|
0:47 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:47 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:47 Constant:
|
|
0:47 0 (const uint)
|
|
0:49 move second child to first child ( temp highp uint)
|
|
0:49 'j' ( temp highp uint)
|
|
0:49 AtomicAdd ( global highp uint)
|
|
0:49 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:49 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:49 Constant:
|
|
0:49 0 (const uint)
|
|
0:49 Constant:
|
|
0:49 1 (const uint)
|
|
0:50 move second child to first child ( temp highp uint)
|
|
0:50 'j' ( temp highp uint)
|
|
0:50 AtomicAdd ( global highp uint)
|
|
0:50 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:50 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:50 Constant:
|
|
0:50 0 (const uint)
|
|
0:50 Constant:
|
|
0:50 4294967295 (const uint)
|
|
0:51 move second child to first child ( temp highp uint)
|
|
0:51 'j' ( temp highp uint)
|
|
0:51 AtomicSubtract ( global highp uint)
|
|
0:51 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:51 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:51 Constant:
|
|
0:51 0 (const uint)
|
|
0:51 Constant:
|
|
0:51 1 (const uint)
|
|
0:53 move second child to first child ( temp highp uint)
|
|
0:53 'j' ( temp highp uint)
|
|
0:53 AtomicMin ( global highp uint)
|
|
0:53 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:53 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:53 Constant:
|
|
0:53 0 (const uint)
|
|
0:53 'j' ( temp highp uint)
|
|
0:54 move second child to first child ( temp highp uint)
|
|
0:54 'j' ( temp highp uint)
|
|
0:54 AtomicMax ( global highp uint)
|
|
0:54 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:54 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:54 Constant:
|
|
0:54 0 (const uint)
|
|
0:54 'j' ( temp highp uint)
|
|
0:55 move second child to first child ( temp highp uint)
|
|
0:55 'j' ( temp highp uint)
|
|
0:55 AtomicAnd ( global highp uint)
|
|
0:55 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:55 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:55 Constant:
|
|
0:55 0 (const uint)
|
|
0:55 'j' ( temp highp uint)
|
|
0:57 move second child to first child ( temp highp uint)
|
|
0:57 'j' ( temp highp uint)
|
|
0:57 AtomicOr ( global highp uint)
|
|
0:57 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:57 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:57 Constant:
|
|
0:57 0 (const uint)
|
|
0:57 'j' ( temp highp uint)
|
|
0:58 move second child to first child ( temp highp uint)
|
|
0:58 'j' ( temp highp uint)
|
|
0:58 AtomicXor ( global highp uint)
|
|
0:58 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:58 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:58 Constant:
|
|
0:58 0 (const uint)
|
|
0:58 'j' ( temp highp uint)
|
|
0:60 move second child to first child ( temp highp uint)
|
|
0:60 'j' ( temp highp uint)
|
|
0:60 AtomicExchange ( global highp uint)
|
|
0:60 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:60 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:60 Constant:
|
|
0:60 0 (const uint)
|
|
0:60 'j' ( temp highp uint)
|
|
0:61 move second child to first child ( temp highp uint)
|
|
0:61 'j' ( temp highp uint)
|
|
0:61 AtomicCompSwap ( global highp uint)
|
|
0:61 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:61 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:61 Constant:
|
|
0:61 0 (const uint)
|
|
0:61 Constant:
|
|
0:61 0 (const uint)
|
|
0:61 'j' ( temp highp uint)
|
|
0:63 AtomicAdd ( global highp uint)
|
|
0:63 counter2: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:63 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:63 Constant:
|
|
0:63 1 (const uint)
|
|
0:63 Constant:
|
|
0:63 1 (const uint)
|
|
0:64 AtomicAdd ( global highp uint)
|
|
0:64 counter3: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:64 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3})
|
|
0:64 Constant:
|
|
0:64 0 (const uint)
|
|
0:64 Constant:
|
|
0:64 1 (const uint)
|
|
0:66 MemoryBarrierBuffer ( global void)
|
|
0:68 Branch: Return with expression
|
|
0:68 'j' ( temp highp uint)
|
|
0:71 Function Definition: foo( ( global highp 4-component vector of float)
|
|
0:71 Function Parameters:
|
|
0:72 Sequence
|
|
0:72 Sequence
|
|
0:72 move second child to first child ( temp highp float)
|
|
0:72 'f' ( temp highp float)
|
|
0:72 add ( temp highp float)
|
|
0:72 add ( temp highp float)
|
|
0:72 add ( temp highp float)
|
|
0:72 j: direct index for structure (layout( column_major std140) uniform highp float)
|
|
0:72 'anon@1' (layout( column_major std140) uniform block{layout( column_major std140) uniform highp float j, layout( column_major std140) uniform highp 4-component vector of float k})
|
|
0:72 Constant:
|
|
0:72 0 (const uint)
|
|
0:72 j: direct index for structure (layout( column_major std430) buffer highp float)
|
|
0:72 'bufferInstance' (layout( column_major std430) buffer block{layout( column_major std430) buffer highp float j, layout( column_major std430) buffer highp 4-component vector of float k})
|
|
0:72 Constant:
|
|
0:72 0 (const int)
|
|
0:72 y: direct index for structure ( global highp float)
|
|
0:72 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:72 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:72 Constant:
|
|
0:72 4 (const uint)
|
|
0:72 Constant:
|
|
0:72 1 (const int)
|
|
0:72 Convert uint to float ( temp highp float)
|
|
0:72 z: direct index for structure ( global highp uint)
|
|
0:72 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:72 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:72 Constant:
|
|
0:72 4 (const uint)
|
|
0:72 Constant:
|
|
0:72 2 (const int)
|
|
0:73 Sequence
|
|
0:73 move second child to first child ( temp highp 2-component vector of float)
|
|
0:73 'v2' ( temp highp 2-component vector of float)
|
|
0:73 add ( temp highp 2-component vector of float)
|
|
0:73 add ( temp highp 2-component vector of float)
|
|
0:73 b: direct index for structure ( uniform highp 2-component vector of float)
|
|
0:73 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:73 Constant:
|
|
0:73 1 (const uint)
|
|
0:73 c: direct index for structure ( uniform highp 2-component vector of float)
|
|
0:73 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:73 Constant:
|
|
0:73 2 (const uint)
|
|
0:73 x: direct index for structure ( global highp 2-component vector of float)
|
|
0:73 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:73 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:73 Constant:
|
|
0:73 4 (const uint)
|
|
0:73 Constant:
|
|
0:73 0 (const int)
|
|
0:74 Sequence
|
|
0:74 move second child to first child ( temp highp 4-component vector of float)
|
|
0:74 'v4' ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 a: direct index for structure ( uniform highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 0 (const uint)
|
|
0:74 direct index ( temp highp 4-component vector of float)
|
|
0:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 3 (const uint)
|
|
0:74 Constant:
|
|
0:74 0 (const int)
|
|
0:74 direct index ( temp highp 4-component vector of float)
|
|
0:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 3 (const uint)
|
|
0:74 Constant:
|
|
0:74 1 (const int)
|
|
0:74 direct index ( temp highp 4-component vector of float)
|
|
0:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 3 (const uint)
|
|
0:74 Constant:
|
|
0:74 2 (const int)
|
|
0:74 k: direct index for structure (layout( column_major std140) uniform highp 4-component vector of float)
|
|
0:74 'anon@1' (layout( column_major std140) uniform block{layout( column_major std140) uniform highp float j, layout( column_major std140) uniform highp 4-component vector of float k})
|
|
0:74 Constant:
|
|
0:74 1 (const uint)
|
|
0:74 k: direct index for structure (layout( column_major std430) buffer highp 4-component vector of float)
|
|
0:74 'bufferInstance' (layout( column_major std430) buffer block{layout( column_major std430) buffer highp float j, layout( column_major std430) buffer highp 4-component vector of float k})
|
|
0:74 Constant:
|
|
0:74 1 (const int)
|
|
0:74 texture ( global highp 4-component vector of float)
|
|
0:74 't1' ( uniform highp sampler2D)
|
|
0:74 Constant:
|
|
0:74 0.000000
|
|
0:74 0.000000
|
|
0:74 texture ( global highp 4-component vector of float)
|
|
0:? 'structUniform.t0' ( uniform highp sampler2D)
|
|
0:74 Constant:
|
|
0:74 0.000000
|
|
0:74 0.000000
|
|
0:75 Branch: Return with expression
|
|
0:75 component-wise multiply ( temp highp 4-component vector of float)
|
|
0:75 component-wise multiply ( temp highp 4-component vector of float)
|
|
0:75 Construct vec4 ( temp highp 4-component vector of float)
|
|
0:75 'f' ( temp highp float)
|
|
0:75 Construct vec4 ( temp highp 4-component vector of float)
|
|
0:75 'v2' ( temp highp 2-component vector of float)
|
|
0:75 Constant:
|
|
0:75 1.000000
|
|
0:75 Constant:
|
|
0:75 1.000000
|
|
0:75 'v4' ( temp highp 4-component vector of float)
|
|
0:78 Function Definition: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float)
|
|
0:78 Function Parameters:
|
|
0:78 'samplers' ( in structure{ global 4-element array of highp int /*tn*/})
|
|
0:78 'samplers.tn[0]' ( in highp sampler2D)
|
|
0:78 'samplers.tn[1]' ( in highp sampler2D)
|
|
0:78 'samplers.tn[2]' ( in highp sampler2D)
|
|
0:78 'samplers.tn[3]' ( in highp sampler2D)
|
|
0:79 Sequence
|
|
0:79 Branch: Return with expression
|
|
0:79 add ( temp highp 4-component vector of float)
|
|
0:79 add ( temp highp 4-component vector of float)
|
|
0:79 add ( temp highp 4-component vector of float)
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[0]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[1]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[2]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[3]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:82 Function Definition: main( ( global void)
|
|
0:82 Function Parameters:
|
|
0:83 Sequence
|
|
0:83 Sequence
|
|
0:83 move second child to first child ( temp highp float)
|
|
0:83 'j' ( temp highp float)
|
|
0:83 Convert uint to float ( temp highp float)
|
|
0:83 Function Call: bar( ( global highp uint)
|
|
0:84 move second child to first child ( temp highp 4-component vector of float)
|
|
0:84 'o' ( out highp 4-component vector of float)
|
|
0:84 add ( temp highp 4-component vector of float)
|
|
0:84 vector-scale ( temp highp 4-component vector of float)
|
|
0:84 'j' ( temp highp float)
|
|
0:84 Function Call: foo( ( global highp 4-component vector of float)
|
|
0:84 Function Call: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float)
|
|
0:84 samplers: direct index for structure ( global structure{ global 4-element array of highp int /*tn*/})
|
|
0:84 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:84 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:84 Constant:
|
|
0:84 4 (const uint)
|
|
0:84 Constant:
|
|
0:84 4 (const int)
|
|
0:84 'structUniform.samplers.tn[0]' ( uniform highp sampler2D)
|
|
0:84 'structUniform.samplers.tn[1]' ( uniform highp sampler2D)
|
|
0:84 'structUniform.samplers.tn[2]' ( uniform highp sampler2D)
|
|
0:84 'structUniform.samplers.tn[3]' ( uniform highp sampler2D)
|
|
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 b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:? 'structUniform.t0' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[0]' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[1]' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[2]' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[3]' ( uniform highp sampler2D)
|
|
0:? 't1' ( uniform highp sampler2D)
|
|
0:? 'anon@1' (layout( column_major std140) uniform block{layout( column_major std140) uniform highp float j, layout( column_major std140) uniform highp 4-component vector of float k})
|
|
0:? 'bufferInstance' (layout( column_major std430) buffer block{layout( column_major std430) buffer highp float j, layout( column_major std430) buffer highp 4-component vector of float k})
|
|
0:? 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:? 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3})
|
|
|
|
|
|
Linked fragment stage:
|
|
|
|
|
|
Shader version: 460
|
|
gl_FragCoord origin is upper left
|
|
0:? Sequence
|
|
0:43 Function Definition: bar( ( global highp uint)
|
|
0:43 Function Parameters:
|
|
0:44 Sequence
|
|
0:44 Sequence
|
|
0:44 move second child to first child ( temp highp uint)
|
|
0:44 'j' ( temp highp uint)
|
|
0:44 Constant:
|
|
0:44 0 (const uint)
|
|
0:45 move second child to first child ( temp highp uint)
|
|
0:45 'j' ( temp highp uint)
|
|
0:45 AtomicAdd ( global highp uint)
|
|
0:45 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:45 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:45 Constant:
|
|
0:45 0 (const uint)
|
|
0:45 Constant:
|
|
0:45 1 (const uint)
|
|
0:46 move second child to first child ( temp highp uint)
|
|
0:46 'j' ( temp highp uint)
|
|
0:46 subtract ( temp highp uint)
|
|
0:46 AtomicAdd ( global highp uint)
|
|
0:46 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:46 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:46 Constant:
|
|
0:46 0 (const uint)
|
|
0:46 Constant:
|
|
0:46 4294967295 (const uint)
|
|
0:46 Constant:
|
|
0:46 1 (const uint)
|
|
0:47 move second child to first child ( temp highp uint)
|
|
0:47 'j' ( temp highp uint)
|
|
0:47 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:47 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:47 Constant:
|
|
0:47 0 (const uint)
|
|
0:49 move second child to first child ( temp highp uint)
|
|
0:49 'j' ( temp highp uint)
|
|
0:49 AtomicAdd ( global highp uint)
|
|
0:49 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:49 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:49 Constant:
|
|
0:49 0 (const uint)
|
|
0:49 Constant:
|
|
0:49 1 (const uint)
|
|
0:50 move second child to first child ( temp highp uint)
|
|
0:50 'j' ( temp highp uint)
|
|
0:50 AtomicAdd ( global highp uint)
|
|
0:50 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:50 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:50 Constant:
|
|
0:50 0 (const uint)
|
|
0:50 Constant:
|
|
0:50 4294967295 (const uint)
|
|
0:51 move second child to first child ( temp highp uint)
|
|
0:51 'j' ( temp highp uint)
|
|
0:51 AtomicSubtract ( global highp uint)
|
|
0:51 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:51 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:51 Constant:
|
|
0:51 0 (const uint)
|
|
0:51 Constant:
|
|
0:51 1 (const uint)
|
|
0:53 move second child to first child ( temp highp uint)
|
|
0:53 'j' ( temp highp uint)
|
|
0:53 AtomicMin ( global highp uint)
|
|
0:53 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:53 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:53 Constant:
|
|
0:53 0 (const uint)
|
|
0:53 'j' ( temp highp uint)
|
|
0:54 move second child to first child ( temp highp uint)
|
|
0:54 'j' ( temp highp uint)
|
|
0:54 AtomicMax ( global highp uint)
|
|
0:54 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:54 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:54 Constant:
|
|
0:54 0 (const uint)
|
|
0:54 'j' ( temp highp uint)
|
|
0:55 move second child to first child ( temp highp uint)
|
|
0:55 'j' ( temp highp uint)
|
|
0:55 AtomicAnd ( global highp uint)
|
|
0:55 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:55 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:55 Constant:
|
|
0:55 0 (const uint)
|
|
0:55 'j' ( temp highp uint)
|
|
0:57 move second child to first child ( temp highp uint)
|
|
0:57 'j' ( temp highp uint)
|
|
0:57 AtomicOr ( global highp uint)
|
|
0:57 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:57 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:57 Constant:
|
|
0:57 0 (const uint)
|
|
0:57 'j' ( temp highp uint)
|
|
0:58 move second child to first child ( temp highp uint)
|
|
0:58 'j' ( temp highp uint)
|
|
0:58 AtomicXor ( global highp uint)
|
|
0:58 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:58 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:58 Constant:
|
|
0:58 0 (const uint)
|
|
0:58 'j' ( temp highp uint)
|
|
0:60 move second child to first child ( temp highp uint)
|
|
0:60 'j' ( temp highp uint)
|
|
0:60 AtomicExchange ( global highp uint)
|
|
0:60 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:60 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:60 Constant:
|
|
0:60 0 (const uint)
|
|
0:60 'j' ( temp highp uint)
|
|
0:61 move second child to first child ( temp highp uint)
|
|
0:61 'j' ( temp highp uint)
|
|
0:61 AtomicCompSwap ( global highp uint)
|
|
0:61 counter1: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:61 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:61 Constant:
|
|
0:61 0 (const uint)
|
|
0:61 Constant:
|
|
0:61 0 (const uint)
|
|
0:61 'j' ( temp highp uint)
|
|
0:63 AtomicAdd ( global highp uint)
|
|
0:63 counter2: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:63 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:63 Constant:
|
|
0:63 1 (const uint)
|
|
0:63 Constant:
|
|
0:63 1 (const uint)
|
|
0:64 AtomicAdd ( global highp uint)
|
|
0:64 counter3: direct index for structure ( coherent volatile buffer highp uint)
|
|
0:64 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3})
|
|
0:64 Constant:
|
|
0:64 0 (const uint)
|
|
0:64 Constant:
|
|
0:64 1 (const uint)
|
|
0:66 MemoryBarrierBuffer ( global void)
|
|
0:68 Branch: Return with expression
|
|
0:68 'j' ( temp highp uint)
|
|
0:71 Function Definition: foo( ( global highp 4-component vector of float)
|
|
0:71 Function Parameters:
|
|
0:72 Sequence
|
|
0:72 Sequence
|
|
0:72 move second child to first child ( temp highp float)
|
|
0:72 'f' ( temp highp float)
|
|
0:72 add ( temp highp float)
|
|
0:72 add ( temp highp float)
|
|
0:72 add ( temp highp float)
|
|
0:72 j: direct index for structure (layout( column_major std140) uniform highp float)
|
|
0:72 'anon@1' (layout( column_major std140) uniform block{layout( column_major std140) uniform highp float j, layout( column_major std140) uniform highp 4-component vector of float k})
|
|
0:72 Constant:
|
|
0:72 0 (const uint)
|
|
0:72 j: direct index for structure (layout( column_major std430) buffer highp float)
|
|
0:72 'bufferInstance' (layout( column_major std430) buffer block{layout( column_major std430) buffer highp float j, layout( column_major std430) buffer highp 4-component vector of float k})
|
|
0:72 Constant:
|
|
0:72 0 (const int)
|
|
0:72 y: direct index for structure ( global highp float)
|
|
0:72 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:72 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:72 Constant:
|
|
0:72 4 (const uint)
|
|
0:72 Constant:
|
|
0:72 1 (const int)
|
|
0:72 Convert uint to float ( temp highp float)
|
|
0:72 z: direct index for structure ( global highp uint)
|
|
0:72 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:72 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:72 Constant:
|
|
0:72 4 (const uint)
|
|
0:72 Constant:
|
|
0:72 2 (const int)
|
|
0:73 Sequence
|
|
0:73 move second child to first child ( temp highp 2-component vector of float)
|
|
0:73 'v2' ( temp highp 2-component vector of float)
|
|
0:73 add ( temp highp 2-component vector of float)
|
|
0:73 add ( temp highp 2-component vector of float)
|
|
0:73 b: direct index for structure ( uniform highp 2-component vector of float)
|
|
0:73 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:73 Constant:
|
|
0:73 1 (const uint)
|
|
0:73 c: direct index for structure ( uniform highp 2-component vector of float)
|
|
0:73 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:73 Constant:
|
|
0:73 2 (const uint)
|
|
0:73 x: direct index for structure ( global highp 2-component vector of float)
|
|
0:73 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:73 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:73 Constant:
|
|
0:73 4 (const uint)
|
|
0:73 Constant:
|
|
0:73 0 (const int)
|
|
0:74 Sequence
|
|
0:74 move second child to first child ( temp highp 4-component vector of float)
|
|
0:74 'v4' ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 add ( temp highp 4-component vector of float)
|
|
0:74 a: direct index for structure ( uniform highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 0 (const uint)
|
|
0:74 direct index ( temp highp 4-component vector of float)
|
|
0:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 3 (const uint)
|
|
0:74 Constant:
|
|
0:74 0 (const int)
|
|
0:74 direct index ( temp highp 4-component vector of float)
|
|
0:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 3 (const uint)
|
|
0:74 Constant:
|
|
0:74 1 (const int)
|
|
0:74 direct index ( temp highp 4-component vector of float)
|
|
0:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float)
|
|
0:74 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:74 Constant:
|
|
0:74 3 (const uint)
|
|
0:74 Constant:
|
|
0:74 2 (const int)
|
|
0:74 k: direct index for structure (layout( column_major std140) uniform highp 4-component vector of float)
|
|
0:74 'anon@1' (layout( column_major std140) uniform block{layout( column_major std140) uniform highp float j, layout( column_major std140) uniform highp 4-component vector of float k})
|
|
0:74 Constant:
|
|
0:74 1 (const uint)
|
|
0:74 k: direct index for structure (layout( column_major std430) buffer highp 4-component vector of float)
|
|
0:74 'bufferInstance' (layout( column_major std430) buffer block{layout( column_major std430) buffer highp float j, layout( column_major std430) buffer highp 4-component vector of float k})
|
|
0:74 Constant:
|
|
0:74 1 (const int)
|
|
0:74 texture ( global highp 4-component vector of float)
|
|
0:74 't1' ( uniform highp sampler2D)
|
|
0:74 Constant:
|
|
0:74 0.000000
|
|
0:74 0.000000
|
|
0:74 texture ( global highp 4-component vector of float)
|
|
0:? 'structUniform.t0' ( uniform highp sampler2D)
|
|
0:74 Constant:
|
|
0:74 0.000000
|
|
0:74 0.000000
|
|
0:75 Branch: Return with expression
|
|
0:75 component-wise multiply ( temp highp 4-component vector of float)
|
|
0:75 component-wise multiply ( temp highp 4-component vector of float)
|
|
0:75 Construct vec4 ( temp highp 4-component vector of float)
|
|
0:75 'f' ( temp highp float)
|
|
0:75 Construct vec4 ( temp highp 4-component vector of float)
|
|
0:75 'v2' ( temp highp 2-component vector of float)
|
|
0:75 Constant:
|
|
0:75 1.000000
|
|
0:75 Constant:
|
|
0:75 1.000000
|
|
0:75 'v4' ( temp highp 4-component vector of float)
|
|
0:78 Function Definition: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float)
|
|
0:78 Function Parameters:
|
|
0:78 'samplers' ( in structure{ global 4-element array of highp int /*tn*/})
|
|
0:78 'samplers.tn[0]' ( in highp sampler2D)
|
|
0:78 'samplers.tn[1]' ( in highp sampler2D)
|
|
0:78 'samplers.tn[2]' ( in highp sampler2D)
|
|
0:78 'samplers.tn[3]' ( in highp sampler2D)
|
|
0:79 Sequence
|
|
0:79 Branch: Return with expression
|
|
0:79 add ( temp highp 4-component vector of float)
|
|
0:79 add ( temp highp 4-component vector of float)
|
|
0:79 add ( temp highp 4-component vector of float)
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[0]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[1]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[2]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:79 texture ( global highp 4-component vector of float)
|
|
0:79 'samplers.tn[3]' ( in highp sampler2D)
|
|
0:79 Constant:
|
|
0:79 0.000000
|
|
0:79 0.000000
|
|
0:82 Function Definition: main( ( global void)
|
|
0:82 Function Parameters:
|
|
0:83 Sequence
|
|
0:83 Sequence
|
|
0:83 move second child to first child ( temp highp float)
|
|
0:83 'j' ( temp highp float)
|
|
0:83 Convert uint to float ( temp highp float)
|
|
0:83 Function Call: bar( ( global highp uint)
|
|
0:84 move second child to first child ( temp highp 4-component vector of float)
|
|
0:84 'o' ( out highp 4-component vector of float)
|
|
0:84 add ( temp highp 4-component vector of float)
|
|
0:84 vector-scale ( temp highp 4-component vector of float)
|
|
0:84 'j' ( temp highp float)
|
|
0:84 Function Call: foo( ( global highp 4-component vector of float)
|
|
0:84 Function Call: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float)
|
|
0:84 samplers: direct index for structure ( global structure{ global 4-element array of highp int /*tn*/})
|
|
0:84 structUniform: direct index for structure ( uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers})
|
|
0:84 'anon@0' (layout( column_major std140) uniform block{ uniform highp 4-component vector of float a, uniform highp 2-component vector of float b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:84 Constant:
|
|
0:84 4 (const uint)
|
|
0:84 Constant:
|
|
0:84 4 (const int)
|
|
0:84 'structUniform.samplers.tn[0]' ( uniform highp sampler2D)
|
|
0:84 'structUniform.samplers.tn[1]' ( uniform highp sampler2D)
|
|
0:84 'structUniform.samplers.tn[2]' ( uniform highp sampler2D)
|
|
0:84 'structUniform.samplers.tn[3]' ( uniform highp sampler2D)
|
|
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 b, uniform highp 2-component vector of float c, uniform 10-element array of highp 4-component vector of float d, uniform structure{ global highp 2-component vector of float x, global highp float y, global highp uint z, global highp int /*t0*/, global structure{ global 4-element array of highp int /*tn*/} samplers} structUniform})
|
|
0:? 'structUniform.t0' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[0]' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[1]' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[2]' ( uniform highp sampler2D)
|
|
0:? 'structUniform.samplers.tn[3]' ( uniform highp sampler2D)
|
|
0:? 't1' ( uniform highp sampler2D)
|
|
0:? 'anon@1' (layout( column_major std140) uniform block{layout( column_major std140) uniform highp float j, layout( column_major std140) uniform highp 4-component vector of float k})
|
|
0:? 'bufferInstance' (layout( column_major std430) buffer block{layout( column_major std430) buffer highp float j, layout( column_major std430) buffer highp 4-component vector of float k})
|
|
0:? 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2})
|
|
0:? 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3})
|
|
|
|
// Module Version 10000
|
|
// Generated by (magic number): 8000b
|
|
// Id's are bound by 216
|
|
|
|
Capability Shader
|
|
1: ExtInstImport "GLSL.std.450"
|
|
MemoryModel Logical GLSL450
|
|
EntryPoint Fragment 4 "main" 190
|
|
ExecutionMode 4 OriginUpperLeft
|
|
Source GLSL 460
|
|
Name 4 "main"
|
|
Name 8 "bar("
|
|
Name 13 "foo("
|
|
Name 18 "SamplerArray"
|
|
MemberName 18(SamplerArray) 0 "/*tn*/"
|
|
Name 29 "baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21;"
|
|
Name 24 "samplers"
|
|
Name 25 "samplers.tn[0]"
|
|
Name 26 "samplers.tn[1]"
|
|
Name 27 "samplers.tn[2]"
|
|
Name 28 "samplers.tn[3]"
|
|
Name 32 "j"
|
|
Name 34 "gl_AtomicCounterBlock_0"
|
|
MemberName 34(gl_AtomicCounterBlock_0) 0 "counter1"
|
|
MemberName 34(gl_AtomicCounterBlock_0) 1 "counter2"
|
|
Name 36 ""
|
|
Name 78 "gl_AtomicCounterBlock_1"
|
|
MemberName 78(gl_AtomicCounterBlock_1) 0 "counter3"
|
|
Name 80 ""
|
|
Name 88 "f"
|
|
Name 89 "UniformBlock"
|
|
MemberName 89(UniformBlock) 0 "j"
|
|
MemberName 89(UniformBlock) 1 "k"
|
|
Name 91 ""
|
|
Name 95 "BufferBlock"
|
|
MemberName 95(BufferBlock) 0 "j"
|
|
MemberName 95(BufferBlock) 1 "k"
|
|
Name 97 "bufferInstance"
|
|
Name 105 "SamplerArray"
|
|
MemberName 105(SamplerArray) 0 "/*tn*/"
|
|
Name 106 "e"
|
|
MemberName 106(e) 0 "x"
|
|
MemberName 106(e) 1 "y"
|
|
MemberName 106(e) 2 "z"
|
|
MemberName 106(e) 3 "/*t0*/"
|
|
MemberName 106(e) 4 "samplers"
|
|
Name 107 "gl_DefaultUniformBlock"
|
|
MemberName 107(gl_DefaultUniformBlock) 0 "a"
|
|
MemberName 107(gl_DefaultUniformBlock) 1 "b"
|
|
MemberName 107(gl_DefaultUniformBlock) 2 "c"
|
|
MemberName 107(gl_DefaultUniformBlock) 3 "d"
|
|
MemberName 107(gl_DefaultUniformBlock) 4 "structUniform"
|
|
Name 109 ""
|
|
Name 120 "v2"
|
|
Name 131 "v4"
|
|
Name 151 "t1"
|
|
Name 157 "structUniform.t0"
|
|
Name 186 "j"
|
|
Name 190 "o"
|
|
Name 194 "structUniform.samplers.tn[0]"
|
|
Name 195 "structUniform.samplers.tn[1]"
|
|
Name 196 "structUniform.samplers.tn[2]"
|
|
Name 197 "structUniform.samplers.tn[3]"
|
|
Name 198 "param"
|
|
Decorate 34(gl_AtomicCounterBlock_0) BufferBlock
|
|
MemberDecorate 34(gl_AtomicCounterBlock_0) 0 Volatile
|
|
MemberDecorate 34(gl_AtomicCounterBlock_0) 0 Coherent
|
|
MemberDecorate 34(gl_AtomicCounterBlock_0) 0 Offset 0
|
|
MemberDecorate 34(gl_AtomicCounterBlock_0) 1 Volatile
|
|
MemberDecorate 34(gl_AtomicCounterBlock_0) 1 Coherent
|
|
MemberDecorate 34(gl_AtomicCounterBlock_0) 1 Offset 4
|
|
Decorate 36 Binding 9
|
|
Decorate 36 DescriptorSet 0
|
|
Decorate 78(gl_AtomicCounterBlock_1) BufferBlock
|
|
MemberDecorate 78(gl_AtomicCounterBlock_1) 0 Volatile
|
|
MemberDecorate 78(gl_AtomicCounterBlock_1) 0 Coherent
|
|
MemberDecorate 78(gl_AtomicCounterBlock_1) 0 Offset 0
|
|
Decorate 80 Binding 10
|
|
Decorate 80 DescriptorSet 0
|
|
Decorate 89(UniformBlock) Block
|
|
MemberDecorate 89(UniformBlock) 0 Offset 0
|
|
MemberDecorate 89(UniformBlock) 1 Offset 16
|
|
Decorate 91 Binding 7
|
|
Decorate 91 DescriptorSet 0
|
|
Decorate 95(BufferBlock) BufferBlock
|
|
MemberDecorate 95(BufferBlock) 0 Offset 0
|
|
MemberDecorate 95(BufferBlock) 1 Offset 16
|
|
Decorate 97(bufferInstance) Binding 8
|
|
Decorate 97(bufferInstance) DescriptorSet 0
|
|
Decorate 103 ArrayStride 16
|
|
Decorate 104 ArrayStride 16
|
|
MemberDecorate 105(SamplerArray) 0 Offset 0
|
|
MemberDecorate 106(e) 0 Offset 0
|
|
MemberDecorate 106(e) 1 Offset 8
|
|
MemberDecorate 106(e) 2 Offset 12
|
|
MemberDecorate 106(e) 3 Offset 16
|
|
MemberDecorate 106(e) 4 Offset 32
|
|
Decorate 107(gl_DefaultUniformBlock) Block
|
|
MemberDecorate 107(gl_DefaultUniformBlock) 0 Offset 0
|
|
MemberDecorate 107(gl_DefaultUniformBlock) 1 Offset 16
|
|
MemberDecorate 107(gl_DefaultUniformBlock) 2 Offset 24
|
|
MemberDecorate 107(gl_DefaultUniformBlock) 3 Offset 32
|
|
MemberDecorate 107(gl_DefaultUniformBlock) 4 Offset 192
|
|
Decorate 109 Binding 0
|
|
Decorate 109 DescriptorSet 0
|
|
Decorate 151(t1) Binding 6
|
|
Decorate 151(t1) DescriptorSet 0
|
|
Decorate 157(structUniform.t0) Binding 1
|
|
Decorate 157(structUniform.t0) DescriptorSet 0
|
|
Decorate 190(o) Location 0
|
|
Decorate 194(structUniform.samplers.tn[0]) Binding 2
|
|
Decorate 194(structUniform.samplers.tn[0]) DescriptorSet 0
|
|
Decorate 195(structUniform.samplers.tn[1]) Binding 3
|
|
Decorate 195(structUniform.samplers.tn[1]) DescriptorSet 0
|
|
Decorate 196(structUniform.samplers.tn[2]) Binding 4
|
|
Decorate 196(structUniform.samplers.tn[2]) DescriptorSet 0
|
|
Decorate 197(structUniform.samplers.tn[3]) Binding 5
|
|
Decorate 197(structUniform.samplers.tn[3]) DescriptorSet 0
|
|
2: TypeVoid
|
|
3: TypeFunction 2
|
|
6: TypeInt 32 0
|
|
7: TypeFunction 6(int)
|
|
10: TypeFloat 32
|
|
11: TypeVector 10(float) 4
|
|
12: TypeFunction 11(fvec4)
|
|
15: TypeInt 32 1
|
|
16: 6(int) Constant 4
|
|
17: TypeArray 15(int) 16
|
|
18(SamplerArray): TypeStruct 17
|
|
19: TypePointer Function 18(SamplerArray)
|
|
20: TypeImage 10(float) 2D sampled format:Unknown
|
|
21: TypeSampledImage 20
|
|
22: TypePointer UniformConstant 21
|
|
23: TypeFunction 11(fvec4) 19(ptr) 22(ptr) 22(ptr) 22(ptr) 22(ptr)
|
|
31: TypePointer Function 6(int)
|
|
33: 6(int) Constant 0
|
|
34(gl_AtomicCounterBlock_0): TypeStruct 6(int) 6(int)
|
|
35: TypePointer Uniform 34(gl_AtomicCounterBlock_0)
|
|
36: 35(ptr) Variable Uniform
|
|
37: 15(int) Constant 0
|
|
38: TypePointer Uniform 6(int)
|
|
40: 6(int) Constant 1
|
|
43: 6(int) Constant 4294967295
|
|
75: 15(int) Constant 1
|
|
78(gl_AtomicCounterBlock_1): TypeStruct 6(int)
|
|
79: TypePointer Uniform 78(gl_AtomicCounterBlock_1)
|
|
80: 79(ptr) Variable Uniform
|
|
83: 6(int) Constant 72
|
|
87: TypePointer Function 10(float)
|
|
89(UniformBlock): TypeStruct 10(float) 11(fvec4)
|
|
90: TypePointer Uniform 89(UniformBlock)
|
|
91: 90(ptr) Variable Uniform
|
|
92: TypePointer Uniform 10(float)
|
|
95(BufferBlock): TypeStruct 10(float) 11(fvec4)
|
|
96: TypePointer Uniform 95(BufferBlock)
|
|
97(bufferInstance): 96(ptr) Variable Uniform
|
|
101: TypeVector 10(float) 2
|
|
102: 6(int) Constant 10
|
|
103: TypeArray 11(fvec4) 102
|
|
104: TypeArray 15(int) 16
|
|
105(SamplerArray): TypeStruct 104
|
|
106(e): TypeStruct 101(fvec2) 10(float) 6(int) 15(int) 105(SamplerArray)
|
|
107(gl_DefaultUniformBlock): TypeStruct 11(fvec4) 101(fvec2) 101(fvec2) 103 106(e)
|
|
108: TypePointer Uniform 107(gl_DefaultUniformBlock)
|
|
109: 108(ptr) Variable Uniform
|
|
110: 15(int) Constant 4
|
|
114: 15(int) Constant 2
|
|
119: TypePointer Function 101(fvec2)
|
|
121: TypePointer Uniform 101(fvec2)
|
|
130: TypePointer Function 11(fvec4)
|
|
132: TypePointer Uniform 11(fvec4)
|
|
135: 15(int) Constant 3
|
|
151(t1): 22(ptr) Variable UniformConstant
|
|
153: 10(float) Constant 0
|
|
154: 101(fvec2) ConstantComposite 153 153
|
|
157(structUniform.t0): 22(ptr) Variable UniformConstant
|
|
164: 10(float) Constant 1065353216
|
|
189: TypePointer Output 11(fvec4)
|
|
190(o): 189(ptr) Variable Output
|
|
194(structUniform.samplers.tn[0]): 22(ptr) Variable UniformConstant
|
|
195(structUniform.samplers.tn[1]): 22(ptr) Variable UniformConstant
|
|
196(structUniform.samplers.tn[2]): 22(ptr) Variable UniformConstant
|
|
197(structUniform.samplers.tn[3]): 22(ptr) Variable UniformConstant
|
|
199: TypePointer Uniform 105(SamplerArray)
|
|
203: TypePointer Function 17
|
|
206: TypePointer Function 15(int)
|
|
4(main): 2 Function None 3
|
|
5: Label
|
|
186(j): 87(ptr) Variable Function
|
|
198(param): 19(ptr) Variable Function
|
|
187: 6(int) FunctionCall 8(bar()
|
|
188: 10(float) ConvertUToF 187
|
|
Store 186(j) 188
|
|
191: 10(float) Load 186(j)
|
|
192: 11(fvec4) FunctionCall 13(foo()
|
|
193: 11(fvec4) VectorTimesScalar 192 191
|
|
200: 199(ptr) AccessChain 109 110 110
|
|
201:105(SamplerArray) Load 200
|
|
202: 104 CompositeExtract 201 0
|
|
204: 203(ptr) AccessChain 198(param) 37
|
|
205: 15(int) CompositeExtract 202 0
|
|
207: 206(ptr) AccessChain 204 37
|
|
Store 207 205
|
|
208: 15(int) CompositeExtract 202 1
|
|
209: 206(ptr) AccessChain 204 75
|
|
Store 209 208
|
|
210: 15(int) CompositeExtract 202 2
|
|
211: 206(ptr) AccessChain 204 114
|
|
Store 211 210
|
|
212: 15(int) CompositeExtract 202 3
|
|
213: 206(ptr) AccessChain 204 135
|
|
Store 213 212
|
|
214: 11(fvec4) FunctionCall 29(baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21;) 198(param) 194(structUniform.samplers.tn[0]) 195(structUniform.samplers.tn[1]) 196(structUniform.samplers.tn[2]) 197(structUniform.samplers.tn[3])
|
|
215: 11(fvec4) FAdd 193 214
|
|
Store 190(o) 215
|
|
Return
|
|
FunctionEnd
|
|
8(bar(): 6(int) Function None 7
|
|
9: Label
|
|
32(j): 31(ptr) Variable Function
|
|
Store 32(j) 33
|
|
39: 38(ptr) AccessChain 36 37
|
|
41: 6(int) AtomicIAdd 39 40 33 40
|
|
Store 32(j) 41
|
|
42: 38(ptr) AccessChain 36 37
|
|
44: 6(int) AtomicIAdd 42 40 33 43
|
|
45: 6(int) ISub 44 40
|
|
Store 32(j) 45
|
|
46: 38(ptr) AccessChain 36 37
|
|
47: 6(int) Load 46
|
|
Store 32(j) 47
|
|
48: 38(ptr) AccessChain 36 37
|
|
49: 6(int) AtomicIAdd 48 40 33 40
|
|
Store 32(j) 49
|
|
50: 38(ptr) AccessChain 36 37
|
|
51: 6(int) AtomicIAdd 50 40 33 43
|
|
Store 32(j) 51
|
|
52: 38(ptr) AccessChain 36 37
|
|
53: 6(int) AtomicISub 52 40 33 40
|
|
Store 32(j) 53
|
|
54: 38(ptr) AccessChain 36 37
|
|
55: 6(int) Load 32(j)
|
|
56: 6(int) AtomicUMin 54 40 33 55
|
|
Store 32(j) 56
|
|
57: 38(ptr) AccessChain 36 37
|
|
58: 6(int) Load 32(j)
|
|
59: 6(int) AtomicUMax 57 40 33 58
|
|
Store 32(j) 59
|
|
60: 38(ptr) AccessChain 36 37
|
|
61: 6(int) Load 32(j)
|
|
62: 6(int) AtomicAnd 60 40 33 61
|
|
Store 32(j) 62
|
|
63: 38(ptr) AccessChain 36 37
|
|
64: 6(int) Load 32(j)
|
|
65: 6(int) AtomicOr 63 40 33 64
|
|
Store 32(j) 65
|
|
66: 38(ptr) AccessChain 36 37
|
|
67: 6(int) Load 32(j)
|
|
68: 6(int) AtomicXor 66 40 33 67
|
|
Store 32(j) 68
|
|
69: 38(ptr) AccessChain 36 37
|
|
70: 6(int) Load 32(j)
|
|
71: 6(int) AtomicExchange 69 40 33 70
|
|
Store 32(j) 71
|
|
72: 38(ptr) AccessChain 36 37
|
|
73: 6(int) Load 32(j)
|
|
74: 6(int) AtomicCompareExchange 72 40 33 33 73 33
|
|
Store 32(j) 74
|
|
76: 38(ptr) AccessChain 36 75
|
|
77: 6(int) AtomicIAdd 76 40 33 40
|
|
81: 38(ptr) AccessChain 80 37
|
|
82: 6(int) AtomicIAdd 81 40 33 40
|
|
MemoryBarrier 40 83
|
|
84: 6(int) Load 32(j)
|
|
ReturnValue 84
|
|
FunctionEnd
|
|
13(foo(): 11(fvec4) Function None 12
|
|
14: Label
|
|
88(f): 87(ptr) Variable Function
|
|
120(v2): 119(ptr) Variable Function
|
|
131(v4): 130(ptr) Variable Function
|
|
93: 92(ptr) AccessChain 91 37
|
|
94: 10(float) Load 93
|
|
98: 92(ptr) AccessChain 97(bufferInstance) 37
|
|
99: 10(float) Load 98
|
|
100: 10(float) FAdd 94 99
|
|
111: 92(ptr) AccessChain 109 110 75
|
|
112: 10(float) Load 111
|
|
113: 10(float) FAdd 100 112
|
|
115: 38(ptr) AccessChain 109 110 114
|
|
116: 6(int) Load 115
|
|
117: 10(float) ConvertUToF 116
|
|
118: 10(float) FAdd 113 117
|
|
Store 88(f) 118
|
|
122: 121(ptr) AccessChain 109 75
|
|
123: 101(fvec2) Load 122
|
|
124: 121(ptr) AccessChain 109 114
|
|
125: 101(fvec2) Load 124
|
|
126: 101(fvec2) FAdd 123 125
|
|
127: 121(ptr) AccessChain 109 110 37
|
|
128: 101(fvec2) Load 127
|
|
129: 101(fvec2) FAdd 126 128
|
|
Store 120(v2) 129
|
|
133: 132(ptr) AccessChain 109 37
|
|
134: 11(fvec4) Load 133
|
|
136: 132(ptr) AccessChain 109 135 37
|
|
137: 11(fvec4) Load 136
|
|
138: 11(fvec4) FAdd 134 137
|
|
139: 132(ptr) AccessChain 109 135 75
|
|
140: 11(fvec4) Load 139
|
|
141: 11(fvec4) FAdd 138 140
|
|
142: 132(ptr) AccessChain 109 135 114
|
|
143: 11(fvec4) Load 142
|
|
144: 11(fvec4) FAdd 141 143
|
|
145: 132(ptr) AccessChain 91 75
|
|
146: 11(fvec4) Load 145
|
|
147: 11(fvec4) FAdd 144 146
|
|
148: 132(ptr) AccessChain 97(bufferInstance) 75
|
|
149: 11(fvec4) Load 148
|
|
150: 11(fvec4) FAdd 147 149
|
|
152: 21 Load 151(t1)
|
|
155: 11(fvec4) ImageSampleImplicitLod 152 154
|
|
156: 11(fvec4) FAdd 150 155
|
|
158: 21 Load 157(structUniform.t0)
|
|
159: 11(fvec4) ImageSampleImplicitLod 158 154
|
|
160: 11(fvec4) FAdd 156 159
|
|
Store 131(v4) 160
|
|
161: 10(float) Load 88(f)
|
|
162: 11(fvec4) CompositeConstruct 161 161 161 161
|
|
163: 101(fvec2) Load 120(v2)
|
|
165: 10(float) CompositeExtract 163 0
|
|
166: 10(float) CompositeExtract 163 1
|
|
167: 11(fvec4) CompositeConstruct 165 166 164 164
|
|
168: 11(fvec4) FMul 162 167
|
|
169: 11(fvec4) Load 131(v4)
|
|
170: 11(fvec4) FMul 168 169
|
|
ReturnValue 170
|
|
FunctionEnd
|
|
29(baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21;): 11(fvec4) Function None 23
|
|
24(samplers): 19(ptr) FunctionParameter
|
|
25(samplers.tn[0]): 22(ptr) FunctionParameter
|
|
26(samplers.tn[1]): 22(ptr) FunctionParameter
|
|
27(samplers.tn[2]): 22(ptr) FunctionParameter
|
|
28(samplers.tn[3]): 22(ptr) FunctionParameter
|
|
30: Label
|
|
173: 21 Load 25(samplers.tn[0])
|
|
174: 11(fvec4) ImageSampleImplicitLod 173 154
|
|
175: 21 Load 26(samplers.tn[1])
|
|
176: 11(fvec4) ImageSampleImplicitLod 175 154
|
|
177: 11(fvec4) FAdd 174 176
|
|
178: 21 Load 27(samplers.tn[2])
|
|
179: 11(fvec4) ImageSampleImplicitLod 178 154
|
|
180: 11(fvec4) FAdd 177 179
|
|
181: 21 Load 28(samplers.tn[3])
|
|
182: 11(fvec4) ImageSampleImplicitLod 181 154
|
|
183: 11(fvec4) FAdd 180 182
|
|
ReturnValue 183
|
|
FunctionEnd
|