yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
33c7e308
main
1vk.relaxed.frag 2WARNING: 0:7: 'b' : Ignoring initializer for uniform 3WARNING: 0:8: 'c' : ignoring layout qualifier for uniform location 4 5Shader version: 460 6gl_FragCoord origin is upper left 70:? Sequence 80:43 Function Definition: bar( ( global highp uint) 90:43 Function Parameters: 100:44 Sequence 110:44 Sequence 120:44 move second child to first child ( temp highp uint) 130:44 'j' ( temp highp uint) 140:44 Constant: 150:44 0 (const uint) 160:45 move second child to first child ( temp highp uint) 170:45 'j' ( temp highp uint) 180:45 AtomicAdd ( global highp uint) 190:45 counter1: direct index for structure ( coherent volatile buffer highp uint) 200:45 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 210:45 Constant: 220:45 0 (const uint) 230:45 Constant: 240:45 1 (const uint) 250:46 move second child to first child ( temp highp uint) 260:46 'j' ( temp highp uint) 270:46 subtract ( temp highp uint) 280:46 AtomicAdd ( global highp uint) 290:46 counter1: direct index for structure ( coherent volatile buffer highp uint) 300:46 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 310:46 Constant: 320:46 0 (const uint) 330:46 Constant: 340:46 4294967295 (const uint) 350:46 Constant: 360:46 1 (const uint) 370:47 move second child to first child ( temp highp uint) 380:47 'j' ( temp highp uint) 390:47 counter1: direct index for structure ( coherent volatile buffer highp uint) 400:47 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 410:47 Constant: 420:47 0 (const uint) 430:49 move second child to first child ( temp highp uint) 440:49 'j' ( temp highp uint) 450:49 AtomicAdd ( global highp uint) 460:49 counter1: direct index for structure ( coherent volatile buffer highp uint) 470:49 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 480:49 Constant: 490:49 0 (const uint) 500:49 Constant: 510:49 1 (const uint) 520:50 move second child to first child ( temp highp uint) 530:50 'j' ( temp highp uint) 540:50 AtomicAdd ( global highp uint) 550:50 counter1: direct index for structure ( coherent volatile buffer highp uint) 560:50 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 570:50 Constant: 580:50 0 (const uint) 590:50 Constant: 600:50 4294967295 (const uint) 610:51 move second child to first child ( temp highp uint) 620:51 'j' ( temp highp uint) 630:51 AtomicSubtract ( global highp uint) 640:51 counter1: direct index for structure ( coherent volatile buffer highp uint) 650:51 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 660:51 Constant: 670:51 0 (const uint) 680:51 Constant: 690:51 1 (const uint) 700:53 move second child to first child ( temp highp uint) 710:53 'j' ( temp highp uint) 720:53 AtomicMin ( global highp uint) 730:53 counter1: direct index for structure ( coherent volatile buffer highp uint) 740:53 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 750:53 Constant: 760:53 0 (const uint) 770:53 'j' ( temp highp uint) 780:54 move second child to first child ( temp highp uint) 790:54 'j' ( temp highp uint) 800:54 AtomicMax ( global highp uint) 810:54 counter1: direct index for structure ( coherent volatile buffer highp uint) 820:54 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 830:54 Constant: 840:54 0 (const uint) 850:54 'j' ( temp highp uint) 860:55 move second child to first child ( temp highp uint) 870:55 'j' ( temp highp uint) 880:55 AtomicAnd ( global highp uint) 890:55 counter1: direct index for structure ( coherent volatile buffer highp uint) 900:55 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 910:55 Constant: 920:55 0 (const uint) 930:55 'j' ( temp highp uint) 940:57 move second child to first child ( temp highp uint) 950:57 'j' ( temp highp uint) 960:57 AtomicOr ( global highp uint) 970:57 counter1: direct index for structure ( coherent volatile buffer highp uint) 980:57 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 990:57 Constant: 1000:57 0 (const uint) 1010:57 'j' ( temp highp uint) 1020:58 move second child to first child ( temp highp uint) 1030:58 'j' ( temp highp uint) 1040:58 AtomicXor ( global highp uint) 1050:58 counter1: direct index for structure ( coherent volatile buffer highp uint) 1060:58 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 1070:58 Constant: 1080:58 0 (const uint) 1090:58 'j' ( temp highp uint) 1100:60 move second child to first child ( temp highp uint) 1110:60 'j' ( temp highp uint) 1120:60 AtomicExchange ( global highp uint) 1130:60 counter1: direct index for structure ( coherent volatile buffer highp uint) 1140:60 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 1150:60 Constant: 1160:60 0 (const uint) 1170:60 'j' ( temp highp uint) 1180:61 move second child to first child ( temp highp uint) 1190:61 'j' ( temp highp uint) 1200:61 AtomicCompSwap ( global highp uint) 1210:61 counter1: direct index for structure ( coherent volatile buffer highp uint) 1220:61 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 1230:61 Constant: 1240:61 0 (const uint) 1250:61 Constant: 1260:61 0 (const uint) 1270:61 'j' ( temp highp uint) 1280:63 AtomicAdd ( global highp uint) 1290:63 counter2: direct index for structure ( coherent volatile buffer highp uint) 1300:63 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 1310:63 Constant: 1320:63 1 (const uint) 1330:63 Constant: 1340:63 1 (const uint) 1350:64 AtomicAdd ( global highp uint) 1360:64 counter3: direct index for structure ( coherent volatile buffer highp uint) 1370:64 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3}) 1380:64 Constant: 1390:64 0 (const uint) 1400:64 Constant: 1410:64 1 (const uint) 1420:66 MemoryBarrierBuffer ( global void) 1430:68 Branch: Return with expression 1440:68 'j' ( temp highp uint) 1450:71 Function Definition: foo( ( global highp 4-component vector of float) 1460:71 Function Parameters: 1470:72 Sequence 1480:72 Sequence 1490:72 move second child to first child ( temp highp float) 1500:72 'f' ( temp highp float) 1510:72 add ( temp highp float) 1520:72 add ( temp highp float) 1530:72 add ( temp highp float) 1540:72 j: direct index for structure (layout( column_major std140) uniform highp float) 1550: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}) 1560:72 Constant: 1570:72 0 (const uint) 1580:72 j: direct index for structure (layout( column_major std430) buffer highp float) 1590: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}) 1600:72 Constant: 1610:72 0 (const int) 1620:72 y: direct index for structure ( global highp float) 1630: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}) 1640: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}) 1650:72 Constant: 1660:72 4 (const uint) 1670:72 Constant: 1680:72 1 (const int) 1690:72 Convert uint to float ( temp highp float) 1700:72 z: direct index for structure ( global highp uint) 1710: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}) 1720: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}) 1730:72 Constant: 1740:72 4 (const uint) 1750:72 Constant: 1760:72 2 (const int) 1770:73 Sequence 1780:73 move second child to first child ( temp highp 2-component vector of float) 1790:73 'v2' ( temp highp 2-component vector of float) 1800:73 add ( temp highp 2-component vector of float) 1810:73 add ( temp highp 2-component vector of float) 1820:73 b: direct index for structure ( uniform highp 2-component vector of float) 1830: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}) 1840:73 Constant: 1850:73 1 (const uint) 1860:73 c: direct index for structure ( uniform highp 2-component vector of float) 1870: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}) 1880:73 Constant: 1890:73 2 (const uint) 1900:73 x: direct index for structure ( global highp 2-component vector of float) 1910: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}) 1920: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}) 1930:73 Constant: 1940:73 4 (const uint) 1950:73 Constant: 1960:73 0 (const int) 1970:74 Sequence 1980:74 move second child to first child ( temp highp 4-component vector of float) 1990:74 'v4' ( temp highp 4-component vector of float) 2000:74 add ( temp highp 4-component vector of float) 2010:74 add ( temp highp 4-component vector of float) 2020:74 add ( temp highp 4-component vector of float) 2030:74 add ( temp highp 4-component vector of float) 2040:74 add ( temp highp 4-component vector of float) 2050:74 add ( temp highp 4-component vector of float) 2060:74 add ( temp highp 4-component vector of float) 2070:74 a: direct index for structure ( uniform highp 4-component vector of float) 2080: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}) 2090:74 Constant: 2100:74 0 (const uint) 2110:74 direct index ( temp highp 4-component vector of float) 2120:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float) 2130: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}) 2140:74 Constant: 2150:74 3 (const uint) 2160:74 Constant: 2170:74 0 (const int) 2180:74 direct index ( temp highp 4-component vector of float) 2190:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float) 2200: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}) 2210:74 Constant: 2220:74 3 (const uint) 2230:74 Constant: 2240:74 1 (const int) 2250:74 direct index ( temp highp 4-component vector of float) 2260:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float) 2270: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}) 2280:74 Constant: 2290:74 3 (const uint) 2300:74 Constant: 2310:74 2 (const int) 2320:74 k: direct index for structure (layout( column_major std140) uniform highp 4-component vector of float) 2330: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}) 2340:74 Constant: 2350:74 1 (const uint) 2360:74 k: direct index for structure (layout( column_major std430) buffer highp 4-component vector of float) 2370: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}) 2380:74 Constant: 2390:74 1 (const int) 2400:74 texture ( global highp 4-component vector of float) 2410:74 't1' ( uniform highp sampler2D) 2420:74 Constant: 2430:74 0.000000 2440:74 0.000000 2450:74 texture ( global highp 4-component vector of float) 2460:? 'structUniform.t0' ( uniform highp sampler2D) 2470:74 Constant: 2480:74 0.000000 2490:74 0.000000 2500:75 Branch: Return with expression 2510:75 component-wise multiply ( temp highp 4-component vector of float) 2520:75 component-wise multiply ( temp highp 4-component vector of float) 2530:75 Construct vec4 ( temp highp 4-component vector of float) 2540:75 'f' ( temp highp float) 2550:75 Construct vec4 ( temp highp 4-component vector of float) 2560:75 'v2' ( temp highp 2-component vector of float) 2570:75 Constant: 2580:75 1.000000 2590:75 Constant: 2600:75 1.000000 2610:75 'v4' ( temp highp 4-component vector of float) 2620:78 Function Definition: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float) 2630:78 Function Parameters: 2640:78 'samplers' ( in structure{ global 4-element array of highp int /*tn*/}) 2650:78 'samplers.tn[0]' ( in highp sampler2D) 2660:78 'samplers.tn[1]' ( in highp sampler2D) 2670:78 'samplers.tn[2]' ( in highp sampler2D) 2680:78 'samplers.tn[3]' ( in highp sampler2D) 2690:79 Sequence 2700:79 Branch: Return with expression 2710:79 add ( temp highp 4-component vector of float) 2720:79 add ( temp highp 4-component vector of float) 2730:79 add ( temp highp 4-component vector of float) 2740:79 texture ( global highp 4-component vector of float) 2750:79 'samplers.tn[0]' ( in highp sampler2D) 2760:79 Constant: 2770:79 0.000000 2780:79 0.000000 2790:79 texture ( global highp 4-component vector of float) 2800:79 'samplers.tn[1]' ( in highp sampler2D) 2810:79 Constant: 2820:79 0.000000 2830:79 0.000000 2840:79 texture ( global highp 4-component vector of float) 2850:79 'samplers.tn[2]' ( in highp sampler2D) 2860:79 Constant: 2870:79 0.000000 2880:79 0.000000 2890:79 texture ( global highp 4-component vector of float) 2900:79 'samplers.tn[3]' ( in highp sampler2D) 2910:79 Constant: 2920:79 0.000000 2930:79 0.000000 2940:82 Function Definition: main( ( global void) 2950:82 Function Parameters: 2960:83 Sequence 2970:83 Sequence 2980:83 move second child to first child ( temp highp float) 2990:83 'j' ( temp highp float) 3000:83 Convert uint to float ( temp highp float) 3010:83 Function Call: bar( ( global highp uint) 3020:84 move second child to first child ( temp highp 4-component vector of float) 3030:84 'o' ( out highp 4-component vector of float) 3040:84 add ( temp highp 4-component vector of float) 3050:84 vector-scale ( temp highp 4-component vector of float) 3060:84 'j' ( temp highp float) 3070:84 Function Call: foo( ( global highp 4-component vector of float) 3080:84 Function Call: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float) 3090:84 samplers: direct index for structure ( global structure{ global 4-element array of highp int /*tn*/}) 3100: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}) 3110: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}) 3120:84 Constant: 3130:84 4 (const uint) 3140:84 Constant: 3150:84 4 (const int) 3160:84 'structUniform.samplers.tn[0]' ( uniform highp sampler2D) 3170:84 'structUniform.samplers.tn[1]' ( uniform highp sampler2D) 3180:84 'structUniform.samplers.tn[2]' ( uniform highp sampler2D) 3190:84 'structUniform.samplers.tn[3]' ( uniform highp sampler2D) 3200:? Linker Objects 3210:? 'o' ( out highp 4-component vector of float) 3220:? '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}) 3230:? 'structUniform.t0' ( uniform highp sampler2D) 3240:? 'structUniform.samplers.tn[0]' ( uniform highp sampler2D) 3250:? 'structUniform.samplers.tn[1]' ( uniform highp sampler2D) 3260:? 'structUniform.samplers.tn[2]' ( uniform highp sampler2D) 3270:? 'structUniform.samplers.tn[3]' ( uniform highp sampler2D) 3280:? 't1' ( uniform highp sampler2D) 3290:? '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}) 3300:? '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}) 3310:? 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3320:? 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3}) 333 334 335Linked fragment stage: 336 337 338Shader version: 460 339gl_FragCoord origin is upper left 3400:? Sequence 3410:43 Function Definition: bar( ( global highp uint) 3420:43 Function Parameters: 3430:44 Sequence 3440:44 Sequence 3450:44 move second child to first child ( temp highp uint) 3460:44 'j' ( temp highp uint) 3470:44 Constant: 3480:44 0 (const uint) 3490:45 move second child to first child ( temp highp uint) 3500:45 'j' ( temp highp uint) 3510:45 AtomicAdd ( global highp uint) 3520:45 counter1: direct index for structure ( coherent volatile buffer highp uint) 3530:45 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3540:45 Constant: 3550:45 0 (const uint) 3560:45 Constant: 3570:45 1 (const uint) 3580:46 move second child to first child ( temp highp uint) 3590:46 'j' ( temp highp uint) 3600:46 subtract ( temp highp uint) 3610:46 AtomicAdd ( global highp uint) 3620:46 counter1: direct index for structure ( coherent volatile buffer highp uint) 3630:46 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3640:46 Constant: 3650:46 0 (const uint) 3660:46 Constant: 3670:46 4294967295 (const uint) 3680:46 Constant: 3690:46 1 (const uint) 3700:47 move second child to first child ( temp highp uint) 3710:47 'j' ( temp highp uint) 3720:47 counter1: direct index for structure ( coherent volatile buffer highp uint) 3730:47 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3740:47 Constant: 3750:47 0 (const uint) 3760:49 move second child to first child ( temp highp uint) 3770:49 'j' ( temp highp uint) 3780:49 AtomicAdd ( global highp uint) 3790:49 counter1: direct index for structure ( coherent volatile buffer highp uint) 3800:49 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3810:49 Constant: 3820:49 0 (const uint) 3830:49 Constant: 3840:49 1 (const uint) 3850:50 move second child to first child ( temp highp uint) 3860:50 'j' ( temp highp uint) 3870:50 AtomicAdd ( global highp uint) 3880:50 counter1: direct index for structure ( coherent volatile buffer highp uint) 3890:50 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3900:50 Constant: 3910:50 0 (const uint) 3920:50 Constant: 3930:50 4294967295 (const uint) 3940:51 move second child to first child ( temp highp uint) 3950:51 'j' ( temp highp uint) 3960:51 AtomicSubtract ( global highp uint) 3970:51 counter1: direct index for structure ( coherent volatile buffer highp uint) 3980:51 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 3990:51 Constant: 4000:51 0 (const uint) 4010:51 Constant: 4020:51 1 (const uint) 4030:53 move second child to first child ( temp highp uint) 4040:53 'j' ( temp highp uint) 4050:53 AtomicMin ( global highp uint) 4060:53 counter1: direct index for structure ( coherent volatile buffer highp uint) 4070:53 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4080:53 Constant: 4090:53 0 (const uint) 4100:53 'j' ( temp highp uint) 4110:54 move second child to first child ( temp highp uint) 4120:54 'j' ( temp highp uint) 4130:54 AtomicMax ( global highp uint) 4140:54 counter1: direct index for structure ( coherent volatile buffer highp uint) 4150:54 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4160:54 Constant: 4170:54 0 (const uint) 4180:54 'j' ( temp highp uint) 4190:55 move second child to first child ( temp highp uint) 4200:55 'j' ( temp highp uint) 4210:55 AtomicAnd ( global highp uint) 4220:55 counter1: direct index for structure ( coherent volatile buffer highp uint) 4230:55 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4240:55 Constant: 4250:55 0 (const uint) 4260:55 'j' ( temp highp uint) 4270:57 move second child to first child ( temp highp uint) 4280:57 'j' ( temp highp uint) 4290:57 AtomicOr ( global highp uint) 4300:57 counter1: direct index for structure ( coherent volatile buffer highp uint) 4310:57 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4320:57 Constant: 4330:57 0 (const uint) 4340:57 'j' ( temp highp uint) 4350:58 move second child to first child ( temp highp uint) 4360:58 'j' ( temp highp uint) 4370:58 AtomicXor ( global highp uint) 4380:58 counter1: direct index for structure ( coherent volatile buffer highp uint) 4390:58 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4400:58 Constant: 4410:58 0 (const uint) 4420:58 'j' ( temp highp uint) 4430:60 move second child to first child ( temp highp uint) 4440:60 'j' ( temp highp uint) 4450:60 AtomicExchange ( global highp uint) 4460:60 counter1: direct index for structure ( coherent volatile buffer highp uint) 4470:60 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4480:60 Constant: 4490:60 0 (const uint) 4500:60 'j' ( temp highp uint) 4510:61 move second child to first child ( temp highp uint) 4520:61 'j' ( temp highp uint) 4530:61 AtomicCompSwap ( global highp uint) 4540:61 counter1: direct index for structure ( coherent volatile buffer highp uint) 4550:61 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4560:61 Constant: 4570:61 0 (const uint) 4580:61 Constant: 4590:61 0 (const uint) 4600:61 'j' ( temp highp uint) 4610:63 AtomicAdd ( global highp uint) 4620:63 counter2: direct index for structure ( coherent volatile buffer highp uint) 4630:63 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 4640:63 Constant: 4650:63 1 (const uint) 4660:63 Constant: 4670:63 1 (const uint) 4680:64 AtomicAdd ( global highp uint) 4690:64 counter3: direct index for structure ( coherent volatile buffer highp uint) 4700:64 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3}) 4710:64 Constant: 4720:64 0 (const uint) 4730:64 Constant: 4740:64 1 (const uint) 4750:66 MemoryBarrierBuffer ( global void) 4760:68 Branch: Return with expression 4770:68 'j' ( temp highp uint) 4780:71 Function Definition: foo( ( global highp 4-component vector of float) 4790:71 Function Parameters: 4800:72 Sequence 4810:72 Sequence 4820:72 move second child to first child ( temp highp float) 4830:72 'f' ( temp highp float) 4840:72 add ( temp highp float) 4850:72 add ( temp highp float) 4860:72 add ( temp highp float) 4870:72 j: direct index for structure (layout( column_major std140) uniform highp float) 4880: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}) 4890:72 Constant: 4900:72 0 (const uint) 4910:72 j: direct index for structure (layout( column_major std430) buffer highp float) 4920: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}) 4930:72 Constant: 4940:72 0 (const int) 4950:72 y: direct index for structure ( global highp float) 4960: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}) 4970: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}) 4980:72 Constant: 4990:72 4 (const uint) 5000:72 Constant: 5010:72 1 (const int) 5020:72 Convert uint to float ( temp highp float) 5030:72 z: direct index for structure ( global highp uint) 5040: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}) 5050: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}) 5060:72 Constant: 5070:72 4 (const uint) 5080:72 Constant: 5090:72 2 (const int) 5100:73 Sequence 5110:73 move second child to first child ( temp highp 2-component vector of float) 5120:73 'v2' ( temp highp 2-component vector of float) 5130:73 add ( temp highp 2-component vector of float) 5140:73 add ( temp highp 2-component vector of float) 5150:73 b: direct index for structure ( uniform highp 2-component vector of float) 5160: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}) 5170:73 Constant: 5180:73 1 (const uint) 5190:73 c: direct index for structure ( uniform highp 2-component vector of float) 5200: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}) 5210:73 Constant: 5220:73 2 (const uint) 5230:73 x: direct index for structure ( global highp 2-component vector of float) 5240: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}) 5250: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}) 5260:73 Constant: 5270:73 4 (const uint) 5280:73 Constant: 5290:73 0 (const int) 5300:74 Sequence 5310:74 move second child to first child ( temp highp 4-component vector of float) 5320:74 'v4' ( temp highp 4-component vector of float) 5330:74 add ( temp highp 4-component vector of float) 5340:74 add ( temp highp 4-component vector of float) 5350:74 add ( temp highp 4-component vector of float) 5360:74 add ( temp highp 4-component vector of float) 5370:74 add ( temp highp 4-component vector of float) 5380:74 add ( temp highp 4-component vector of float) 5390:74 add ( temp highp 4-component vector of float) 5400:74 a: direct index for structure ( uniform highp 4-component vector of float) 5410: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}) 5420:74 Constant: 5430:74 0 (const uint) 5440:74 direct index ( temp highp 4-component vector of float) 5450:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float) 5460: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}) 5470:74 Constant: 5480:74 3 (const uint) 5490:74 Constant: 5500:74 0 (const int) 5510:74 direct index ( temp highp 4-component vector of float) 5520:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float) 5530: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}) 5540:74 Constant: 5550:74 3 (const uint) 5560:74 Constant: 5570:74 1 (const int) 5580:74 direct index ( temp highp 4-component vector of float) 5590:74 d: direct index for structure ( uniform 10-element array of highp 4-component vector of float) 5600: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}) 5610:74 Constant: 5620:74 3 (const uint) 5630:74 Constant: 5640:74 2 (const int) 5650:74 k: direct index for structure (layout( column_major std140) uniform highp 4-component vector of float) 5660: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}) 5670:74 Constant: 5680:74 1 (const uint) 5690:74 k: direct index for structure (layout( column_major std430) buffer highp 4-component vector of float) 5700: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}) 5710:74 Constant: 5720:74 1 (const int) 5730:74 texture ( global highp 4-component vector of float) 5740:74 't1' ( uniform highp sampler2D) 5750:74 Constant: 5760:74 0.000000 5770:74 0.000000 5780:74 texture ( global highp 4-component vector of float) 5790:? 'structUniform.t0' ( uniform highp sampler2D) 5800:74 Constant: 5810:74 0.000000 5820:74 0.000000 5830:75 Branch: Return with expression 5840:75 component-wise multiply ( temp highp 4-component vector of float) 5850:75 component-wise multiply ( temp highp 4-component vector of float) 5860:75 Construct vec4 ( temp highp 4-component vector of float) 5870:75 'f' ( temp highp float) 5880:75 Construct vec4 ( temp highp 4-component vector of float) 5890:75 'v2' ( temp highp 2-component vector of float) 5900:75 Constant: 5910:75 1.000000 5920:75 Constant: 5930:75 1.000000 5940:75 'v4' ( temp highp 4-component vector of float) 5950:78 Function Definition: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float) 5960:78 Function Parameters: 5970:78 'samplers' ( in structure{ global 4-element array of highp int /*tn*/}) 5980:78 'samplers.tn[0]' ( in highp sampler2D) 5990:78 'samplers.tn[1]' ( in highp sampler2D) 6000:78 'samplers.tn[2]' ( in highp sampler2D) 6010:78 'samplers.tn[3]' ( in highp sampler2D) 6020:79 Sequence 6030:79 Branch: Return with expression 6040:79 add ( temp highp 4-component vector of float) 6050:79 add ( temp highp 4-component vector of float) 6060:79 add ( temp highp 4-component vector of float) 6070:79 texture ( global highp 4-component vector of float) 6080:79 'samplers.tn[0]' ( in highp sampler2D) 6090:79 Constant: 6100:79 0.000000 6110:79 0.000000 6120:79 texture ( global highp 4-component vector of float) 6130:79 'samplers.tn[1]' ( in highp sampler2D) 6140:79 Constant: 6150:79 0.000000 6160:79 0.000000 6170:79 texture ( global highp 4-component vector of float) 6180:79 'samplers.tn[2]' ( in highp sampler2D) 6190:79 Constant: 6200:79 0.000000 6210:79 0.000000 6220:79 texture ( global highp 4-component vector of float) 6230:79 'samplers.tn[3]' ( in highp sampler2D) 6240:79 Constant: 6250:79 0.000000 6260:79 0.000000 6270:82 Function Definition: main( ( global void) 6280:82 Function Parameters: 6290:83 Sequence 6300:83 Sequence 6310:83 move second child to first child ( temp highp float) 6320:83 'j' ( temp highp float) 6330:83 Convert uint to float ( temp highp float) 6340:83 Function Call: bar( ( global highp uint) 6350:84 move second child to first child ( temp highp 4-component vector of float) 6360:84 'o' ( out highp 4-component vector of float) 6370:84 add ( temp highp 4-component vector of float) 6380:84 vector-scale ( temp highp 4-component vector of float) 6390:84 'j' ( temp highp float) 6400:84 Function Call: foo( ( global highp 4-component vector of float) 6410:84 Function Call: baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21; ( global highp 4-component vector of float) 6420:84 samplers: direct index for structure ( global structure{ global 4-element array of highp int /*tn*/}) 6430: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}) 6440: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}) 6450:84 Constant: 6460:84 4 (const uint) 6470:84 Constant: 6480:84 4 (const int) 6490:84 'structUniform.samplers.tn[0]' ( uniform highp sampler2D) 6500:84 'structUniform.samplers.tn[1]' ( uniform highp sampler2D) 6510:84 'structUniform.samplers.tn[2]' ( uniform highp sampler2D) 6520:84 'structUniform.samplers.tn[3]' ( uniform highp sampler2D) 6530:? Linker Objects 6540:? 'o' ( out highp 4-component vector of float) 6550:? '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}) 6560:? 'structUniform.t0' ( uniform highp sampler2D) 6570:? 'structUniform.samplers.tn[0]' ( uniform highp sampler2D) 6580:? 'structUniform.samplers.tn[1]' ( uniform highp sampler2D) 6590:? 'structUniform.samplers.tn[2]' ( uniform highp sampler2D) 6600:? 'structUniform.samplers.tn[3]' ( uniform highp sampler2D) 6610:? 't1' ( uniform highp sampler2D) 6620:? '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}) 6630:? '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}) 6640:? 'anon@2' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter1, coherent volatile buffer highp uint counter2}) 6650:? 'anon@3' (layout( column_major std430) buffer block{ coherent volatile buffer highp uint counter3}) 666 667// Module Version 10000 668// Generated by (magic number): 8000b 669// Id's are bound by 216 670 671 Capability Shader 672 1: ExtInstImport "GLSL.std.450" 673 MemoryModel Logical GLSL450 674 EntryPoint Fragment 4 "main" 190 675 ExecutionMode 4 OriginUpperLeft 676 Source GLSL 460 677 Name 4 "main" 678 Name 8 "bar(" 679 Name 13 "foo(" 680 Name 18 "SamplerArray" 681 MemberName 18(SamplerArray) 0 "/*tn*/" 682 Name 29 "baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21;" 683 Name 24 "samplers" 684 Name 25 "samplers.tn[0]" 685 Name 26 "samplers.tn[1]" 686 Name 27 "samplers.tn[2]" 687 Name 28 "samplers.tn[3]" 688 Name 32 "j" 689 Name 34 "gl_AtomicCounterBlock_0" 690 MemberName 34(gl_AtomicCounterBlock_0) 0 "counter1" 691 MemberName 34(gl_AtomicCounterBlock_0) 1 "counter2" 692 Name 36 "" 693 Name 78 "gl_AtomicCounterBlock_1" 694 MemberName 78(gl_AtomicCounterBlock_1) 0 "counter3" 695 Name 80 "" 696 Name 88 "f" 697 Name 89 "UniformBlock" 698 MemberName 89(UniformBlock) 0 "j" 699 MemberName 89(UniformBlock) 1 "k" 700 Name 91 "" 701 Name 95 "BufferBlock" 702 MemberName 95(BufferBlock) 0 "j" 703 MemberName 95(BufferBlock) 1 "k" 704 Name 97 "bufferInstance" 705 Name 105 "SamplerArray" 706 MemberName 105(SamplerArray) 0 "/*tn*/" 707 Name 106 "e" 708 MemberName 106(e) 0 "x" 709 MemberName 106(e) 1 "y" 710 MemberName 106(e) 2 "z" 711 MemberName 106(e) 3 "/*t0*/" 712 MemberName 106(e) 4 "samplers" 713 Name 107 "gl_DefaultUniformBlock" 714 MemberName 107(gl_DefaultUniformBlock) 0 "a" 715 MemberName 107(gl_DefaultUniformBlock) 1 "b" 716 MemberName 107(gl_DefaultUniformBlock) 2 "c" 717 MemberName 107(gl_DefaultUniformBlock) 3 "d" 718 MemberName 107(gl_DefaultUniformBlock) 4 "structUniform" 719 Name 109 "" 720 Name 120 "v2" 721 Name 131 "v4" 722 Name 151 "t1" 723 Name 157 "structUniform.t0" 724 Name 186 "j" 725 Name 190 "o" 726 Name 194 "structUniform.samplers.tn[0]" 727 Name 195 "structUniform.samplers.tn[1]" 728 Name 196 "structUniform.samplers.tn[2]" 729 Name 197 "structUniform.samplers.tn[3]" 730 Name 198 "param" 731 Decorate 34(gl_AtomicCounterBlock_0) BufferBlock 732 MemberDecorate 34(gl_AtomicCounterBlock_0) 0 Volatile 733 MemberDecorate 34(gl_AtomicCounterBlock_0) 0 Coherent 734 MemberDecorate 34(gl_AtomicCounterBlock_0) 0 Offset 0 735 MemberDecorate 34(gl_AtomicCounterBlock_0) 1 Volatile 736 MemberDecorate 34(gl_AtomicCounterBlock_0) 1 Coherent 737 MemberDecorate 34(gl_AtomicCounterBlock_0) 1 Offset 4 738 Decorate 36 Binding 9 739 Decorate 36 DescriptorSet 0 740 Decorate 78(gl_AtomicCounterBlock_1) BufferBlock 741 MemberDecorate 78(gl_AtomicCounterBlock_1) 0 Volatile 742 MemberDecorate 78(gl_AtomicCounterBlock_1) 0 Coherent 743 MemberDecorate 78(gl_AtomicCounterBlock_1) 0 Offset 0 744 Decorate 80 Binding 10 745 Decorate 80 DescriptorSet 0 746 Decorate 89(UniformBlock) Block 747 MemberDecorate 89(UniformBlock) 0 Offset 0 748 MemberDecorate 89(UniformBlock) 1 Offset 16 749 Decorate 91 Binding 7 750 Decorate 91 DescriptorSet 0 751 Decorate 95(BufferBlock) BufferBlock 752 MemberDecorate 95(BufferBlock) 0 Offset 0 753 MemberDecorate 95(BufferBlock) 1 Offset 16 754 Decorate 97(bufferInstance) Binding 8 755 Decorate 97(bufferInstance) DescriptorSet 0 756 Decorate 103 ArrayStride 16 757 Decorate 104 ArrayStride 16 758 MemberDecorate 105(SamplerArray) 0 Offset 0 759 MemberDecorate 106(e) 0 Offset 0 760 MemberDecorate 106(e) 1 Offset 8 761 MemberDecorate 106(e) 2 Offset 12 762 MemberDecorate 106(e) 3 Offset 16 763 MemberDecorate 106(e) 4 Offset 32 764 Decorate 107(gl_DefaultUniformBlock) Block 765 MemberDecorate 107(gl_DefaultUniformBlock) 0 Offset 0 766 MemberDecorate 107(gl_DefaultUniformBlock) 1 Offset 16 767 MemberDecorate 107(gl_DefaultUniformBlock) 2 Offset 24 768 MemberDecorate 107(gl_DefaultUniformBlock) 3 Offset 32 769 MemberDecorate 107(gl_DefaultUniformBlock) 4 Offset 192 770 Decorate 109 Binding 0 771 Decorate 109 DescriptorSet 0 772 Decorate 151(t1) Binding 6 773 Decorate 151(t1) DescriptorSet 0 774 Decorate 157(structUniform.t0) Binding 1 775 Decorate 157(structUniform.t0) DescriptorSet 0 776 Decorate 190(o) Location 0 777 Decorate 194(structUniform.samplers.tn[0]) Binding 2 778 Decorate 194(structUniform.samplers.tn[0]) DescriptorSet 0 779 Decorate 195(structUniform.samplers.tn[1]) Binding 3 780 Decorate 195(structUniform.samplers.tn[1]) DescriptorSet 0 781 Decorate 196(structUniform.samplers.tn[2]) Binding 4 782 Decorate 196(structUniform.samplers.tn[2]) DescriptorSet 0 783 Decorate 197(structUniform.samplers.tn[3]) Binding 5 784 Decorate 197(structUniform.samplers.tn[3]) DescriptorSet 0 785 2: TypeVoid 786 3: TypeFunction 2 787 6: TypeInt 32 0 788 7: TypeFunction 6(int) 789 10: TypeFloat 32 790 11: TypeVector 10(float) 4 791 12: TypeFunction 11(fvec4) 792 15: TypeInt 32 1 793 16: 6(int) Constant 4 794 17: TypeArray 15(int) 16 79518(SamplerArray): TypeStruct 17 796 19: TypePointer Function 18(SamplerArray) 797 20: TypeImage 10(float) 2D sampled format:Unknown 798 21: TypeSampledImage 20 799 22: TypePointer UniformConstant 21 800 23: TypeFunction 11(fvec4) 19(ptr) 22(ptr) 22(ptr) 22(ptr) 22(ptr) 801 31: TypePointer Function 6(int) 802 33: 6(int) Constant 0 80334(gl_AtomicCounterBlock_0): TypeStruct 6(int) 6(int) 804 35: TypePointer Uniform 34(gl_AtomicCounterBlock_0) 805 36: 35(ptr) Variable Uniform 806 37: 15(int) Constant 0 807 38: TypePointer Uniform 6(int) 808 40: 6(int) Constant 1 809 43: 6(int) Constant 4294967295 810 75: 15(int) Constant 1 81178(gl_AtomicCounterBlock_1): TypeStruct 6(int) 812 79: TypePointer Uniform 78(gl_AtomicCounterBlock_1) 813 80: 79(ptr) Variable Uniform 814 83: 6(int) Constant 72 815 87: TypePointer Function 10(float) 81689(UniformBlock): TypeStruct 10(float) 11(fvec4) 817 90: TypePointer Uniform 89(UniformBlock) 818 91: 90(ptr) Variable Uniform 819 92: TypePointer Uniform 10(float) 820 95(BufferBlock): TypeStruct 10(float) 11(fvec4) 821 96: TypePointer Uniform 95(BufferBlock) 82297(bufferInstance): 96(ptr) Variable Uniform 823 101: TypeVector 10(float) 2 824 102: 6(int) Constant 10 825 103: TypeArray 11(fvec4) 102 826 104: TypeArray 15(int) 16 827105(SamplerArray): TypeStruct 104 828 106(e): TypeStruct 101(fvec2) 10(float) 6(int) 15(int) 105(SamplerArray) 829107(gl_DefaultUniformBlock): TypeStruct 11(fvec4) 101(fvec2) 101(fvec2) 103 106(e) 830 108: TypePointer Uniform 107(gl_DefaultUniformBlock) 831 109: 108(ptr) Variable Uniform 832 110: 15(int) Constant 4 833 114: 15(int) Constant 2 834 119: TypePointer Function 101(fvec2) 835 121: TypePointer Uniform 101(fvec2) 836 130: TypePointer Function 11(fvec4) 837 132: TypePointer Uniform 11(fvec4) 838 135: 15(int) Constant 3 839 151(t1): 22(ptr) Variable UniformConstant 840 153: 10(float) Constant 0 841 154: 101(fvec2) ConstantComposite 153 153 842157(structUniform.t0): 22(ptr) Variable UniformConstant 843 164: 10(float) Constant 1065353216 844 189: TypePointer Output 11(fvec4) 845 190(o): 189(ptr) Variable Output 846194(structUniform.samplers.tn[0]): 22(ptr) Variable UniformConstant 847195(structUniform.samplers.tn[1]): 22(ptr) Variable UniformConstant 848196(structUniform.samplers.tn[2]): 22(ptr) Variable UniformConstant 849197(structUniform.samplers.tn[3]): 22(ptr) Variable UniformConstant 850 199: TypePointer Uniform 105(SamplerArray) 851 203: TypePointer Function 17 852 206: TypePointer Function 15(int) 853 4(main): 2 Function None 3 854 5: Label 855 186(j): 87(ptr) Variable Function 856 198(param): 19(ptr) Variable Function 857 187: 6(int) FunctionCall 8(bar() 858 188: 10(float) ConvertUToF 187 859 Store 186(j) 188 860 191: 10(float) Load 186(j) 861 192: 11(fvec4) FunctionCall 13(foo() 862 193: 11(fvec4) VectorTimesScalar 192 191 863 200: 199(ptr) AccessChain 109 110 110 864 201:105(SamplerArray) Load 200 865 202: 104 CompositeExtract 201 0 866 204: 203(ptr) AccessChain 198(param) 37 867 205: 15(int) CompositeExtract 202 0 868 207: 206(ptr) AccessChain 204 37 869 Store 207 205 870 208: 15(int) CompositeExtract 202 1 871 209: 206(ptr) AccessChain 204 75 872 Store 209 208 873 210: 15(int) CompositeExtract 202 2 874 211: 206(ptr) AccessChain 204 114 875 Store 211 210 876 212: 15(int) CompositeExtract 202 3 877 213: 206(ptr) AccessChain 204 135 878 Store 213 212 879 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]) 880 215: 11(fvec4) FAdd 193 214 881 Store 190(o) 215 882 Return 883 FunctionEnd 884 8(bar(): 6(int) Function None 7 885 9: Label 886 32(j): 31(ptr) Variable Function 887 Store 32(j) 33 888 39: 38(ptr) AccessChain 36 37 889 41: 6(int) AtomicIAdd 39 40 33 40 890 Store 32(j) 41 891 42: 38(ptr) AccessChain 36 37 892 44: 6(int) AtomicIAdd 42 40 33 43 893 45: 6(int) ISub 44 40 894 Store 32(j) 45 895 46: 38(ptr) AccessChain 36 37 896 47: 6(int) Load 46 897 Store 32(j) 47 898 48: 38(ptr) AccessChain 36 37 899 49: 6(int) AtomicIAdd 48 40 33 40 900 Store 32(j) 49 901 50: 38(ptr) AccessChain 36 37 902 51: 6(int) AtomicIAdd 50 40 33 43 903 Store 32(j) 51 904 52: 38(ptr) AccessChain 36 37 905 53: 6(int) AtomicISub 52 40 33 40 906 Store 32(j) 53 907 54: 38(ptr) AccessChain 36 37 908 55: 6(int) Load 32(j) 909 56: 6(int) AtomicUMin 54 40 33 55 910 Store 32(j) 56 911 57: 38(ptr) AccessChain 36 37 912 58: 6(int) Load 32(j) 913 59: 6(int) AtomicUMax 57 40 33 58 914 Store 32(j) 59 915 60: 38(ptr) AccessChain 36 37 916 61: 6(int) Load 32(j) 917 62: 6(int) AtomicAnd 60 40 33 61 918 Store 32(j) 62 919 63: 38(ptr) AccessChain 36 37 920 64: 6(int) Load 32(j) 921 65: 6(int) AtomicOr 63 40 33 64 922 Store 32(j) 65 923 66: 38(ptr) AccessChain 36 37 924 67: 6(int) Load 32(j) 925 68: 6(int) AtomicXor 66 40 33 67 926 Store 32(j) 68 927 69: 38(ptr) AccessChain 36 37 928 70: 6(int) Load 32(j) 929 71: 6(int) AtomicExchange 69 40 33 70 930 Store 32(j) 71 931 72: 38(ptr) AccessChain 36 37 932 73: 6(int) Load 32(j) 933 74: 6(int) AtomicCompareExchange 72 40 33 33 73 33 934 Store 32(j) 74 935 76: 38(ptr) AccessChain 36 75 936 77: 6(int) AtomicIAdd 76 40 33 40 937 81: 38(ptr) AccessChain 80 37 938 82: 6(int) AtomicIAdd 81 40 33 40 939 MemoryBarrier 40 83 940 84: 6(int) Load 32(j) 941 ReturnValue 84 942 FunctionEnd 943 13(foo(): 11(fvec4) Function None 12 944 14: Label 945 88(f): 87(ptr) Variable Function 946 120(v2): 119(ptr) Variable Function 947 131(v4): 130(ptr) Variable Function 948 93: 92(ptr) AccessChain 91 37 949 94: 10(float) Load 93 950 98: 92(ptr) AccessChain 97(bufferInstance) 37 951 99: 10(float) Load 98 952 100: 10(float) FAdd 94 99 953 111: 92(ptr) AccessChain 109 110 75 954 112: 10(float) Load 111 955 113: 10(float) FAdd 100 112 956 115: 38(ptr) AccessChain 109 110 114 957 116: 6(int) Load 115 958 117: 10(float) ConvertUToF 116 959 118: 10(float) FAdd 113 117 960 Store 88(f) 118 961 122: 121(ptr) AccessChain 109 75 962 123: 101(fvec2) Load 122 963 124: 121(ptr) AccessChain 109 114 964 125: 101(fvec2) Load 124 965 126: 101(fvec2) FAdd 123 125 966 127: 121(ptr) AccessChain 109 110 37 967 128: 101(fvec2) Load 127 968 129: 101(fvec2) FAdd 126 128 969 Store 120(v2) 129 970 133: 132(ptr) AccessChain 109 37 971 134: 11(fvec4) Load 133 972 136: 132(ptr) AccessChain 109 135 37 973 137: 11(fvec4) Load 136 974 138: 11(fvec4) FAdd 134 137 975 139: 132(ptr) AccessChain 109 135 75 976 140: 11(fvec4) Load 139 977 141: 11(fvec4) FAdd 138 140 978 142: 132(ptr) AccessChain 109 135 114 979 143: 11(fvec4) Load 142 980 144: 11(fvec4) FAdd 141 143 981 145: 132(ptr) AccessChain 91 75 982 146: 11(fvec4) Load 145 983 147: 11(fvec4) FAdd 144 146 984 148: 132(ptr) AccessChain 97(bufferInstance) 75 985 149: 11(fvec4) Load 148 986 150: 11(fvec4) FAdd 147 149 987 152: 21 Load 151(t1) 988 155: 11(fvec4) ImageSampleImplicitLod 152 154 989 156: 11(fvec4) FAdd 150 155 990 158: 21 Load 157(structUniform.t0) 991 159: 11(fvec4) ImageSampleImplicitLod 158 154 992 160: 11(fvec4) FAdd 156 159 993 Store 131(v4) 160 994 161: 10(float) Load 88(f) 995 162: 11(fvec4) CompositeConstruct 161 161 161 161 996 163: 101(fvec2) Load 120(v2) 997 165: 10(float) CompositeExtract 163 0 998 166: 10(float) CompositeExtract 163 1 999 167: 11(fvec4) CompositeConstruct 165 166 164 164 1000 168: 11(fvec4) FMul 162 167 1001 169: 11(fvec4) Load 131(v4) 1002 170: 11(fvec4) FMul 168 169 1003 ReturnValue 170 1004 FunctionEnd 100529(baz(struct-SamplerArray-s21[4]1;s21;s21;s21;s21;): 11(fvec4) Function None 23 1006 24(samplers): 19(ptr) FunctionParameter 100725(samplers.tn[0]): 22(ptr) FunctionParameter 100826(samplers.tn[1]): 22(ptr) FunctionParameter 100927(samplers.tn[2]): 22(ptr) FunctionParameter 101028(samplers.tn[3]): 22(ptr) FunctionParameter 1011 30: Label 1012 173: 21 Load 25(samplers.tn[0]) 1013 174: 11(fvec4) ImageSampleImplicitLod 173 154 1014 175: 21 Load 26(samplers.tn[1]) 1015 176: 11(fvec4) ImageSampleImplicitLod 175 154 1016 177: 11(fvec4) FAdd 174 176 1017 178: 21 Load 27(samplers.tn[2]) 1018 179: 11(fvec4) ImageSampleImplicitLod 178 154 1019 180: 11(fvec4) FAdd 177 179 1020 181: 21 Load 28(samplers.tn[3]) 1021 182: 11(fvec4) ImageSampleImplicitLod 181 154 1022 183: 11(fvec4) FAdd 180 182 1023 ReturnValue 183 1024 FunctionEnd