hlsl.rw.atomics.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:45  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
0:45    Function Parameters: 
0:?     Sequence
0:50      imageAtomicAdd ( temp int)
0:50        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:50        i1: direct index for structure ( uniform int)
0:50          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:50          Constant:
0:50            5 (const uint)
0:50        i1b: direct index for structure ( uniform int)
0:50          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:50          Constant:
0:50            8 (const uint)
0:51      move second child to first child ( temp int)
0:51        'out_i1' ( temp int)
0:51        imageAtomicAdd ( temp int)
0:51          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:51          i1: direct index for structure ( uniform int)
0:51            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:51            Constant:
0:51              5 (const uint)
0:51          i1: direct index for structure ( uniform int)
0:51            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:51            Constant:
0:51              5 (const uint)
0:52      imageAtomicAnd ( temp int)
0:52        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:52        i1: direct index for structure ( uniform int)
0:52          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:52          Constant:
0:52            5 (const uint)
0:52        i1b: direct index for structure ( uniform int)
0:52          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:52          Constant:
0:52            8 (const uint)
0:53      move second child to first child ( temp int)
0:53        'out_i1' ( temp int)
0:53        imageAtomicAnd ( temp int)
0:53          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:53          i1: direct index for structure ( uniform int)
0:53            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:53            Constant:
0:53              5 (const uint)
0:53          i1: direct index for structure ( uniform int)
0:53            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:53            Constant:
0:53              5 (const uint)
0:54      move second child to first child ( temp int)
0:54        'out_i1' ( temp int)
0:54        imageAtomicCompSwap ( temp int)
0:54          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:54          i1: direct index for structure ( uniform int)
0:54            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:54            Constant:
0:54              5 (const uint)
0:54          i1b: direct index for structure ( uniform int)
0:54            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:54            Constant:
0:54              8 (const uint)
0:54          i1c: direct index for structure ( uniform int)
0:54            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:54            Constant:
0:54              9 (const uint)
0:55      move second child to first child ( temp int)
0:55        'out_i1' ( temp int)
0:55        imageAtomicExchange ( temp int)
0:55          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:55          i1: direct index for structure ( uniform int)
0:55            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:55            Constant:
0:55              5 (const uint)
0:55          i1: direct index for structure ( uniform int)
0:55            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:55            Constant:
0:55              5 (const uint)
0:56      imageAtomicMax ( temp int)
0:56        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:56        i1: direct index for structure ( uniform int)
0:56          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:56          Constant:
0:56            5 (const uint)
0:56        i1b: direct index for structure ( uniform int)
0:56          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:56          Constant:
0:56            8 (const uint)
0:57      move second child to first child ( temp int)
0:57        'out_i1' ( temp int)
0:57        imageAtomicMax ( temp int)
0:57          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:57          i1: direct index for structure ( uniform int)
0:57            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:57            Constant:
0:57              5 (const uint)
0:57          i1: direct index for structure ( uniform int)
0:57            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:57            Constant:
0:57              5 (const uint)
0:58      imageAtomicMin ( temp int)
0:58        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:58        i1: direct index for structure ( uniform int)
0:58          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:58          Constant:
0:58            5 (const uint)
0:58        i1b: direct index for structure ( uniform int)
0:58          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:58          Constant:
0:58            8 (const uint)
0:59      move second child to first child ( temp int)
0:59        'out_i1' ( temp int)
0:59        imageAtomicMin ( temp int)
0:59          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:59          i1: direct index for structure ( uniform int)
0:59            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:59            Constant:
0:59              5 (const uint)
0:59          i1: direct index for structure ( uniform int)
0:59            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:59            Constant:
0:59              5 (const uint)
0:60      imageAtomicOr ( temp int)
0:60        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:60        i1: direct index for structure ( uniform int)
0:60          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:60          Constant:
0:60            5 (const uint)
0:60        i1b: direct index for structure ( uniform int)
0:60          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:60          Constant:
0:60            8 (const uint)
0:61      move second child to first child ( temp int)
0:61        'out_i1' ( temp int)
0:61        imageAtomicOr ( temp int)
0:61          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:61          i1: direct index for structure ( uniform int)
0:61            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:61            Constant:
0:61              5 (const uint)
0:61          i1: direct index for structure ( uniform int)
0:61            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:61            Constant:
0:61              5 (const uint)
0:62      imageAtomicXor ( temp int)
0:62        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:62        i1: direct index for structure ( uniform int)
0:62          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:62          Constant:
0:62            5 (const uint)
0:62        i1b: direct index for structure ( uniform int)
0:62          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:62          Constant:
0:62            8 (const uint)
0:63      move second child to first child ( temp int)
0:63        'out_i1' ( temp int)
0:63        imageAtomicXor ( temp int)
0:63          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:63          i1: direct index for structure ( uniform int)
0:63            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:63            Constant:
0:63              5 (const uint)
0:63          i1: direct index for structure ( uniform int)
0:63            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:63            Constant:
0:63              5 (const uint)
0:66      imageAtomicAdd ( temp uint)
0:66        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:66        u1: direct index for structure ( uniform uint)
0:66          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:66          Constant:
0:66            0 (const uint)
0:66        u1: direct index for structure ( uniform uint)
0:66          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:66          Constant:
0:66            0 (const uint)
0:67      move second child to first child ( temp uint)
0:67        'out_u1' ( temp uint)
0:67        imageAtomicAdd ( temp uint)
0:67          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:67          u1: direct index for structure ( uniform uint)
0:67            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:67            Constant:
0:67              0 (const uint)
0:67          u1: direct index for structure ( uniform uint)
0:67            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:67            Constant:
0:67              0 (const uint)
0:68      imageAtomicAnd ( temp uint)
0:68        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:68        u1: direct index for structure ( uniform uint)
0:68          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:68          Constant:
0:68            0 (const uint)
0:68        u1: direct index for structure ( uniform uint)
0:68          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:68          Constant:
0:68            0 (const uint)
0:69      move second child to first child ( temp uint)
0:69        'out_u1' ( temp uint)
0:69        imageAtomicAnd ( temp uint)
0:69          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:69          u1: direct index for structure ( uniform uint)
0:69            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:69            Constant:
0:69              0 (const uint)
0:69          u1: direct index for structure ( uniform uint)
0:69            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:69            Constant:
0:69              0 (const uint)
0:70      move second child to first child ( temp uint)
0:70        'out_u1' ( temp uint)
0:70        imageAtomicCompSwap ( temp uint)
0:70          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:70          u1: direct index for structure ( uniform uint)
0:70            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:70            Constant:
0:70              0 (const uint)
0:70          u1b: direct index for structure ( uniform uint)
0:70            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:70            Constant:
0:70              3 (const uint)
0:70          u1c: direct index for structure ( uniform uint)
0:70            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:70            Constant:
0:70              4 (const uint)
0:71      move second child to first child ( temp uint)
0:71        'out_u1' ( temp uint)
0:71        imageAtomicExchange ( temp uint)
0:71          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:71          u1: direct index for structure ( uniform uint)
0:71            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:71            Constant:
0:71              0 (const uint)
0:71          u1: direct index for structure ( uniform uint)
0:71            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:71            Constant:
0:71              0 (const uint)
0:72      imageAtomicMax ( temp uint)
0:72        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:72        u1: direct index for structure ( uniform uint)
0:72          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:72          Constant:
0:72            0 (const uint)
0:72        u1: direct index for structure ( uniform uint)
0:72          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:72          Constant:
0:72            0 (const uint)
0:73      move second child to first child ( temp uint)
0:73        'out_u1' ( temp uint)
0:73        imageAtomicMax ( temp uint)
0:73          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:73          u1: direct index for structure ( uniform uint)
0:73            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:73            Constant:
0:73              0 (const uint)
0:73          u1: direct index for structure ( uniform uint)
0:73            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:73            Constant:
0:73              0 (const uint)
0:74      imageAtomicMin ( temp uint)
0:74        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:74        u1: direct index for structure ( uniform uint)
0:74          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:74          Constant:
0:74            0 (const uint)
0:74        u1: direct index for structure ( uniform uint)
0:74          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:74          Constant:
0:74            0 (const uint)
0:75      move second child to first child ( temp uint)
0:75        'out_u1' ( temp uint)
0:75        imageAtomicMin ( temp uint)
0:75          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:75          u1: direct index for structure ( uniform uint)
0:75            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:75            Constant:
0:75              0 (const uint)
0:75          u1: direct index for structure ( uniform uint)
0:75            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:75            Constant:
0:75              0 (const uint)
0:76      imageAtomicOr ( temp uint)
0:76        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:76        u1: direct index for structure ( uniform uint)
0:76          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:76          Constant:
0:76            0 (const uint)
0:76        u1: direct index for structure ( uniform uint)
0:76          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:76          Constant:
0:76            0 (const uint)
0:77      move second child to first child ( temp uint)
0:77        'out_u1' ( temp uint)
0:77        imageAtomicOr ( temp uint)
0:77          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:77          u1: direct index for structure ( uniform uint)
0:77            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:77            Constant:
0:77              0 (const uint)
0:77          u1: direct index for structure ( uniform uint)
0:77            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:77            Constant:
0:77              0 (const uint)
0:78      imageAtomicXor ( temp uint)
0:78        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:78        u1: direct index for structure ( uniform uint)
0:78          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:78          Constant:
0:78            0 (const uint)
0:78        u1: direct index for structure ( uniform uint)
0:78          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:78          Constant:
0:78            0 (const uint)
0:79      move second child to first child ( temp uint)
0:79        'out_u1' ( temp uint)
0:79        imageAtomicXor ( temp uint)
0:79          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:79          u1: direct index for structure ( uniform uint)
0:79            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:79            Constant:
0:79              0 (const uint)
0:79          u1: direct index for structure ( uniform uint)
0:79            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:79            Constant:
0:79              0 (const uint)
0:82      imageAtomicAdd ( temp int)
0:82        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:82        i2: direct index for structure ( uniform 2-component vector of int)
0:82          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:82          Constant:
0:82            6 (const uint)
0:82        i1b: direct index for structure ( uniform int)
0:82          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:82          Constant:
0:82            8 (const uint)
0:83      move second child to first child ( temp int)
0:83        'out_i1' ( temp int)
0:83        imageAtomicAdd ( temp int)
0:83          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:83          i2: direct index for structure ( uniform 2-component vector of int)
0:83            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:83            Constant:
0:83              6 (const uint)
0:83          i1: direct index for structure ( uniform int)
0:83            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:83            Constant:
0:83              5 (const uint)
0:84      imageAtomicAnd ( temp int)
0:84        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:84        i2: direct index for structure ( uniform 2-component vector of int)
0:84          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:84          Constant:
0:84            6 (const uint)
0:84        i1b: direct index for structure ( uniform int)
0:84          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:84          Constant:
0:84            8 (const uint)
0:85      move second child to first child ( temp int)
0:85        'out_i1' ( temp int)
0:85        imageAtomicAnd ( temp int)
0:85          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:85          i2: direct index for structure ( uniform 2-component vector of int)
0:85            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:85            Constant:
0:85              6 (const uint)
0:85          i1: direct index for structure ( uniform int)
0:85            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:85            Constant:
0:85              5 (const uint)
0:86      move second child to first child ( temp int)
0:86        'out_i1' ( temp int)
0:86        imageAtomicCompSwap ( temp int)
0:86          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:86          i2: direct index for structure ( uniform 2-component vector of int)
0:86            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:86            Constant:
0:86              6 (const uint)
0:86          i1b: direct index for structure ( uniform int)
0:86            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:86            Constant:
0:86              8 (const uint)
0:86          i1c: direct index for structure ( uniform int)
0:86            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:86            Constant:
0:86              9 (const uint)
0:87      move second child to first child ( temp int)
0:87        'out_i1' ( temp int)
0:87        imageAtomicExchange ( temp int)
0:87          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:87          i2: direct index for structure ( uniform 2-component vector of int)
0:87            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:87            Constant:
0:87              6 (const uint)
0:87          i1: direct index for structure ( uniform int)
0:87            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:87            Constant:
0:87              5 (const uint)
0:88      imageAtomicMax ( temp int)
0:88        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:88        i2: direct index for structure ( uniform 2-component vector of int)
0:88          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:88          Constant:
0:88            6 (const uint)
0:88        i1b: direct index for structure ( uniform int)
0:88          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:88          Constant:
0:88            8 (const uint)
0:89      move second child to first child ( temp int)
0:89        'out_i1' ( temp int)
0:89        imageAtomicMax ( temp int)
0:89          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:89          i2: direct index for structure ( uniform 2-component vector of int)
0:89            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:89            Constant:
0:89              6 (const uint)
0:89          i1: direct index for structure ( uniform int)
0:89            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:89            Constant:
0:89              5 (const uint)
0:90      imageAtomicMin ( temp int)
0:90        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:90        i2: direct index for structure ( uniform 2-component vector of int)
0:90          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:90          Constant:
0:90            6 (const uint)
0:90        i1b: direct index for structure ( uniform int)
0:90          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:90          Constant:
0:90            8 (const uint)
0:91      move second child to first child ( temp int)
0:91        'out_i1' ( temp int)
0:91        imageAtomicMin ( temp int)
0:91          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:91          i2: direct index for structure ( uniform 2-component vector of int)
0:91            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:91            Constant:
0:91              6 (const uint)
0:91          i1: direct index for structure ( uniform int)
0:91            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:91            Constant:
0:91              5 (const uint)
0:92      imageAtomicOr ( temp int)
0:92        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:92        i2: direct index for structure ( uniform 2-component vector of int)
0:92          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:92          Constant:
0:92            6 (const uint)
0:92        i1b: direct index for structure ( uniform int)
0:92          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:92          Constant:
0:92            8 (const uint)
0:93      move second child to first child ( temp int)
0:93        'out_i1' ( temp int)
0:93        imageAtomicOr ( temp int)
0:93          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:93          i2: direct index for structure ( uniform 2-component vector of int)
0:93            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:93            Constant:
0:93              6 (const uint)
0:93          i1: direct index for structure ( uniform int)
0:93            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:93            Constant:
0:93              5 (const uint)
0:94      imageAtomicXor ( temp int)
0:94        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:94        i2: direct index for structure ( uniform 2-component vector of int)
0:94          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:94          Constant:
0:94            6 (const uint)
0:94        i1b: direct index for structure ( uniform int)
0:94          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:94          Constant:
0:94            8 (const uint)
0:95      move second child to first child ( temp int)
0:95        'out_i1' ( temp int)
0:95        imageAtomicXor ( temp int)
0:95          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:95          i2: direct index for structure ( uniform 2-component vector of int)
0:95            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:95            Constant:
0:95              6 (const uint)
0:95          i1: direct index for structure ( uniform int)
0:95            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:95            Constant:
0:95              5 (const uint)
0:98      imageAtomicAdd ( temp uint)
0:98        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:98        u2: direct index for structure ( uniform 2-component vector of uint)
0:98          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:98          Constant:
0:98            1 (const uint)
0:98        u1: direct index for structure ( uniform uint)
0:98          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:98          Constant:
0:98            0 (const uint)
0:99      move second child to first child ( temp uint)
0:99        'out_u1' ( temp uint)
0:99        imageAtomicAdd ( temp uint)
0:99          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:99          u2: direct index for structure ( uniform 2-component vector of uint)
0:99            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:99            Constant:
0:99              1 (const uint)
0:99          u1: direct index for structure ( uniform uint)
0:99            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:99            Constant:
0:99              0 (const uint)
0:100      imageAtomicAnd ( temp uint)
0:100        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:100        u2: direct index for structure ( uniform 2-component vector of uint)
0:100          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:100          Constant:
0:100            1 (const uint)
0:100        u1: direct index for structure ( uniform uint)
0:100          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:100          Constant:
0:100            0 (const uint)
0:101      move second child to first child ( temp uint)
0:101        'out_u1' ( temp uint)
0:101        imageAtomicAnd ( temp uint)
0:101          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:101          u2: direct index for structure ( uniform 2-component vector of uint)
0:101            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:101            Constant:
0:101              1 (const uint)
0:101          u1: direct index for structure ( uniform uint)
0:101            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:101            Constant:
0:101              0 (const uint)
0:102      move second child to first child ( temp uint)
0:102        'out_u1' ( temp uint)
0:102        imageAtomicCompSwap ( temp uint)
0:102          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:102          u2: direct index for structure ( uniform 2-component vector of uint)
0:102            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:102            Constant:
0:102              1 (const uint)
0:102          u1b: direct index for structure ( uniform uint)
0:102            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:102            Constant:
0:102              3 (const uint)
0:102          u1c: direct index for structure ( uniform uint)
0:102            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:102            Constant:
0:102              4 (const uint)
0:103      move second child to first child ( temp uint)
0:103        'out_u1' ( temp uint)
0:103        imageAtomicExchange ( temp uint)
0:103          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:103          u2: direct index for structure ( uniform 2-component vector of uint)
0:103            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:103            Constant:
0:103              1 (const uint)
0:103          u1: direct index for structure ( uniform uint)
0:103            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:103            Constant:
0:103              0 (const uint)
0:104      imageAtomicMax ( temp uint)
0:104        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:104        u2: direct index for structure ( uniform 2-component vector of uint)
0:104          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:104          Constant:
0:104            1 (const uint)
0:104        u1: direct index for structure ( uniform uint)
0:104          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:104          Constant:
0:104            0 (const uint)
0:105      move second child to first child ( temp uint)
0:105        'out_u1' ( temp uint)
0:105        imageAtomicMax ( temp uint)
0:105          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:105          u2: direct index for structure ( uniform 2-component vector of uint)
0:105            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:105            Constant:
0:105              1 (const uint)
0:105          u1: direct index for structure ( uniform uint)
0:105            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:105            Constant:
0:105              0 (const uint)
0:106      imageAtomicMin ( temp uint)
0:106        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:106        u2: direct index for structure ( uniform 2-component vector of uint)
0:106          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:106          Constant:
0:106            1 (const uint)
0:106        u1: direct index for structure ( uniform uint)
0:106          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:106          Constant:
0:106            0 (const uint)
0:107      move second child to first child ( temp uint)
0:107        'out_u1' ( temp uint)
0:107        imageAtomicMin ( temp uint)
0:107          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:107          u2: direct index for structure ( uniform 2-component vector of uint)
0:107            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:107            Constant:
0:107              1 (const uint)
0:107          u1: direct index for structure ( uniform uint)
0:107            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:107            Constant:
0:107              0 (const uint)
0:108      imageAtomicOr ( temp uint)
0:108        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:108        u2: direct index for structure ( uniform 2-component vector of uint)
0:108          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:108          Constant:
0:108            1 (const uint)
0:108        u1: direct index for structure ( uniform uint)
0:108          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:108          Constant:
0:108            0 (const uint)
0:109      move second child to first child ( temp uint)
0:109        'out_u1' ( temp uint)
0:109        imageAtomicOr ( temp uint)
0:109          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:109          u2: direct index for structure ( uniform 2-component vector of uint)
0:109            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:109            Constant:
0:109              1 (const uint)
0:109          u1: direct index for structure ( uniform uint)
0:109            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:109            Constant:
0:109              0 (const uint)
0:110      imageAtomicXor ( temp uint)
0:110        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:110        u2: direct index for structure ( uniform 2-component vector of uint)
0:110          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:110          Constant:
0:110            1 (const uint)
0:110        u1: direct index for structure ( uniform uint)
0:110          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:110          Constant:
0:110            0 (const uint)
0:111      move second child to first child ( temp uint)
0:111        'out_u1' ( temp uint)
0:111        imageAtomicXor ( temp uint)
0:111          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:111          u2: direct index for structure ( uniform 2-component vector of uint)
0:111            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:111            Constant:
0:111              1 (const uint)
0:111          u1: direct index for structure ( uniform uint)
0:111            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:111            Constant:
0:111              0 (const uint)
0:114      imageAtomicAdd ( temp int)
0:114        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:114        i3: direct index for structure ( uniform 3-component vector of int)
0:114          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:114          Constant:
0:114            7 (const uint)
0:114        i1b: direct index for structure ( uniform int)
0:114          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:114          Constant:
0:114            8 (const uint)
0:115      move second child to first child ( temp int)
0:115        'out_i1' ( temp int)
0:115        imageAtomicAdd ( temp int)
0:115          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:115          i3: direct index for structure ( uniform 3-component vector of int)
0:115            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:115            Constant:
0:115              7 (const uint)
0:115          i1: direct index for structure ( uniform int)
0:115            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:115            Constant:
0:115              5 (const uint)
0:116      imageAtomicAnd ( temp int)
0:116        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:116        i3: direct index for structure ( uniform 3-component vector of int)
0:116          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:116          Constant:
0:116            7 (const uint)
0:116        i1b: direct index for structure ( uniform int)
0:116          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:116          Constant:
0:116            8 (const uint)
0:117      move second child to first child ( temp int)
0:117        'out_i1' ( temp int)
0:117        imageAtomicAnd ( temp int)
0:117          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:117          i3: direct index for structure ( uniform 3-component vector of int)
0:117            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:117            Constant:
0:117              7 (const uint)
0:117          i1: direct index for structure ( uniform int)
0:117            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:117            Constant:
0:117              5 (const uint)
0:118      move second child to first child ( temp int)
0:118        'out_i1' ( temp int)
0:118        imageAtomicCompSwap ( temp int)
0:118          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:118          i3: direct index for structure ( uniform 3-component vector of int)
0:118            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:118            Constant:
0:118              7 (const uint)
0:118          i1b: direct index for structure ( uniform int)
0:118            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:118            Constant:
0:118              8 (const uint)
0:118          i1c: direct index for structure ( uniform int)
0:118            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:118            Constant:
0:118              9 (const uint)
0:119      move second child to first child ( temp int)
0:119        'out_i1' ( temp int)
0:119        imageAtomicExchange ( temp int)
0:119          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:119          i3: direct index for structure ( uniform 3-component vector of int)
0:119            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:119            Constant:
0:119              7 (const uint)
0:119          i1: direct index for structure ( uniform int)
0:119            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:119            Constant:
0:119              5 (const uint)
0:120      imageAtomicMax ( temp int)
0:120        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:120        i3: direct index for structure ( uniform 3-component vector of int)
0:120          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:120          Constant:
0:120            7 (const uint)
0:120        i1b: direct index for structure ( uniform int)
0:120          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:120          Constant:
0:120            8 (const uint)
0:121      move second child to first child ( temp int)
0:121        'out_i1' ( temp int)
0:121        imageAtomicMax ( temp int)
0:121          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:121          i3: direct index for structure ( uniform 3-component vector of int)
0:121            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:121            Constant:
0:121              7 (const uint)
0:121          i1: direct index for structure ( uniform int)
0:121            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:121            Constant:
0:121              5 (const uint)
0:122      imageAtomicMin ( temp int)
0:122        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:122        i3: direct index for structure ( uniform 3-component vector of int)
0:122          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:122          Constant:
0:122            7 (const uint)
0:122        i1b: direct index for structure ( uniform int)
0:122          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:122          Constant:
0:122            8 (const uint)
0:123      move second child to first child ( temp int)
0:123        'out_i1' ( temp int)
0:123        imageAtomicMin ( temp int)
0:123          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:123          i3: direct index for structure ( uniform 3-component vector of int)
0:123            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:123            Constant:
0:123              7 (const uint)
0:123          i1: direct index for structure ( uniform int)
0:123            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:123            Constant:
0:123              5 (const uint)
0:124      imageAtomicOr ( temp int)
0:124        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:124        i3: direct index for structure ( uniform 3-component vector of int)
0:124          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:124          Constant:
0:124            7 (const uint)
0:124        i1b: direct index for structure ( uniform int)
0:124          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:124          Constant:
0:124            8 (const uint)
0:125      move second child to first child ( temp int)
0:125        'out_i1' ( temp int)
0:125        imageAtomicOr ( temp int)
0:125          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:125          i3: direct index for structure ( uniform 3-component vector of int)
0:125            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:125            Constant:
0:125              7 (const uint)
0:125          i1: direct index for structure ( uniform int)
0:125            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:125            Constant:
0:125              5 (const uint)
0:126      imageAtomicXor ( temp int)
0:126        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:126        i3: direct index for structure ( uniform 3-component vector of int)
0:126          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:126          Constant:
0:126            7 (const uint)
0:126        i1b: direct index for structure ( uniform int)
0:126          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:126          Constant:
0:126            8 (const uint)
0:127      move second child to first child ( temp int)
0:127        'out_i1' ( temp int)
0:127        imageAtomicXor ( temp int)
0:127          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:127          i3: direct index for structure ( uniform 3-component vector of int)
0:127            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:127            Constant:
0:127              7 (const uint)
0:127          i1: direct index for structure ( uniform int)
0:127            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:127            Constant:
0:127              5 (const uint)
0:130      imageAtomicAdd ( temp uint)
0:130        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:130        u3: direct index for structure ( uniform 3-component vector of uint)
0:130          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:130          Constant:
0:130            2 (const uint)
0:130        u1: direct index for structure ( uniform uint)
0:130          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:130          Constant:
0:130            0 (const uint)
0:131      move second child to first child ( temp uint)
0:131        'out_u1' ( temp uint)
0:131        imageAtomicAdd ( temp uint)
0:131          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:131          u3: direct index for structure ( uniform 3-component vector of uint)
0:131            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:131            Constant:
0:131              2 (const uint)
0:131          u1: direct index for structure ( uniform uint)
0:131            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:131            Constant:
0:131              0 (const uint)
0:132      imageAtomicAnd ( temp uint)
0:132        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:132        u3: direct index for structure ( uniform 3-component vector of uint)
0:132          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:132          Constant:
0:132            2 (const uint)
0:132        u1: direct index for structure ( uniform uint)
0:132          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:132          Constant:
0:132            0 (const uint)
0:133      move second child to first child ( temp uint)
0:133        'out_u1' ( temp uint)
0:133        imageAtomicAnd ( temp uint)
0:133          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:133          u3: direct index for structure ( uniform 3-component vector of uint)
0:133            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:133            Constant:
0:133              2 (const uint)
0:133          u1: direct index for structure ( uniform uint)
0:133            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:133            Constant:
0:133              0 (const uint)
0:134      move second child to first child ( temp uint)
0:134        'out_u1' ( temp uint)
0:134        imageAtomicCompSwap ( temp uint)
0:134          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:134          u3: direct index for structure ( uniform 3-component vector of uint)
0:134            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:134            Constant:
0:134              2 (const uint)
0:134          u1b: direct index for structure ( uniform uint)
0:134            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:134            Constant:
0:134              3 (const uint)
0:134          u1c: direct index for structure ( uniform uint)
0:134            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:134            Constant:
0:134              4 (const uint)
0:135      move second child to first child ( temp uint)
0:135        'out_u1' ( temp uint)
0:135        imageAtomicExchange ( temp uint)
0:135          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:135          u3: direct index for structure ( uniform 3-component vector of uint)
0:135            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:135            Constant:
0:135              2 (const uint)
0:135          u1: direct index for structure ( uniform uint)
0:135            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:135            Constant:
0:135              0 (const uint)
0:136      imageAtomicMax ( temp uint)
0:136        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:136        u3: direct index for structure ( uniform 3-component vector of uint)
0:136          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:136          Constant:
0:136            2 (const uint)
0:136        u1: direct index for structure ( uniform uint)
0:136          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:136          Constant:
0:136            0 (const uint)
0:137      move second child to first child ( temp uint)
0:137        'out_u1' ( temp uint)
0:137        imageAtomicMax ( temp uint)
0:137          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:137          u3: direct index for structure ( uniform 3-component vector of uint)
0:137            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:137            Constant:
0:137              2 (const uint)
0:137          u1: direct index for structure ( uniform uint)
0:137            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:137            Constant:
0:137              0 (const uint)
0:138      imageAtomicMin ( temp uint)
0:138        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:138        u3: direct index for structure ( uniform 3-component vector of uint)
0:138          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:138          Constant:
0:138            2 (const uint)
0:138        u1: direct index for structure ( uniform uint)
0:138          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:138          Constant:
0:138            0 (const uint)
0:139      move second child to first child ( temp uint)
0:139        'out_u1' ( temp uint)
0:139        imageAtomicMin ( temp uint)
0:139          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:139          u3: direct index for structure ( uniform 3-component vector of uint)
0:139            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:139            Constant:
0:139              2 (const uint)
0:139          u1: direct index for structure ( uniform uint)
0:139            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:139            Constant:
0:139              0 (const uint)
0:140      imageAtomicOr ( temp uint)
0:140        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:140        u3: direct index for structure ( uniform 3-component vector of uint)
0:140          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:140          Constant:
0:140            2 (const uint)
0:140        u1: direct index for structure ( uniform uint)
0:140          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:140          Constant:
0:140            0 (const uint)
0:141      move second child to first child ( temp uint)
0:141        'out_u1' ( temp uint)
0:141        imageAtomicOr ( temp uint)
0:141          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:141          u3: direct index for structure ( uniform 3-component vector of uint)
0:141            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:141            Constant:
0:141              2 (const uint)
0:141          u1: direct index for structure ( uniform uint)
0:141            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:141            Constant:
0:141              0 (const uint)
0:142      imageAtomicXor ( temp uint)
0:142        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:142        u3: direct index for structure ( uniform 3-component vector of uint)
0:142          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:142          Constant:
0:142            2 (const uint)
0:142        u1: direct index for structure ( uniform uint)
0:142          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:142          Constant:
0:142            0 (const uint)
0:143      move second child to first child ( temp uint)
0:143        'out_u1' ( temp uint)
0:143        imageAtomicXor ( temp uint)
0:143          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:143          u3: direct index for structure ( uniform 3-component vector of uint)
0:143            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:143            Constant:
0:143              2 (const uint)
0:143          u1: direct index for structure ( uniform uint)
0:143            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:143            Constant:
0:143              0 (const uint)
0:146      imageAtomicAdd ( temp int)
0:146        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:146        i2: direct index for structure ( uniform 2-component vector of int)
0:146          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:146          Constant:
0:146            6 (const uint)
0:146        i1b: direct index for structure ( uniform int)
0:146          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:146          Constant:
0:146            8 (const uint)
0:147      move second child to first child ( temp int)
0:147        'out_i1' ( temp int)
0:147        imageAtomicAdd ( temp int)
0:147          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:147          i2: direct index for structure ( uniform 2-component vector of int)
0:147            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:147            Constant:
0:147              6 (const uint)
0:147          i1: direct index for structure ( uniform int)
0:147            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:147            Constant:
0:147              5 (const uint)
0:148      imageAtomicAnd ( temp int)
0:148        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:148        i2: direct index for structure ( uniform 2-component vector of int)
0:148          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:148          Constant:
0:148            6 (const uint)
0:148        i1b: direct index for structure ( uniform int)
0:148          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:148          Constant:
0:148            8 (const uint)
0:149      move second child to first child ( temp int)
0:149        'out_i1' ( temp int)
0:149        imageAtomicAnd ( temp int)
0:149          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:149          i2: direct index for structure ( uniform 2-component vector of int)
0:149            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:149            Constant:
0:149              6 (const uint)
0:149          i1: direct index for structure ( uniform int)
0:149            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:149            Constant:
0:149              5 (const uint)
0:150      move second child to first child ( temp int)
0:150        'out_i1' ( temp int)
0:150        imageAtomicCompSwap ( temp int)
0:150          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:150          i2: direct index for structure ( uniform 2-component vector of int)
0:150            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:150            Constant:
0:150              6 (const uint)
0:150          i1b: direct index for structure ( uniform int)
0:150            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:150            Constant:
0:150              8 (const uint)
0:150          i1c: direct index for structure ( uniform int)
0:150            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:150            Constant:
0:150              9 (const uint)
0:151      move second child to first child ( temp int)
0:151        'out_i1' ( temp int)
0:151        imageAtomicExchange ( temp int)
0:151          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:151          i2: direct index for structure ( uniform 2-component vector of int)
0:151            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:151            Constant:
0:151              6 (const uint)
0:151          i1: direct index for structure ( uniform int)
0:151            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:151            Constant:
0:151              5 (const uint)
0:152      imageAtomicMax ( temp int)
0:152        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:152        i2: direct index for structure ( uniform 2-component vector of int)
0:152          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:152          Constant:
0:152            6 (const uint)
0:152        i1b: direct index for structure ( uniform int)
0:152          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:152          Constant:
0:152            8 (const uint)
0:153      move second child to first child ( temp int)
0:153        'out_i1' ( temp int)
0:153        imageAtomicMax ( temp int)
0:153          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:153          i2: direct index for structure ( uniform 2-component vector of int)
0:153            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:153            Constant:
0:153              6 (const uint)
0:153          i1: direct index for structure ( uniform int)
0:153            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:153            Constant:
0:153              5 (const uint)
0:154      imageAtomicMin ( temp int)
0:154        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:154        i2: direct index for structure ( uniform 2-component vector of int)
0:154          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:154          Constant:
0:154            6 (const uint)
0:154        i1b: direct index for structure ( uniform int)
0:154          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:154          Constant:
0:154            8 (const uint)
0:155      move second child to first child ( temp int)
0:155        'out_i1' ( temp int)
0:155        imageAtomicMin ( temp int)
0:155          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:155          i2: direct index for structure ( uniform 2-component vector of int)
0:155            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:155            Constant:
0:155              6 (const uint)
0:155          i1: direct index for structure ( uniform int)
0:155            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:155            Constant:
0:155              5 (const uint)
0:156      imageAtomicOr ( temp int)
0:156        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:156        i2: direct index for structure ( uniform 2-component vector of int)
0:156          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:156          Constant:
0:156            6 (const uint)
0:156        i1b: direct index for structure ( uniform int)
0:156          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:156          Constant:
0:156            8 (const uint)
0:157      move second child to first child ( temp int)
0:157        'out_i1' ( temp int)
0:157        imageAtomicOr ( temp int)
0:157          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:157          i2: direct index for structure ( uniform 2-component vector of int)
0:157            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:157            Constant:
0:157              6 (const uint)
0:157          i1: direct index for structure ( uniform int)
0:157            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:157            Constant:
0:157              5 (const uint)
0:158      imageAtomicXor ( temp int)
0:158        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:158        i2: direct index for structure ( uniform 2-component vector of int)
0:158          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:158          Constant:
0:158            6 (const uint)
0:158        i1b: direct index for structure ( uniform int)
0:158          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:158          Constant:
0:158            8 (const uint)
0:159      move second child to first child ( temp int)
0:159        'out_i1' ( temp int)
0:159        imageAtomicXor ( temp int)
0:159          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:159          i2: direct index for structure ( uniform 2-component vector of int)
0:159            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:159            Constant:
0:159              6 (const uint)
0:159          i1: direct index for structure ( uniform int)
0:159            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:159            Constant:
0:159              5 (const uint)
0:162      imageAtomicAdd ( temp uint)
0:162        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:162        u2: direct index for structure ( uniform 2-component vector of uint)
0:162          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:162          Constant:
0:162            1 (const uint)
0:162        u1: direct index for structure ( uniform uint)
0:162          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:162          Constant:
0:162            0 (const uint)
0:163      move second child to first child ( temp uint)
0:163        'out_u1' ( temp uint)
0:163        imageAtomicAdd ( temp uint)
0:163          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:163          u2: direct index for structure ( uniform 2-component vector of uint)
0:163            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:163            Constant:
0:163              1 (const uint)
0:163          u1: direct index for structure ( uniform uint)
0:163            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:163            Constant:
0:163              0 (const uint)
0:164      imageAtomicAnd ( temp uint)
0:164        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:164        u2: direct index for structure ( uniform 2-component vector of uint)
0:164          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:164          Constant:
0:164            1 (const uint)
0:164        u1: direct index for structure ( uniform uint)
0:164          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:164          Constant:
0:164            0 (const uint)
0:165      move second child to first child ( temp uint)
0:165        'out_u1' ( temp uint)
0:165        imageAtomicAnd ( temp uint)
0:165          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:165          u2: direct index for structure ( uniform 2-component vector of uint)
0:165            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:165            Constant:
0:165              1 (const uint)
0:165          u1: direct index for structure ( uniform uint)
0:165            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:165            Constant:
0:165              0 (const uint)
0:166      move second child to first child ( temp uint)
0:166        'out_u1' ( temp uint)
0:166        imageAtomicCompSwap ( temp uint)
0:166          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:166          u2: direct index for structure ( uniform 2-component vector of uint)
0:166            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:166            Constant:
0:166              1 (const uint)
0:166          u1b: direct index for structure ( uniform uint)
0:166            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:166            Constant:
0:166              3 (const uint)
0:166          u1c: direct index for structure ( uniform uint)
0:166            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:166            Constant:
0:166              4 (const uint)
0:167      move second child to first child ( temp uint)
0:167        'out_u1' ( temp uint)
0:167        imageAtomicExchange ( temp uint)
0:167          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:167          u2: direct index for structure ( uniform 2-component vector of uint)
0:167            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:167            Constant:
0:167              1 (const uint)
0:167          u1: direct index for structure ( uniform uint)
0:167            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:167            Constant:
0:167              0 (const uint)
0:168      imageAtomicMax ( temp uint)
0:168        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:168        u2: direct index for structure ( uniform 2-component vector of uint)
0:168          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:168          Constant:
0:168            1 (const uint)
0:168        u1: direct index for structure ( uniform uint)
0:168          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:168          Constant:
0:168            0 (const uint)
0:169      move second child to first child ( temp uint)
0:169        'out_u1' ( temp uint)
0:169        imageAtomicMax ( temp uint)
0:169          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:169          u2: direct index for structure ( uniform 2-component vector of uint)
0:169            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:169            Constant:
0:169              1 (const uint)
0:169          u1: direct index for structure ( uniform uint)
0:169            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:169            Constant:
0:169              0 (const uint)
0:170      imageAtomicMin ( temp uint)
0:170        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:170        u2: direct index for structure ( uniform 2-component vector of uint)
0:170          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:170          Constant:
0:170            1 (const uint)
0:170        u1: direct index for structure ( uniform uint)
0:170          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:170          Constant:
0:170            0 (const uint)
0:171      move second child to first child ( temp uint)
0:171        'out_u1' ( temp uint)
0:171        imageAtomicMin ( temp uint)
0:171          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:171          u2: direct index for structure ( uniform 2-component vector of uint)
0:171            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:171            Constant:
0:171              1 (const uint)
0:171          u1: direct index for structure ( uniform uint)
0:171            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:171            Constant:
0:171              0 (const uint)
0:172      imageAtomicOr ( temp uint)
0:172        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:172        u2: direct index for structure ( uniform 2-component vector of uint)
0:172          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:172          Constant:
0:172            1 (const uint)
0:172        u1: direct index for structure ( uniform uint)
0:172          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:172          Constant:
0:172            0 (const uint)
0:173      move second child to first child ( temp uint)
0:173        'out_u1' ( temp uint)
0:173        imageAtomicOr ( temp uint)
0:173          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:173          u2: direct index for structure ( uniform 2-component vector of uint)
0:173            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:173            Constant:
0:173              1 (const uint)
0:173          u1: direct index for structure ( uniform uint)
0:173            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:173            Constant:
0:173              0 (const uint)
0:174      imageAtomicXor ( temp uint)
0:174        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:174        u2: direct index for structure ( uniform 2-component vector of uint)
0:174          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:174          Constant:
0:174            1 (const uint)
0:174        u1: direct index for structure ( uniform uint)
0:174          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:174          Constant:
0:174            0 (const uint)
0:175      move second child to first child ( temp uint)
0:175        'out_u1' ( temp uint)
0:175        imageAtomicXor ( temp uint)
0:175          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:175          u2: direct index for structure ( uniform 2-component vector of uint)
0:175            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:175            Constant:
0:175              1 (const uint)
0:175          u1: direct index for structure ( uniform uint)
0:175            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:175            Constant:
0:175              0 (const uint)
0:178      imageAtomicAdd ( temp int)
0:178        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:178        i2: direct index for structure ( uniform 2-component vector of int)
0:178          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:178          Constant:
0:178            6 (const uint)
0:178        i1b: direct index for structure ( uniform int)
0:178          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:178          Constant:
0:178            8 (const uint)
0:179      move second child to first child ( temp int)
0:179        'out_i1' ( temp int)
0:179        imageAtomicAdd ( temp int)
0:179          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:179          i2: direct index for structure ( uniform 2-component vector of int)
0:179            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:179            Constant:
0:179              6 (const uint)
0:179          i1: direct index for structure ( uniform int)
0:179            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:179            Constant:
0:179              5 (const uint)
0:180      imageAtomicAnd ( temp int)
0:180        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:180        i2: direct index for structure ( uniform 2-component vector of int)
0:180          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:180          Constant:
0:180            6 (const uint)
0:180        i1b: direct index for structure ( uniform int)
0:180          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:180          Constant:
0:180            8 (const uint)
0:181      move second child to first child ( temp int)
0:181        'out_i1' ( temp int)
0:181        imageAtomicAnd ( temp int)
0:181          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:181          i2: direct index for structure ( uniform 2-component vector of int)
0:181            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:181            Constant:
0:181              6 (const uint)
0:181          i1: direct index for structure ( uniform int)
0:181            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:181            Constant:
0:181              5 (const uint)
0:182      move second child to first child ( temp int)
0:182        'out_i1' ( temp int)
0:182        imageAtomicCompSwap ( temp int)
0:182          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:182          i2: direct index for structure ( uniform 2-component vector of int)
0:182            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:182            Constant:
0:182              6 (const uint)
0:182          i1b: direct index for structure ( uniform int)
0:182            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:182            Constant:
0:182              8 (const uint)
0:182          i1c: direct index for structure ( uniform int)
0:182            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:182            Constant:
0:182              9 (const uint)
0:183      move second child to first child ( temp int)
0:183        'out_i1' ( temp int)
0:183        imageAtomicExchange ( temp int)
0:183          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:183          i2: direct index for structure ( uniform 2-component vector of int)
0:183            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:183            Constant:
0:183              6 (const uint)
0:183          i1: direct index for structure ( uniform int)
0:183            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:183            Constant:
0:183              5 (const uint)
0:184      imageAtomicMax ( temp int)
0:184        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:184        i2: direct index for structure ( uniform 2-component vector of int)
0:184          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:184          Constant:
0:184            6 (const uint)
0:184        i1b: direct index for structure ( uniform int)
0:184          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:184          Constant:
0:184            8 (const uint)
0:185      move second child to first child ( temp int)
0:185        'out_i1' ( temp int)
0:185        imageAtomicMax ( temp int)
0:185          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:185          i2: direct index for structure ( uniform 2-component vector of int)
0:185            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:185            Constant:
0:185              6 (const uint)
0:185          i1: direct index for structure ( uniform int)
0:185            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:185            Constant:
0:185              5 (const uint)
0:186      imageAtomicMin ( temp int)
0:186        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:186        i2: direct index for structure ( uniform 2-component vector of int)
0:186          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:186          Constant:
0:186            6 (const uint)
0:186        i1b: direct index for structure ( uniform int)
0:186          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:186          Constant:
0:186            8 (const uint)
0:187      move second child to first child ( temp int)
0:187        'out_i1' ( temp int)
0:187        imageAtomicMin ( temp int)
0:187          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:187          i2: direct index for structure ( uniform 2-component vector of int)
0:187            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:187            Constant:
0:187              6 (const uint)
0:187          i1: direct index for structure ( uniform int)
0:187            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:187            Constant:
0:187              5 (const uint)
0:188      imageAtomicOr ( temp int)
0:188        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:188        i2: direct index for structure ( uniform 2-component vector of int)
0:188          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:188          Constant:
0:188            6 (const uint)
0:188        i1b: direct index for structure ( uniform int)
0:188          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:188          Constant:
0:188            8 (const uint)
0:189      move second child to first child ( temp int)
0:189        'out_i1' ( temp int)
0:189        imageAtomicOr ( temp int)
0:189          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:189          i2: direct index for structure ( uniform 2-component vector of int)
0:189            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:189            Constant:
0:189              6 (const uint)
0:189          i1: direct index for structure ( uniform int)
0:189            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:189            Constant:
0:189              5 (const uint)
0:190      imageAtomicXor ( temp int)
0:190        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:190        i2: direct index for structure ( uniform 2-component vector of int)
0:190          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:190          Constant:
0:190            6 (const uint)
0:190        i1b: direct index for structure ( uniform int)
0:190          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:190          Constant:
0:190            8 (const uint)
0:191      move second child to first child ( temp int)
0:191        'out_i1' ( temp int)
0:191        imageAtomicXor ( temp int)
0:191          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:191          i2: direct index for structure ( uniform 2-component vector of int)
0:191            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:191            Constant:
0:191              6 (const uint)
0:191          i1: direct index for structure ( uniform int)
0:191            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:191            Constant:
0:191              5 (const uint)
0:194      imageAtomicAdd ( temp uint)
0:194        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:194        u2: direct index for structure ( uniform 2-component vector of uint)
0:194          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:194          Constant:
0:194            1 (const uint)
0:194        u1: direct index for structure ( uniform uint)
0:194          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:194          Constant:
0:194            0 (const uint)
0:195      move second child to first child ( temp uint)
0:195        'out_u1' ( temp uint)
0:195        imageAtomicAdd ( temp uint)
0:195          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:195          u2: direct index for structure ( uniform 2-component vector of uint)
0:195            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:195            Constant:
0:195              1 (const uint)
0:195          u1: direct index for structure ( uniform uint)
0:195            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:195            Constant:
0:195              0 (const uint)
0:196      imageAtomicAnd ( temp uint)
0:196        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:196        u2: direct index for structure ( uniform 2-component vector of uint)
0:196          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:196          Constant:
0:196            1 (const uint)
0:196        u1: direct index for structure ( uniform uint)
0:196          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:196          Constant:
0:196            0 (const uint)
0:197      move second child to first child ( temp uint)
0:197        'out_u1' ( temp uint)
0:197        imageAtomicAnd ( temp uint)
0:197          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:197          u2: direct index for structure ( uniform 2-component vector of uint)
0:197            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:197            Constant:
0:197              1 (const uint)
0:197          u1: direct index for structure ( uniform uint)
0:197            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:197            Constant:
0:197              0 (const uint)
0:198      move second child to first child ( temp uint)
0:198        'out_u1' ( temp uint)
0:198        imageAtomicCompSwap ( temp uint)
0:198          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:198          u2: direct index for structure ( uniform 2-component vector of uint)
0:198            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:198            Constant:
0:198              1 (const uint)
0:198          u1b: direct index for structure ( uniform uint)
0:198            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:198            Constant:
0:198              3 (const uint)
0:198          u1c: direct index for structure ( uniform uint)
0:198            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:198            Constant:
0:198              4 (const uint)
0:199      move second child to first child ( temp uint)
0:199        'out_u1' ( temp uint)
0:199        imageAtomicExchange ( temp uint)
0:199          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:199          u2: direct index for structure ( uniform 2-component vector of uint)
0:199            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:199            Constant:
0:199              1 (const uint)
0:199          u1: direct index for structure ( uniform uint)
0:199            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:199            Constant:
0:199              0 (const uint)
0:200      imageAtomicMax ( temp uint)
0:200        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:200        u2: direct index for structure ( uniform 2-component vector of uint)
0:200          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:200          Constant:
0:200            1 (const uint)
0:200        u1: direct index for structure ( uniform uint)
0:200          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:200          Constant:
0:200            0 (const uint)
0:201      move second child to first child ( temp uint)
0:201        'out_u1' ( temp uint)
0:201        imageAtomicMax ( temp uint)
0:201          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:201          u2: direct index for structure ( uniform 2-component vector of uint)
0:201            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:201            Constant:
0:201              1 (const uint)
0:201          u1: direct index for structure ( uniform uint)
0:201            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:201            Constant:
0:201              0 (const uint)
0:202      imageAtomicMin ( temp uint)
0:202        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:202        u2: direct index for structure ( uniform 2-component vector of uint)
0:202          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:202          Constant:
0:202            1 (const uint)
0:202        u1: direct index for structure ( uniform uint)
0:202          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:202          Constant:
0:202            0 (const uint)
0:203      move second child to first child ( temp uint)
0:203        'out_u1' ( temp uint)
0:203        imageAtomicMin ( temp uint)
0:203          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:203          u2: direct index for structure ( uniform 2-component vector of uint)
0:203            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:203            Constant:
0:203              1 (const uint)
0:203          u1: direct index for structure ( uniform uint)
0:203            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:203            Constant:
0:203              0 (const uint)
0:204      imageAtomicOr ( temp uint)
0:204        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:204        u2: direct index for structure ( uniform 2-component vector of uint)
0:204          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:204          Constant:
0:204            1 (const uint)
0:204        u1: direct index for structure ( uniform uint)
0:204          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:204          Constant:
0:204            0 (const uint)
0:205      move second child to first child ( temp uint)
0:205        'out_u1' ( temp uint)
0:205        imageAtomicOr ( temp uint)
0:205          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:205          u2: direct index for structure ( uniform 2-component vector of uint)
0:205            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:205            Constant:
0:205              1 (const uint)
0:205          u1: direct index for structure ( uniform uint)
0:205            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:205            Constant:
0:205              0 (const uint)
0:206      imageAtomicXor ( temp uint)
0:206        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:206        u2: direct index for structure ( uniform 2-component vector of uint)
0:206          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:206          Constant:
0:206            1 (const uint)
0:206        u1: direct index for structure ( uniform uint)
0:206          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:206          Constant:
0:206            0 (const uint)
0:207      move second child to first child ( temp uint)
0:207        'out_u1' ( temp uint)
0:207        imageAtomicXor ( temp uint)
0:207          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:207          u2: direct index for structure ( uniform 2-component vector of uint)
0:207            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:207            Constant:
0:207              1 (const uint)
0:207          u1: direct index for structure ( uniform uint)
0:207            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:207            Constant:
0:207              0 (const uint)
0:210      imageAtomicAdd ( temp int)
0:210        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:210        i1: direct index for structure ( uniform int)
0:210          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:210          Constant:
0:210            5 (const uint)
0:210        i1b: direct index for structure ( uniform int)
0:210          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:210          Constant:
0:210            8 (const uint)
0:211      move second child to first child ( temp int)
0:211        'out_i1' ( temp int)
0:211        imageAtomicAdd ( temp int)
0:211          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:211          i1: direct index for structure ( uniform int)
0:211            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:211            Constant:
0:211              5 (const uint)
0:211          i1: direct index for structure ( uniform int)
0:211            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:211            Constant:
0:211              5 (const uint)
0:212      imageAtomicAnd ( temp int)
0:212        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:212        i1: direct index for structure ( uniform int)
0:212          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:212          Constant:
0:212            5 (const uint)
0:212        i1b: direct index for structure ( uniform int)
0:212          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:212          Constant:
0:212            8 (const uint)
0:213      move second child to first child ( temp int)
0:213        'out_i1' ( temp int)
0:213        imageAtomicAnd ( temp int)
0:213          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:213          i1: direct index for structure ( uniform int)
0:213            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:213            Constant:
0:213              5 (const uint)
0:213          i1: direct index for structure ( uniform int)
0:213            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:213            Constant:
0:213              5 (const uint)
0:214      move second child to first child ( temp int)
0:214        'out_i1' ( temp int)
0:214        imageAtomicCompSwap ( temp int)
0:214          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:214          i1: direct index for structure ( uniform int)
0:214            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:214            Constant:
0:214              5 (const uint)
0:214          i1b: direct index for structure ( uniform int)
0:214            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:214            Constant:
0:214              8 (const uint)
0:214          i1c: direct index for structure ( uniform int)
0:214            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:214            Constant:
0:214              9 (const uint)
0:215      move second child to first child ( temp int)
0:215        'out_i1' ( temp int)
0:215        imageAtomicExchange ( temp int)
0:215          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:215          i1: direct index for structure ( uniform int)
0:215            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:215            Constant:
0:215              5 (const uint)
0:215          i1: direct index for structure ( uniform int)
0:215            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:215            Constant:
0:215              5 (const uint)
0:216      imageAtomicMax ( temp int)
0:216        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:216        i1: direct index for structure ( uniform int)
0:216          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:216          Constant:
0:216            5 (const uint)
0:216        i1b: direct index for structure ( uniform int)
0:216          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:216          Constant:
0:216            8 (const uint)
0:217      move second child to first child ( temp int)
0:217        'out_i1' ( temp int)
0:217        imageAtomicMax ( temp int)
0:217          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:217          i1: direct index for structure ( uniform int)
0:217            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:217            Constant:
0:217              5 (const uint)
0:217          i1: direct index for structure ( uniform int)
0:217            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:217            Constant:
0:217              5 (const uint)
0:218      imageAtomicMin ( temp int)
0:218        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:218        i1: direct index for structure ( uniform int)
0:218          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:218          Constant:
0:218            5 (const uint)
0:218        i1b: direct index for structure ( uniform int)
0:218          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:218          Constant:
0:218            8 (const uint)
0:219      move second child to first child ( temp int)
0:219        'out_i1' ( temp int)
0:219        imageAtomicMin ( temp int)
0:219          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:219          i1: direct index for structure ( uniform int)
0:219            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:219            Constant:
0:219              5 (const uint)
0:219          i1: direct index for structure ( uniform int)
0:219            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:219            Constant:
0:219              5 (const uint)
0:220      imageAtomicOr ( temp int)
0:220        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:220        i1: direct index for structure ( uniform int)
0:220          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:220          Constant:
0:220            5 (const uint)
0:220        i1b: direct index for structure ( uniform int)
0:220          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:220          Constant:
0:220            8 (const uint)
0:221      move second child to first child ( temp int)
0:221        'out_i1' ( temp int)
0:221        imageAtomicOr ( temp int)
0:221          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:221          i1: direct index for structure ( uniform int)
0:221            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:221            Constant:
0:221              5 (const uint)
0:221          i1: direct index for structure ( uniform int)
0:221            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:221            Constant:
0:221              5 (const uint)
0:222      imageAtomicXor ( temp int)
0:222        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:222        i1: direct index for structure ( uniform int)
0:222          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:222          Constant:
0:222            5 (const uint)
0:222        i1b: direct index for structure ( uniform int)
0:222          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:222          Constant:
0:222            8 (const uint)
0:223      move second child to first child ( temp int)
0:223        'out_i1' ( temp int)
0:223        imageAtomicXor ( temp int)
0:223          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:223          i1: direct index for structure ( uniform int)
0:223            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:223            Constant:
0:223              5 (const uint)
0:223          i1: direct index for structure ( uniform int)
0:223            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:223            Constant:
0:223              5 (const uint)
0:226      imageAtomicAdd ( temp uint)
0:226        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:226        u1: direct index for structure ( uniform uint)
0:226          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:226          Constant:
0:226            0 (const uint)
0:226        u1: direct index for structure ( uniform uint)
0:226          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:226          Constant:
0:226            0 (const uint)
0:227      move second child to first child ( temp uint)
0:227        'out_u1' ( temp uint)
0:227        imageAtomicAdd ( temp uint)
0:227          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:227          u1: direct index for structure ( uniform uint)
0:227            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:227            Constant:
0:227              0 (const uint)
0:227          u1: direct index for structure ( uniform uint)
0:227            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:227            Constant:
0:227              0 (const uint)
0:228      imageAtomicAnd ( temp uint)
0:228        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:228        u1: direct index for structure ( uniform uint)
0:228          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:228          Constant:
0:228            0 (const uint)
0:228        u1: direct index for structure ( uniform uint)
0:228          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:228          Constant:
0:228            0 (const uint)
0:229      move second child to first child ( temp uint)
0:229        'out_u1' ( temp uint)
0:229        imageAtomicAnd ( temp uint)
0:229          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:229          u1: direct index for structure ( uniform uint)
0:229            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:229            Constant:
0:229              0 (const uint)
0:229          u1: direct index for structure ( uniform uint)
0:229            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:229            Constant:
0:229              0 (const uint)
0:230      move second child to first child ( temp uint)
0:230        'out_u1' ( temp uint)
0:230        imageAtomicCompSwap ( temp uint)
0:230          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:230          u1: direct index for structure ( uniform uint)
0:230            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:230            Constant:
0:230              0 (const uint)
0:230          u1b: direct index for structure ( uniform uint)
0:230            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:230            Constant:
0:230              3 (const uint)
0:230          u1c: direct index for structure ( uniform uint)
0:230            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:230            Constant:
0:230              4 (const uint)
0:231      move second child to first child ( temp uint)
0:231        'out_u1' ( temp uint)
0:231        imageAtomicExchange ( temp uint)
0:231          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:231          u1: direct index for structure ( uniform uint)
0:231            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:231            Constant:
0:231              0 (const uint)
0:231          u1: direct index for structure ( uniform uint)
0:231            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:231            Constant:
0:231              0 (const uint)
0:232      imageAtomicMax ( temp uint)
0:232        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:232        u1: direct index for structure ( uniform uint)
0:232          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:232          Constant:
0:232            0 (const uint)
0:232        u1: direct index for structure ( uniform uint)
0:232          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:232          Constant:
0:232            0 (const uint)
0:233      move second child to first child ( temp uint)
0:233        'out_u1' ( temp uint)
0:233        imageAtomicMax ( temp uint)
0:233          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:233          u1: direct index for structure ( uniform uint)
0:233            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:233            Constant:
0:233              0 (const uint)
0:233          u1: direct index for structure ( uniform uint)
0:233            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:233            Constant:
0:233              0 (const uint)
0:234      imageAtomicMin ( temp uint)
0:234        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:234        u1: direct index for structure ( uniform uint)
0:234          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:234          Constant:
0:234            0 (const uint)
0:234        u1: direct index for structure ( uniform uint)
0:234          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:234          Constant:
0:234            0 (const uint)
0:235      move second child to first child ( temp uint)
0:235        'out_u1' ( temp uint)
0:235        imageAtomicMin ( temp uint)
0:235          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:235          u1: direct index for structure ( uniform uint)
0:235            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:235            Constant:
0:235              0 (const uint)
0:235          u1: direct index for structure ( uniform uint)
0:235            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:235            Constant:
0:235              0 (const uint)
0:236      imageAtomicOr ( temp uint)
0:236        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:236        u1: direct index for structure ( uniform uint)
0:236          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:236          Constant:
0:236            0 (const uint)
0:236        u1: direct index for structure ( uniform uint)
0:236          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:236          Constant:
0:236            0 (const uint)
0:237      move second child to first child ( temp uint)
0:237        'out_u1' ( temp uint)
0:237        imageAtomicOr ( temp uint)
0:237          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:237          u1: direct index for structure ( uniform uint)
0:237            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:237            Constant:
0:237              0 (const uint)
0:237          u1: direct index for structure ( uniform uint)
0:237            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:237            Constant:
0:237              0 (const uint)
0:238      imageAtomicXor ( temp uint)
0:238        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:238        u1: direct index for structure ( uniform uint)
0:238          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:238          Constant:
0:238            0 (const uint)
0:238        u1: direct index for structure ( uniform uint)
0:238          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:238          Constant:
0:238            0 (const uint)
0:239      move second child to first child ( temp uint)
0:239        'out_u1' ( temp uint)
0:239        imageAtomicXor ( temp uint)
0:239          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:239          u1: direct index for structure ( uniform uint)
0:239            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:239            Constant:
0:239              0 (const uint)
0:239          u1: direct index for structure ( uniform uint)
0:239            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:239            Constant:
0:239              0 (const uint)
0:242      move second child to first child ( temp 4-component vector of float)
0:242        Color: direct index for structure ( temp 4-component vector of float)
0:242          'psout' ( temp structure{ temp 4-component vector of float Color})
0:242          Constant:
0:242            0 (const int)
0:242        Constant:
0:242          1.000000
0:242          1.000000
0:242          1.000000
0:242          1.000000
0:243      Branch: Return with expression
0:243        'psout' ( temp structure{ temp 4-component vector of float Color})
0:45  Function Definition: main( ( temp void)
0:45    Function Parameters: 
0:?     Sequence
0:45      Sequence
0:45        move second child to first child ( temp 4-component vector of float)
0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
0:45          Color: direct index for structure ( temp 4-component vector of float)
0:45            Function Call: @main( ( temp structure{ temp 4-component vector of float Color})
0:45            Constant:
0:45              0 (const int)
0:?   Linker Objects
0:?     'g_sSamp' ( uniform sampler)
0:?     'g_tTex1df1' (layout( r32f) uniform image1D)
0:?     'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:?     'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:?     'g_tTex2df1' (layout( r32f) uniform image2D)
0:?     'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:?     'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:?     'g_tTex3df1' (layout( r32f) uniform image3D)
0:?     'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:?     'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:?     'g_tTex1df1a' (layout( r32f) uniform image1DArray)
0:?     'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:?     'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:?     'g_tTex2df1a' (layout( r32f) uniform image2DArray)
0:?     'g_tTex2di1a' (layout( r32i) uniform iimage2DArray)
0:?     'g_tTex2du1a' (layout( r32ui) uniform uimage2DArray)
0:?     'g_tBuffF' (layout( r32f) uniform imageBuffer)
0:?     'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:?     'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:?     'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:45  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
0:45    Function Parameters: 
0:?     Sequence
0:50      imageAtomicAdd ( temp int)
0:50        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:50        i1: direct index for structure ( uniform int)
0:50          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:50          Constant:
0:50            5 (const uint)
0:50        i1b: direct index for structure ( uniform int)
0:50          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:50          Constant:
0:50            8 (const uint)
0:51      move second child to first child ( temp int)
0:51        'out_i1' ( temp int)
0:51        imageAtomicAdd ( temp int)
0:51          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:51          i1: direct index for structure ( uniform int)
0:51            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:51            Constant:
0:51              5 (const uint)
0:51          i1: direct index for structure ( uniform int)
0:51            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:51            Constant:
0:51              5 (const uint)
0:52      imageAtomicAnd ( temp int)
0:52        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:52        i1: direct index for structure ( uniform int)
0:52          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:52          Constant:
0:52            5 (const uint)
0:52        i1b: direct index for structure ( uniform int)
0:52          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:52          Constant:
0:52            8 (const uint)
0:53      move second child to first child ( temp int)
0:53        'out_i1' ( temp int)
0:53        imageAtomicAnd ( temp int)
0:53          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:53          i1: direct index for structure ( uniform int)
0:53            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:53            Constant:
0:53              5 (const uint)
0:53          i1: direct index for structure ( uniform int)
0:53            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:53            Constant:
0:53              5 (const uint)
0:54      move second child to first child ( temp int)
0:54        'out_i1' ( temp int)
0:54        imageAtomicCompSwap ( temp int)
0:54          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:54          i1: direct index for structure ( uniform int)
0:54            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:54            Constant:
0:54              5 (const uint)
0:54          i1b: direct index for structure ( uniform int)
0:54            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:54            Constant:
0:54              8 (const uint)
0:54          i1c: direct index for structure ( uniform int)
0:54            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:54            Constant:
0:54              9 (const uint)
0:55      move second child to first child ( temp int)
0:55        'out_i1' ( temp int)
0:55        imageAtomicExchange ( temp int)
0:55          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:55          i1: direct index for structure ( uniform int)
0:55            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:55            Constant:
0:55              5 (const uint)
0:55          i1: direct index for structure ( uniform int)
0:55            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:55            Constant:
0:55              5 (const uint)
0:56      imageAtomicMax ( temp int)
0:56        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:56        i1: direct index for structure ( uniform int)
0:56          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:56          Constant:
0:56            5 (const uint)
0:56        i1b: direct index for structure ( uniform int)
0:56          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:56          Constant:
0:56            8 (const uint)
0:57      move second child to first child ( temp int)
0:57        'out_i1' ( temp int)
0:57        imageAtomicMax ( temp int)
0:57          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:57          i1: direct index for structure ( uniform int)
0:57            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:57            Constant:
0:57              5 (const uint)
0:57          i1: direct index for structure ( uniform int)
0:57            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:57            Constant:
0:57              5 (const uint)
0:58      imageAtomicMin ( temp int)
0:58        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:58        i1: direct index for structure ( uniform int)
0:58          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:58          Constant:
0:58            5 (const uint)
0:58        i1b: direct index for structure ( uniform int)
0:58          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:58          Constant:
0:58            8 (const uint)
0:59      move second child to first child ( temp int)
0:59        'out_i1' ( temp int)
0:59        imageAtomicMin ( temp int)
0:59          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:59          i1: direct index for structure ( uniform int)
0:59            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:59            Constant:
0:59              5 (const uint)
0:59          i1: direct index for structure ( uniform int)
0:59            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:59            Constant:
0:59              5 (const uint)
0:60      imageAtomicOr ( temp int)
0:60        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:60        i1: direct index for structure ( uniform int)
0:60          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:60          Constant:
0:60            5 (const uint)
0:60        i1b: direct index for structure ( uniform int)
0:60          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:60          Constant:
0:60            8 (const uint)
0:61      move second child to first child ( temp int)
0:61        'out_i1' ( temp int)
0:61        imageAtomicOr ( temp int)
0:61          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:61          i1: direct index for structure ( uniform int)
0:61            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:61            Constant:
0:61              5 (const uint)
0:61          i1: direct index for structure ( uniform int)
0:61            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:61            Constant:
0:61              5 (const uint)
0:62      imageAtomicXor ( temp int)
0:62        'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:62        i1: direct index for structure ( uniform int)
0:62          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:62          Constant:
0:62            5 (const uint)
0:62        i1b: direct index for structure ( uniform int)
0:62          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:62          Constant:
0:62            8 (const uint)
0:63      move second child to first child ( temp int)
0:63        'out_i1' ( temp int)
0:63        imageAtomicXor ( temp int)
0:63          'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:63          i1: direct index for structure ( uniform int)
0:63            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:63            Constant:
0:63              5 (const uint)
0:63          i1: direct index for structure ( uniform int)
0:63            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:63            Constant:
0:63              5 (const uint)
0:66      imageAtomicAdd ( temp uint)
0:66        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:66        u1: direct index for structure ( uniform uint)
0:66          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:66          Constant:
0:66            0 (const uint)
0:66        u1: direct index for structure ( uniform uint)
0:66          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:66          Constant:
0:66            0 (const uint)
0:67      move second child to first child ( temp uint)
0:67        'out_u1' ( temp uint)
0:67        imageAtomicAdd ( temp uint)
0:67          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:67          u1: direct index for structure ( uniform uint)
0:67            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:67            Constant:
0:67              0 (const uint)
0:67          u1: direct index for structure ( uniform uint)
0:67            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:67            Constant:
0:67              0 (const uint)
0:68      imageAtomicAnd ( temp uint)
0:68        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:68        u1: direct index for structure ( uniform uint)
0:68          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:68          Constant:
0:68            0 (const uint)
0:68        u1: direct index for structure ( uniform uint)
0:68          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:68          Constant:
0:68            0 (const uint)
0:69      move second child to first child ( temp uint)
0:69        'out_u1' ( temp uint)
0:69        imageAtomicAnd ( temp uint)
0:69          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:69          u1: direct index for structure ( uniform uint)
0:69            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:69            Constant:
0:69              0 (const uint)
0:69          u1: direct index for structure ( uniform uint)
0:69            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:69            Constant:
0:69              0 (const uint)
0:70      move second child to first child ( temp uint)
0:70        'out_u1' ( temp uint)
0:70        imageAtomicCompSwap ( temp uint)
0:70          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:70          u1: direct index for structure ( uniform uint)
0:70            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:70            Constant:
0:70              0 (const uint)
0:70          u1b: direct index for structure ( uniform uint)
0:70            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:70            Constant:
0:70              3 (const uint)
0:70          u1c: direct index for structure ( uniform uint)
0:70            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:70            Constant:
0:70              4 (const uint)
0:71      move second child to first child ( temp uint)
0:71        'out_u1' ( temp uint)
0:71        imageAtomicExchange ( temp uint)
0:71          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:71          u1: direct index for structure ( uniform uint)
0:71            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:71            Constant:
0:71              0 (const uint)
0:71          u1: direct index for structure ( uniform uint)
0:71            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:71            Constant:
0:71              0 (const uint)
0:72      imageAtomicMax ( temp uint)
0:72        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:72        u1: direct index for structure ( uniform uint)
0:72          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:72          Constant:
0:72            0 (const uint)
0:72        u1: direct index for structure ( uniform uint)
0:72          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:72          Constant:
0:72            0 (const uint)
0:73      move second child to first child ( temp uint)
0:73        'out_u1' ( temp uint)
0:73        imageAtomicMax ( temp uint)
0:73          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:73          u1: direct index for structure ( uniform uint)
0:73            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:73            Constant:
0:73              0 (const uint)
0:73          u1: direct index for structure ( uniform uint)
0:73            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:73            Constant:
0:73              0 (const uint)
0:74      imageAtomicMin ( temp uint)
0:74        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:74        u1: direct index for structure ( uniform uint)
0:74          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:74          Constant:
0:74            0 (const uint)
0:74        u1: direct index for structure ( uniform uint)
0:74          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:74          Constant:
0:74            0 (const uint)
0:75      move second child to first child ( temp uint)
0:75        'out_u1' ( temp uint)
0:75        imageAtomicMin ( temp uint)
0:75          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:75          u1: direct index for structure ( uniform uint)
0:75            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:75            Constant:
0:75              0 (const uint)
0:75          u1: direct index for structure ( uniform uint)
0:75            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:75            Constant:
0:75              0 (const uint)
0:76      imageAtomicOr ( temp uint)
0:76        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:76        u1: direct index for structure ( uniform uint)
0:76          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:76          Constant:
0:76            0 (const uint)
0:76        u1: direct index for structure ( uniform uint)
0:76          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:76          Constant:
0:76            0 (const uint)
0:77      move second child to first child ( temp uint)
0:77        'out_u1' ( temp uint)
0:77        imageAtomicOr ( temp uint)
0:77          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:77          u1: direct index for structure ( uniform uint)
0:77            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:77            Constant:
0:77              0 (const uint)
0:77          u1: direct index for structure ( uniform uint)
0:77            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:77            Constant:
0:77              0 (const uint)
0:78      imageAtomicXor ( temp uint)
0:78        'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:78        u1: direct index for structure ( uniform uint)
0:78          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:78          Constant:
0:78            0 (const uint)
0:78        u1: direct index for structure ( uniform uint)
0:78          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:78          Constant:
0:78            0 (const uint)
0:79      move second child to first child ( temp uint)
0:79        'out_u1' ( temp uint)
0:79        imageAtomicXor ( temp uint)
0:79          'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:79          u1: direct index for structure ( uniform uint)
0:79            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:79            Constant:
0:79              0 (const uint)
0:79          u1: direct index for structure ( uniform uint)
0:79            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:79            Constant:
0:79              0 (const uint)
0:82      imageAtomicAdd ( temp int)
0:82        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:82        i2: direct index for structure ( uniform 2-component vector of int)
0:82          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:82          Constant:
0:82            6 (const uint)
0:82        i1b: direct index for structure ( uniform int)
0:82          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:82          Constant:
0:82            8 (const uint)
0:83      move second child to first child ( temp int)
0:83        'out_i1' ( temp int)
0:83        imageAtomicAdd ( temp int)
0:83          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:83          i2: direct index for structure ( uniform 2-component vector of int)
0:83            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:83            Constant:
0:83              6 (const uint)
0:83          i1: direct index for structure ( uniform int)
0:83            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:83            Constant:
0:83              5 (const uint)
0:84      imageAtomicAnd ( temp int)
0:84        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:84        i2: direct index for structure ( uniform 2-component vector of int)
0:84          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:84          Constant:
0:84            6 (const uint)
0:84        i1b: direct index for structure ( uniform int)
0:84          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:84          Constant:
0:84            8 (const uint)
0:85      move second child to first child ( temp int)
0:85        'out_i1' ( temp int)
0:85        imageAtomicAnd ( temp int)
0:85          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:85          i2: direct index for structure ( uniform 2-component vector of int)
0:85            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:85            Constant:
0:85              6 (const uint)
0:85          i1: direct index for structure ( uniform int)
0:85            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:85            Constant:
0:85              5 (const uint)
0:86      move second child to first child ( temp int)
0:86        'out_i1' ( temp int)
0:86        imageAtomicCompSwap ( temp int)
0:86          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:86          i2: direct index for structure ( uniform 2-component vector of int)
0:86            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:86            Constant:
0:86              6 (const uint)
0:86          i1b: direct index for structure ( uniform int)
0:86            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:86            Constant:
0:86              8 (const uint)
0:86          i1c: direct index for structure ( uniform int)
0:86            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:86            Constant:
0:86              9 (const uint)
0:87      move second child to first child ( temp int)
0:87        'out_i1' ( temp int)
0:87        imageAtomicExchange ( temp int)
0:87          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:87          i2: direct index for structure ( uniform 2-component vector of int)
0:87            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:87            Constant:
0:87              6 (const uint)
0:87          i1: direct index for structure ( uniform int)
0:87            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:87            Constant:
0:87              5 (const uint)
0:88      imageAtomicMax ( temp int)
0:88        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:88        i2: direct index for structure ( uniform 2-component vector of int)
0:88          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:88          Constant:
0:88            6 (const uint)
0:88        i1b: direct index for structure ( uniform int)
0:88          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:88          Constant:
0:88            8 (const uint)
0:89      move second child to first child ( temp int)
0:89        'out_i1' ( temp int)
0:89        imageAtomicMax ( temp int)
0:89          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:89          i2: direct index for structure ( uniform 2-component vector of int)
0:89            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:89            Constant:
0:89              6 (const uint)
0:89          i1: direct index for structure ( uniform int)
0:89            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:89            Constant:
0:89              5 (const uint)
0:90      imageAtomicMin ( temp int)
0:90        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:90        i2: direct index for structure ( uniform 2-component vector of int)
0:90          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:90          Constant:
0:90            6 (const uint)
0:90        i1b: direct index for structure ( uniform int)
0:90          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:90          Constant:
0:90            8 (const uint)
0:91      move second child to first child ( temp int)
0:91        'out_i1' ( temp int)
0:91        imageAtomicMin ( temp int)
0:91          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:91          i2: direct index for structure ( uniform 2-component vector of int)
0:91            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:91            Constant:
0:91              6 (const uint)
0:91          i1: direct index for structure ( uniform int)
0:91            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:91            Constant:
0:91              5 (const uint)
0:92      imageAtomicOr ( temp int)
0:92        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:92        i2: direct index for structure ( uniform 2-component vector of int)
0:92          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:92          Constant:
0:92            6 (const uint)
0:92        i1b: direct index for structure ( uniform int)
0:92          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:92          Constant:
0:92            8 (const uint)
0:93      move second child to first child ( temp int)
0:93        'out_i1' ( temp int)
0:93        imageAtomicOr ( temp int)
0:93          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:93          i2: direct index for structure ( uniform 2-component vector of int)
0:93            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:93            Constant:
0:93              6 (const uint)
0:93          i1: direct index for structure ( uniform int)
0:93            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:93            Constant:
0:93              5 (const uint)
0:94      imageAtomicXor ( temp int)
0:94        'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:94        i2: direct index for structure ( uniform 2-component vector of int)
0:94          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:94          Constant:
0:94            6 (const uint)
0:94        i1b: direct index for structure ( uniform int)
0:94          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:94          Constant:
0:94            8 (const uint)
0:95      move second child to first child ( temp int)
0:95        'out_i1' ( temp int)
0:95        imageAtomicXor ( temp int)
0:95          'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:95          i2: direct index for structure ( uniform 2-component vector of int)
0:95            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:95            Constant:
0:95              6 (const uint)
0:95          i1: direct index for structure ( uniform int)
0:95            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:95            Constant:
0:95              5 (const uint)
0:98      imageAtomicAdd ( temp uint)
0:98        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:98        u2: direct index for structure ( uniform 2-component vector of uint)
0:98          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:98          Constant:
0:98            1 (const uint)
0:98        u1: direct index for structure ( uniform uint)
0:98          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:98          Constant:
0:98            0 (const uint)
0:99      move second child to first child ( temp uint)
0:99        'out_u1' ( temp uint)
0:99        imageAtomicAdd ( temp uint)
0:99          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:99          u2: direct index for structure ( uniform 2-component vector of uint)
0:99            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:99            Constant:
0:99              1 (const uint)
0:99          u1: direct index for structure ( uniform uint)
0:99            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:99            Constant:
0:99              0 (const uint)
0:100      imageAtomicAnd ( temp uint)
0:100        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:100        u2: direct index for structure ( uniform 2-component vector of uint)
0:100          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:100          Constant:
0:100            1 (const uint)
0:100        u1: direct index for structure ( uniform uint)
0:100          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:100          Constant:
0:100            0 (const uint)
0:101      move second child to first child ( temp uint)
0:101        'out_u1' ( temp uint)
0:101        imageAtomicAnd ( temp uint)
0:101          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:101          u2: direct index for structure ( uniform 2-component vector of uint)
0:101            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:101            Constant:
0:101              1 (const uint)
0:101          u1: direct index for structure ( uniform uint)
0:101            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:101            Constant:
0:101              0 (const uint)
0:102      move second child to first child ( temp uint)
0:102        'out_u1' ( temp uint)
0:102        imageAtomicCompSwap ( temp uint)
0:102          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:102          u2: direct index for structure ( uniform 2-component vector of uint)
0:102            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:102            Constant:
0:102              1 (const uint)
0:102          u1b: direct index for structure ( uniform uint)
0:102            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:102            Constant:
0:102              3 (const uint)
0:102          u1c: direct index for structure ( uniform uint)
0:102            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:102            Constant:
0:102              4 (const uint)
0:103      move second child to first child ( temp uint)
0:103        'out_u1' ( temp uint)
0:103        imageAtomicExchange ( temp uint)
0:103          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:103          u2: direct index for structure ( uniform 2-component vector of uint)
0:103            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:103            Constant:
0:103              1 (const uint)
0:103          u1: direct index for structure ( uniform uint)
0:103            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:103            Constant:
0:103              0 (const uint)
0:104      imageAtomicMax ( temp uint)
0:104        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:104        u2: direct index for structure ( uniform 2-component vector of uint)
0:104          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:104          Constant:
0:104            1 (const uint)
0:104        u1: direct index for structure ( uniform uint)
0:104          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:104          Constant:
0:104            0 (const uint)
0:105      move second child to first child ( temp uint)
0:105        'out_u1' ( temp uint)
0:105        imageAtomicMax ( temp uint)
0:105          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:105          u2: direct index for structure ( uniform 2-component vector of uint)
0:105            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:105            Constant:
0:105              1 (const uint)
0:105          u1: direct index for structure ( uniform uint)
0:105            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:105            Constant:
0:105              0 (const uint)
0:106      imageAtomicMin ( temp uint)
0:106        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:106        u2: direct index for structure ( uniform 2-component vector of uint)
0:106          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:106          Constant:
0:106            1 (const uint)
0:106        u1: direct index for structure ( uniform uint)
0:106          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:106          Constant:
0:106            0 (const uint)
0:107      move second child to first child ( temp uint)
0:107        'out_u1' ( temp uint)
0:107        imageAtomicMin ( temp uint)
0:107          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:107          u2: direct index for structure ( uniform 2-component vector of uint)
0:107            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:107            Constant:
0:107              1 (const uint)
0:107          u1: direct index for structure ( uniform uint)
0:107            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:107            Constant:
0:107              0 (const uint)
0:108      imageAtomicOr ( temp uint)
0:108        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:108        u2: direct index for structure ( uniform 2-component vector of uint)
0:108          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:108          Constant:
0:108            1 (const uint)
0:108        u1: direct index for structure ( uniform uint)
0:108          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:108          Constant:
0:108            0 (const uint)
0:109      move second child to first child ( temp uint)
0:109        'out_u1' ( temp uint)
0:109        imageAtomicOr ( temp uint)
0:109          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:109          u2: direct index for structure ( uniform 2-component vector of uint)
0:109            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:109            Constant:
0:109              1 (const uint)
0:109          u1: direct index for structure ( uniform uint)
0:109            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:109            Constant:
0:109              0 (const uint)
0:110      imageAtomicXor ( temp uint)
0:110        'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:110        u2: direct index for structure ( uniform 2-component vector of uint)
0:110          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:110          Constant:
0:110            1 (const uint)
0:110        u1: direct index for structure ( uniform uint)
0:110          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:110          Constant:
0:110            0 (const uint)
0:111      move second child to first child ( temp uint)
0:111        'out_u1' ( temp uint)
0:111        imageAtomicXor ( temp uint)
0:111          'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:111          u2: direct index for structure ( uniform 2-component vector of uint)
0:111            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:111            Constant:
0:111              1 (const uint)
0:111          u1: direct index for structure ( uniform uint)
0:111            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:111            Constant:
0:111              0 (const uint)
0:114      imageAtomicAdd ( temp int)
0:114        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:114        i3: direct index for structure ( uniform 3-component vector of int)
0:114          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:114          Constant:
0:114            7 (const uint)
0:114        i1b: direct index for structure ( uniform int)
0:114          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:114          Constant:
0:114            8 (const uint)
0:115      move second child to first child ( temp int)
0:115        'out_i1' ( temp int)
0:115        imageAtomicAdd ( temp int)
0:115          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:115          i3: direct index for structure ( uniform 3-component vector of int)
0:115            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:115            Constant:
0:115              7 (const uint)
0:115          i1: direct index for structure ( uniform int)
0:115            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:115            Constant:
0:115              5 (const uint)
0:116      imageAtomicAnd ( temp int)
0:116        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:116        i3: direct index for structure ( uniform 3-component vector of int)
0:116          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:116          Constant:
0:116            7 (const uint)
0:116        i1b: direct index for structure ( uniform int)
0:116          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:116          Constant:
0:116            8 (const uint)
0:117      move second child to first child ( temp int)
0:117        'out_i1' ( temp int)
0:117        imageAtomicAnd ( temp int)
0:117          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:117          i3: direct index for structure ( uniform 3-component vector of int)
0:117            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:117            Constant:
0:117              7 (const uint)
0:117          i1: direct index for structure ( uniform int)
0:117            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:117            Constant:
0:117              5 (const uint)
0:118      move second child to first child ( temp int)
0:118        'out_i1' ( temp int)
0:118        imageAtomicCompSwap ( temp int)
0:118          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:118          i3: direct index for structure ( uniform 3-component vector of int)
0:118            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:118            Constant:
0:118              7 (const uint)
0:118          i1b: direct index for structure ( uniform int)
0:118            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:118            Constant:
0:118              8 (const uint)
0:118          i1c: direct index for structure ( uniform int)
0:118            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:118            Constant:
0:118              9 (const uint)
0:119      move second child to first child ( temp int)
0:119        'out_i1' ( temp int)
0:119        imageAtomicExchange ( temp int)
0:119          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:119          i3: direct index for structure ( uniform 3-component vector of int)
0:119            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:119            Constant:
0:119              7 (const uint)
0:119          i1: direct index for structure ( uniform int)
0:119            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:119            Constant:
0:119              5 (const uint)
0:120      imageAtomicMax ( temp int)
0:120        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:120        i3: direct index for structure ( uniform 3-component vector of int)
0:120          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:120          Constant:
0:120            7 (const uint)
0:120        i1b: direct index for structure ( uniform int)
0:120          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:120          Constant:
0:120            8 (const uint)
0:121      move second child to first child ( temp int)
0:121        'out_i1' ( temp int)
0:121        imageAtomicMax ( temp int)
0:121          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:121          i3: direct index for structure ( uniform 3-component vector of int)
0:121            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:121            Constant:
0:121              7 (const uint)
0:121          i1: direct index for structure ( uniform int)
0:121            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:121            Constant:
0:121              5 (const uint)
0:122      imageAtomicMin ( temp int)
0:122        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:122        i3: direct index for structure ( uniform 3-component vector of int)
0:122          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:122          Constant:
0:122            7 (const uint)
0:122        i1b: direct index for structure ( uniform int)
0:122          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:122          Constant:
0:122            8 (const uint)
0:123      move second child to first child ( temp int)
0:123        'out_i1' ( temp int)
0:123        imageAtomicMin ( temp int)
0:123          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:123          i3: direct index for structure ( uniform 3-component vector of int)
0:123            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:123            Constant:
0:123              7 (const uint)
0:123          i1: direct index for structure ( uniform int)
0:123            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:123            Constant:
0:123              5 (const uint)
0:124      imageAtomicOr ( temp int)
0:124        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:124        i3: direct index for structure ( uniform 3-component vector of int)
0:124          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:124          Constant:
0:124            7 (const uint)
0:124        i1b: direct index for structure ( uniform int)
0:124          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:124          Constant:
0:124            8 (const uint)
0:125      move second child to first child ( temp int)
0:125        'out_i1' ( temp int)
0:125        imageAtomicOr ( temp int)
0:125          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:125          i3: direct index for structure ( uniform 3-component vector of int)
0:125            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:125            Constant:
0:125              7 (const uint)
0:125          i1: direct index for structure ( uniform int)
0:125            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:125            Constant:
0:125              5 (const uint)
0:126      imageAtomicXor ( temp int)
0:126        'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:126        i3: direct index for structure ( uniform 3-component vector of int)
0:126          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:126          Constant:
0:126            7 (const uint)
0:126        i1b: direct index for structure ( uniform int)
0:126          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:126          Constant:
0:126            8 (const uint)
0:127      move second child to first child ( temp int)
0:127        'out_i1' ( temp int)
0:127        imageAtomicXor ( temp int)
0:127          'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:127          i3: direct index for structure ( uniform 3-component vector of int)
0:127            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:127            Constant:
0:127              7 (const uint)
0:127          i1: direct index for structure ( uniform int)
0:127            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:127            Constant:
0:127              5 (const uint)
0:130      imageAtomicAdd ( temp uint)
0:130        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:130        u3: direct index for structure ( uniform 3-component vector of uint)
0:130          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:130          Constant:
0:130            2 (const uint)
0:130        u1: direct index for structure ( uniform uint)
0:130          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:130          Constant:
0:130            0 (const uint)
0:131      move second child to first child ( temp uint)
0:131        'out_u1' ( temp uint)
0:131        imageAtomicAdd ( temp uint)
0:131          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:131          u3: direct index for structure ( uniform 3-component vector of uint)
0:131            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:131            Constant:
0:131              2 (const uint)
0:131          u1: direct index for structure ( uniform uint)
0:131            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:131            Constant:
0:131              0 (const uint)
0:132      imageAtomicAnd ( temp uint)
0:132        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:132        u3: direct index for structure ( uniform 3-component vector of uint)
0:132          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:132          Constant:
0:132            2 (const uint)
0:132        u1: direct index for structure ( uniform uint)
0:132          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:132          Constant:
0:132            0 (const uint)
0:133      move second child to first child ( temp uint)
0:133        'out_u1' ( temp uint)
0:133        imageAtomicAnd ( temp uint)
0:133          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:133          u3: direct index for structure ( uniform 3-component vector of uint)
0:133            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:133            Constant:
0:133              2 (const uint)
0:133          u1: direct index for structure ( uniform uint)
0:133            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:133            Constant:
0:133              0 (const uint)
0:134      move second child to first child ( temp uint)
0:134        'out_u1' ( temp uint)
0:134        imageAtomicCompSwap ( temp uint)
0:134          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:134          u3: direct index for structure ( uniform 3-component vector of uint)
0:134            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:134            Constant:
0:134              2 (const uint)
0:134          u1b: direct index for structure ( uniform uint)
0:134            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:134            Constant:
0:134              3 (const uint)
0:134          u1c: direct index for structure ( uniform uint)
0:134            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:134            Constant:
0:134              4 (const uint)
0:135      move second child to first child ( temp uint)
0:135        'out_u1' ( temp uint)
0:135        imageAtomicExchange ( temp uint)
0:135          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:135          u3: direct index for structure ( uniform 3-component vector of uint)
0:135            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:135            Constant:
0:135              2 (const uint)
0:135          u1: direct index for structure ( uniform uint)
0:135            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:135            Constant:
0:135              0 (const uint)
0:136      imageAtomicMax ( temp uint)
0:136        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:136        u3: direct index for structure ( uniform 3-component vector of uint)
0:136          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:136          Constant:
0:136            2 (const uint)
0:136        u1: direct index for structure ( uniform uint)
0:136          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:136          Constant:
0:136            0 (const uint)
0:137      move second child to first child ( temp uint)
0:137        'out_u1' ( temp uint)
0:137        imageAtomicMax ( temp uint)
0:137          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:137          u3: direct index for structure ( uniform 3-component vector of uint)
0:137            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:137            Constant:
0:137              2 (const uint)
0:137          u1: direct index for structure ( uniform uint)
0:137            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:137            Constant:
0:137              0 (const uint)
0:138      imageAtomicMin ( temp uint)
0:138        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:138        u3: direct index for structure ( uniform 3-component vector of uint)
0:138          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:138          Constant:
0:138            2 (const uint)
0:138        u1: direct index for structure ( uniform uint)
0:138          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:138          Constant:
0:138            0 (const uint)
0:139      move second child to first child ( temp uint)
0:139        'out_u1' ( temp uint)
0:139        imageAtomicMin ( temp uint)
0:139          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:139          u3: direct index for structure ( uniform 3-component vector of uint)
0:139            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:139            Constant:
0:139              2 (const uint)
0:139          u1: direct index for structure ( uniform uint)
0:139            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:139            Constant:
0:139              0 (const uint)
0:140      imageAtomicOr ( temp uint)
0:140        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:140        u3: direct index for structure ( uniform 3-component vector of uint)
0:140          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:140          Constant:
0:140            2 (const uint)
0:140        u1: direct index for structure ( uniform uint)
0:140          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:140          Constant:
0:140            0 (const uint)
0:141      move second child to first child ( temp uint)
0:141        'out_u1' ( temp uint)
0:141        imageAtomicOr ( temp uint)
0:141          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:141          u3: direct index for structure ( uniform 3-component vector of uint)
0:141            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:141            Constant:
0:141              2 (const uint)
0:141          u1: direct index for structure ( uniform uint)
0:141            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:141            Constant:
0:141              0 (const uint)
0:142      imageAtomicXor ( temp uint)
0:142        'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:142        u3: direct index for structure ( uniform 3-component vector of uint)
0:142          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:142          Constant:
0:142            2 (const uint)
0:142        u1: direct index for structure ( uniform uint)
0:142          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:142          Constant:
0:142            0 (const uint)
0:143      move second child to first child ( temp uint)
0:143        'out_u1' ( temp uint)
0:143        imageAtomicXor ( temp uint)
0:143          'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:143          u3: direct index for structure ( uniform 3-component vector of uint)
0:143            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:143            Constant:
0:143              2 (const uint)
0:143          u1: direct index for structure ( uniform uint)
0:143            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:143            Constant:
0:143              0 (const uint)
0:146      imageAtomicAdd ( temp int)
0:146        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:146        i2: direct index for structure ( uniform 2-component vector of int)
0:146          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:146          Constant:
0:146            6 (const uint)
0:146        i1b: direct index for structure ( uniform int)
0:146          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:146          Constant:
0:146            8 (const uint)
0:147      move second child to first child ( temp int)
0:147        'out_i1' ( temp int)
0:147        imageAtomicAdd ( temp int)
0:147          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:147          i2: direct index for structure ( uniform 2-component vector of int)
0:147            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:147            Constant:
0:147              6 (const uint)
0:147          i1: direct index for structure ( uniform int)
0:147            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:147            Constant:
0:147              5 (const uint)
0:148      imageAtomicAnd ( temp int)
0:148        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:148        i2: direct index for structure ( uniform 2-component vector of int)
0:148          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:148          Constant:
0:148            6 (const uint)
0:148        i1b: direct index for structure ( uniform int)
0:148          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:148          Constant:
0:148            8 (const uint)
0:149      move second child to first child ( temp int)
0:149        'out_i1' ( temp int)
0:149        imageAtomicAnd ( temp int)
0:149          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:149          i2: direct index for structure ( uniform 2-component vector of int)
0:149            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:149            Constant:
0:149              6 (const uint)
0:149          i1: direct index for structure ( uniform int)
0:149            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:149            Constant:
0:149              5 (const uint)
0:150      move second child to first child ( temp int)
0:150        'out_i1' ( temp int)
0:150        imageAtomicCompSwap ( temp int)
0:150          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:150          i2: direct index for structure ( uniform 2-component vector of int)
0:150            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:150            Constant:
0:150              6 (const uint)
0:150          i1b: direct index for structure ( uniform int)
0:150            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:150            Constant:
0:150              8 (const uint)
0:150          i1c: direct index for structure ( uniform int)
0:150            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:150            Constant:
0:150              9 (const uint)
0:151      move second child to first child ( temp int)
0:151        'out_i1' ( temp int)
0:151        imageAtomicExchange ( temp int)
0:151          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:151          i2: direct index for structure ( uniform 2-component vector of int)
0:151            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:151            Constant:
0:151              6 (const uint)
0:151          i1: direct index for structure ( uniform int)
0:151            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:151            Constant:
0:151              5 (const uint)
0:152      imageAtomicMax ( temp int)
0:152        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:152        i2: direct index for structure ( uniform 2-component vector of int)
0:152          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:152          Constant:
0:152            6 (const uint)
0:152        i1b: direct index for structure ( uniform int)
0:152          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:152          Constant:
0:152            8 (const uint)
0:153      move second child to first child ( temp int)
0:153        'out_i1' ( temp int)
0:153        imageAtomicMax ( temp int)
0:153          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:153          i2: direct index for structure ( uniform 2-component vector of int)
0:153            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:153            Constant:
0:153              6 (const uint)
0:153          i1: direct index for structure ( uniform int)
0:153            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:153            Constant:
0:153              5 (const uint)
0:154      imageAtomicMin ( temp int)
0:154        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:154        i2: direct index for structure ( uniform 2-component vector of int)
0:154          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:154          Constant:
0:154            6 (const uint)
0:154        i1b: direct index for structure ( uniform int)
0:154          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:154          Constant:
0:154            8 (const uint)
0:155      move second child to first child ( temp int)
0:155        'out_i1' ( temp int)
0:155        imageAtomicMin ( temp int)
0:155          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:155          i2: direct index for structure ( uniform 2-component vector of int)
0:155            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:155            Constant:
0:155              6 (const uint)
0:155          i1: direct index for structure ( uniform int)
0:155            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:155            Constant:
0:155              5 (const uint)
0:156      imageAtomicOr ( temp int)
0:156        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:156        i2: direct index for structure ( uniform 2-component vector of int)
0:156          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:156          Constant:
0:156            6 (const uint)
0:156        i1b: direct index for structure ( uniform int)
0:156          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:156          Constant:
0:156            8 (const uint)
0:157      move second child to first child ( temp int)
0:157        'out_i1' ( temp int)
0:157        imageAtomicOr ( temp int)
0:157          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:157          i2: direct index for structure ( uniform 2-component vector of int)
0:157            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:157            Constant:
0:157              6 (const uint)
0:157          i1: direct index for structure ( uniform int)
0:157            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:157            Constant:
0:157              5 (const uint)
0:158      imageAtomicXor ( temp int)
0:158        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:158        i2: direct index for structure ( uniform 2-component vector of int)
0:158          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:158          Constant:
0:158            6 (const uint)
0:158        i1b: direct index for structure ( uniform int)
0:158          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:158          Constant:
0:158            8 (const uint)
0:159      move second child to first child ( temp int)
0:159        'out_i1' ( temp int)
0:159        imageAtomicXor ( temp int)
0:159          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:159          i2: direct index for structure ( uniform 2-component vector of int)
0:159            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:159            Constant:
0:159              6 (const uint)
0:159          i1: direct index for structure ( uniform int)
0:159            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:159            Constant:
0:159              5 (const uint)
0:162      imageAtomicAdd ( temp uint)
0:162        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:162        u2: direct index for structure ( uniform 2-component vector of uint)
0:162          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:162          Constant:
0:162            1 (const uint)
0:162        u1: direct index for structure ( uniform uint)
0:162          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:162          Constant:
0:162            0 (const uint)
0:163      move second child to first child ( temp uint)
0:163        'out_u1' ( temp uint)
0:163        imageAtomicAdd ( temp uint)
0:163          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:163          u2: direct index for structure ( uniform 2-component vector of uint)
0:163            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:163            Constant:
0:163              1 (const uint)
0:163          u1: direct index for structure ( uniform uint)
0:163            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:163            Constant:
0:163              0 (const uint)
0:164      imageAtomicAnd ( temp uint)
0:164        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:164        u2: direct index for structure ( uniform 2-component vector of uint)
0:164          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:164          Constant:
0:164            1 (const uint)
0:164        u1: direct index for structure ( uniform uint)
0:164          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:164          Constant:
0:164            0 (const uint)
0:165      move second child to first child ( temp uint)
0:165        'out_u1' ( temp uint)
0:165        imageAtomicAnd ( temp uint)
0:165          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:165          u2: direct index for structure ( uniform 2-component vector of uint)
0:165            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:165            Constant:
0:165              1 (const uint)
0:165          u1: direct index for structure ( uniform uint)
0:165            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:165            Constant:
0:165              0 (const uint)
0:166      move second child to first child ( temp uint)
0:166        'out_u1' ( temp uint)
0:166        imageAtomicCompSwap ( temp uint)
0:166          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:166          u2: direct index for structure ( uniform 2-component vector of uint)
0:166            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:166            Constant:
0:166              1 (const uint)
0:166          u1b: direct index for structure ( uniform uint)
0:166            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:166            Constant:
0:166              3 (const uint)
0:166          u1c: direct index for structure ( uniform uint)
0:166            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:166            Constant:
0:166              4 (const uint)
0:167      move second child to first child ( temp uint)
0:167        'out_u1' ( temp uint)
0:167        imageAtomicExchange ( temp uint)
0:167          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:167          u2: direct index for structure ( uniform 2-component vector of uint)
0:167            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:167            Constant:
0:167              1 (const uint)
0:167          u1: direct index for structure ( uniform uint)
0:167            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:167            Constant:
0:167              0 (const uint)
0:168      imageAtomicMax ( temp uint)
0:168        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:168        u2: direct index for structure ( uniform 2-component vector of uint)
0:168          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:168          Constant:
0:168            1 (const uint)
0:168        u1: direct index for structure ( uniform uint)
0:168          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:168          Constant:
0:168            0 (const uint)
0:169      move second child to first child ( temp uint)
0:169        'out_u1' ( temp uint)
0:169        imageAtomicMax ( temp uint)
0:169          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:169          u2: direct index for structure ( uniform 2-component vector of uint)
0:169            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:169            Constant:
0:169              1 (const uint)
0:169          u1: direct index for structure ( uniform uint)
0:169            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:169            Constant:
0:169              0 (const uint)
0:170      imageAtomicMin ( temp uint)
0:170        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:170        u2: direct index for structure ( uniform 2-component vector of uint)
0:170          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:170          Constant:
0:170            1 (const uint)
0:170        u1: direct index for structure ( uniform uint)
0:170          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:170          Constant:
0:170            0 (const uint)
0:171      move second child to first child ( temp uint)
0:171        'out_u1' ( temp uint)
0:171        imageAtomicMin ( temp uint)
0:171          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:171          u2: direct index for structure ( uniform 2-component vector of uint)
0:171            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:171            Constant:
0:171              1 (const uint)
0:171          u1: direct index for structure ( uniform uint)
0:171            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:171            Constant:
0:171              0 (const uint)
0:172      imageAtomicOr ( temp uint)
0:172        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:172        u2: direct index for structure ( uniform 2-component vector of uint)
0:172          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:172          Constant:
0:172            1 (const uint)
0:172        u1: direct index for structure ( uniform uint)
0:172          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:172          Constant:
0:172            0 (const uint)
0:173      move second child to first child ( temp uint)
0:173        'out_u1' ( temp uint)
0:173        imageAtomicOr ( temp uint)
0:173          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:173          u2: direct index for structure ( uniform 2-component vector of uint)
0:173            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:173            Constant:
0:173              1 (const uint)
0:173          u1: direct index for structure ( uniform uint)
0:173            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:173            Constant:
0:173              0 (const uint)
0:174      imageAtomicXor ( temp uint)
0:174        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:174        u2: direct index for structure ( uniform 2-component vector of uint)
0:174          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:174          Constant:
0:174            1 (const uint)
0:174        u1: direct index for structure ( uniform uint)
0:174          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:174          Constant:
0:174            0 (const uint)
0:175      move second child to first child ( temp uint)
0:175        'out_u1' ( temp uint)
0:175        imageAtomicXor ( temp uint)
0:175          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:175          u2: direct index for structure ( uniform 2-component vector of uint)
0:175            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:175            Constant:
0:175              1 (const uint)
0:175          u1: direct index for structure ( uniform uint)
0:175            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:175            Constant:
0:175              0 (const uint)
0:178      imageAtomicAdd ( temp int)
0:178        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:178        i2: direct index for structure ( uniform 2-component vector of int)
0:178          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:178          Constant:
0:178            6 (const uint)
0:178        i1b: direct index for structure ( uniform int)
0:178          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:178          Constant:
0:178            8 (const uint)
0:179      move second child to first child ( temp int)
0:179        'out_i1' ( temp int)
0:179        imageAtomicAdd ( temp int)
0:179          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:179          i2: direct index for structure ( uniform 2-component vector of int)
0:179            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:179            Constant:
0:179              6 (const uint)
0:179          i1: direct index for structure ( uniform int)
0:179            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:179            Constant:
0:179              5 (const uint)
0:180      imageAtomicAnd ( temp int)
0:180        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:180        i2: direct index for structure ( uniform 2-component vector of int)
0:180          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:180          Constant:
0:180            6 (const uint)
0:180        i1b: direct index for structure ( uniform int)
0:180          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:180          Constant:
0:180            8 (const uint)
0:181      move second child to first child ( temp int)
0:181        'out_i1' ( temp int)
0:181        imageAtomicAnd ( temp int)
0:181          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:181          i2: direct index for structure ( uniform 2-component vector of int)
0:181            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:181            Constant:
0:181              6 (const uint)
0:181          i1: direct index for structure ( uniform int)
0:181            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:181            Constant:
0:181              5 (const uint)
0:182      move second child to first child ( temp int)
0:182        'out_i1' ( temp int)
0:182        imageAtomicCompSwap ( temp int)
0:182          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:182          i2: direct index for structure ( uniform 2-component vector of int)
0:182            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:182            Constant:
0:182              6 (const uint)
0:182          i1b: direct index for structure ( uniform int)
0:182            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:182            Constant:
0:182              8 (const uint)
0:182          i1c: direct index for structure ( uniform int)
0:182            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:182            Constant:
0:182              9 (const uint)
0:183      move second child to first child ( temp int)
0:183        'out_i1' ( temp int)
0:183        imageAtomicExchange ( temp int)
0:183          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:183          i2: direct index for structure ( uniform 2-component vector of int)
0:183            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:183            Constant:
0:183              6 (const uint)
0:183          i1: direct index for structure ( uniform int)
0:183            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:183            Constant:
0:183              5 (const uint)
0:184      imageAtomicMax ( temp int)
0:184        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:184        i2: direct index for structure ( uniform 2-component vector of int)
0:184          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:184          Constant:
0:184            6 (const uint)
0:184        i1b: direct index for structure ( uniform int)
0:184          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:184          Constant:
0:184            8 (const uint)
0:185      move second child to first child ( temp int)
0:185        'out_i1' ( temp int)
0:185        imageAtomicMax ( temp int)
0:185          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:185          i2: direct index for structure ( uniform 2-component vector of int)
0:185            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:185            Constant:
0:185              6 (const uint)
0:185          i1: direct index for structure ( uniform int)
0:185            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:185            Constant:
0:185              5 (const uint)
0:186      imageAtomicMin ( temp int)
0:186        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:186        i2: direct index for structure ( uniform 2-component vector of int)
0:186          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:186          Constant:
0:186            6 (const uint)
0:186        i1b: direct index for structure ( uniform int)
0:186          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:186          Constant:
0:186            8 (const uint)
0:187      move second child to first child ( temp int)
0:187        'out_i1' ( temp int)
0:187        imageAtomicMin ( temp int)
0:187          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:187          i2: direct index for structure ( uniform 2-component vector of int)
0:187            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:187            Constant:
0:187              6 (const uint)
0:187          i1: direct index for structure ( uniform int)
0:187            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:187            Constant:
0:187              5 (const uint)
0:188      imageAtomicOr ( temp int)
0:188        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:188        i2: direct index for structure ( uniform 2-component vector of int)
0:188          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:188          Constant:
0:188            6 (const uint)
0:188        i1b: direct index for structure ( uniform int)
0:188          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:188          Constant:
0:188            8 (const uint)
0:189      move second child to first child ( temp int)
0:189        'out_i1' ( temp int)
0:189        imageAtomicOr ( temp int)
0:189          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:189          i2: direct index for structure ( uniform 2-component vector of int)
0:189            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:189            Constant:
0:189              6 (const uint)
0:189          i1: direct index for structure ( uniform int)
0:189            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:189            Constant:
0:189              5 (const uint)
0:190      imageAtomicXor ( temp int)
0:190        'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:190        i2: direct index for structure ( uniform 2-component vector of int)
0:190          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:190          Constant:
0:190            6 (const uint)
0:190        i1b: direct index for structure ( uniform int)
0:190          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:190          Constant:
0:190            8 (const uint)
0:191      move second child to first child ( temp int)
0:191        'out_i1' ( temp int)
0:191        imageAtomicXor ( temp int)
0:191          'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:191          i2: direct index for structure ( uniform 2-component vector of int)
0:191            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:191            Constant:
0:191              6 (const uint)
0:191          i1: direct index for structure ( uniform int)
0:191            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:191            Constant:
0:191              5 (const uint)
0:194      imageAtomicAdd ( temp uint)
0:194        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:194        u2: direct index for structure ( uniform 2-component vector of uint)
0:194          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:194          Constant:
0:194            1 (const uint)
0:194        u1: direct index for structure ( uniform uint)
0:194          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:194          Constant:
0:194            0 (const uint)
0:195      move second child to first child ( temp uint)
0:195        'out_u1' ( temp uint)
0:195        imageAtomicAdd ( temp uint)
0:195          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:195          u2: direct index for structure ( uniform 2-component vector of uint)
0:195            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:195            Constant:
0:195              1 (const uint)
0:195          u1: direct index for structure ( uniform uint)
0:195            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:195            Constant:
0:195              0 (const uint)
0:196      imageAtomicAnd ( temp uint)
0:196        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:196        u2: direct index for structure ( uniform 2-component vector of uint)
0:196          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:196          Constant:
0:196            1 (const uint)
0:196        u1: direct index for structure ( uniform uint)
0:196          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:196          Constant:
0:196            0 (const uint)
0:197      move second child to first child ( temp uint)
0:197        'out_u1' ( temp uint)
0:197        imageAtomicAnd ( temp uint)
0:197          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:197          u2: direct index for structure ( uniform 2-component vector of uint)
0:197            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:197            Constant:
0:197              1 (const uint)
0:197          u1: direct index for structure ( uniform uint)
0:197            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:197            Constant:
0:197              0 (const uint)
0:198      move second child to first child ( temp uint)
0:198        'out_u1' ( temp uint)
0:198        imageAtomicCompSwap ( temp uint)
0:198          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:198          u2: direct index for structure ( uniform 2-component vector of uint)
0:198            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:198            Constant:
0:198              1 (const uint)
0:198          u1b: direct index for structure ( uniform uint)
0:198            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:198            Constant:
0:198              3 (const uint)
0:198          u1c: direct index for structure ( uniform uint)
0:198            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:198            Constant:
0:198              4 (const uint)
0:199      move second child to first child ( temp uint)
0:199        'out_u1' ( temp uint)
0:199        imageAtomicExchange ( temp uint)
0:199          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:199          u2: direct index for structure ( uniform 2-component vector of uint)
0:199            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:199            Constant:
0:199              1 (const uint)
0:199          u1: direct index for structure ( uniform uint)
0:199            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:199            Constant:
0:199              0 (const uint)
0:200      imageAtomicMax ( temp uint)
0:200        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:200        u2: direct index for structure ( uniform 2-component vector of uint)
0:200          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:200          Constant:
0:200            1 (const uint)
0:200        u1: direct index for structure ( uniform uint)
0:200          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:200          Constant:
0:200            0 (const uint)
0:201      move second child to first child ( temp uint)
0:201        'out_u1' ( temp uint)
0:201        imageAtomicMax ( temp uint)
0:201          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:201          u2: direct index for structure ( uniform 2-component vector of uint)
0:201            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:201            Constant:
0:201              1 (const uint)
0:201          u1: direct index for structure ( uniform uint)
0:201            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:201            Constant:
0:201              0 (const uint)
0:202      imageAtomicMin ( temp uint)
0:202        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:202        u2: direct index for structure ( uniform 2-component vector of uint)
0:202          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:202          Constant:
0:202            1 (const uint)
0:202        u1: direct index for structure ( uniform uint)
0:202          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:202          Constant:
0:202            0 (const uint)
0:203      move second child to first child ( temp uint)
0:203        'out_u1' ( temp uint)
0:203        imageAtomicMin ( temp uint)
0:203          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:203          u2: direct index for structure ( uniform 2-component vector of uint)
0:203            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:203            Constant:
0:203              1 (const uint)
0:203          u1: direct index for structure ( uniform uint)
0:203            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:203            Constant:
0:203              0 (const uint)
0:204      imageAtomicOr ( temp uint)
0:204        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:204        u2: direct index for structure ( uniform 2-component vector of uint)
0:204          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:204          Constant:
0:204            1 (const uint)
0:204        u1: direct index for structure ( uniform uint)
0:204          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:204          Constant:
0:204            0 (const uint)
0:205      move second child to first child ( temp uint)
0:205        'out_u1' ( temp uint)
0:205        imageAtomicOr ( temp uint)
0:205          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:205          u2: direct index for structure ( uniform 2-component vector of uint)
0:205            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:205            Constant:
0:205              1 (const uint)
0:205          u1: direct index for structure ( uniform uint)
0:205            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:205            Constant:
0:205              0 (const uint)
0:206      imageAtomicXor ( temp uint)
0:206        'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:206        u2: direct index for structure ( uniform 2-component vector of uint)
0:206          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:206          Constant:
0:206            1 (const uint)
0:206        u1: direct index for structure ( uniform uint)
0:206          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:206          Constant:
0:206            0 (const uint)
0:207      move second child to first child ( temp uint)
0:207        'out_u1' ( temp uint)
0:207        imageAtomicXor ( temp uint)
0:207          'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:207          u2: direct index for structure ( uniform 2-component vector of uint)
0:207            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:207            Constant:
0:207              1 (const uint)
0:207          u1: direct index for structure ( uniform uint)
0:207            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:207            Constant:
0:207              0 (const uint)
0:210      imageAtomicAdd ( temp int)
0:210        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:210        i1: direct index for structure ( uniform int)
0:210          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:210          Constant:
0:210            5 (const uint)
0:210        i1b: direct index for structure ( uniform int)
0:210          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:210          Constant:
0:210            8 (const uint)
0:211      move second child to first child ( temp int)
0:211        'out_i1' ( temp int)
0:211        imageAtomicAdd ( temp int)
0:211          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:211          i1: direct index for structure ( uniform int)
0:211            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:211            Constant:
0:211              5 (const uint)
0:211          i1: direct index for structure ( uniform int)
0:211            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:211            Constant:
0:211              5 (const uint)
0:212      imageAtomicAnd ( temp int)
0:212        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:212        i1: direct index for structure ( uniform int)
0:212          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:212          Constant:
0:212            5 (const uint)
0:212        i1b: direct index for structure ( uniform int)
0:212          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:212          Constant:
0:212            8 (const uint)
0:213      move second child to first child ( temp int)
0:213        'out_i1' ( temp int)
0:213        imageAtomicAnd ( temp int)
0:213          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:213          i1: direct index for structure ( uniform int)
0:213            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:213            Constant:
0:213              5 (const uint)
0:213          i1: direct index for structure ( uniform int)
0:213            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:213            Constant:
0:213              5 (const uint)
0:214      move second child to first child ( temp int)
0:214        'out_i1' ( temp int)
0:214        imageAtomicCompSwap ( temp int)
0:214          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:214          i1: direct index for structure ( uniform int)
0:214            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:214            Constant:
0:214              5 (const uint)
0:214          i1b: direct index for structure ( uniform int)
0:214            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:214            Constant:
0:214              8 (const uint)
0:214          i1c: direct index for structure ( uniform int)
0:214            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:214            Constant:
0:214              9 (const uint)
0:215      move second child to first child ( temp int)
0:215        'out_i1' ( temp int)
0:215        imageAtomicExchange ( temp int)
0:215          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:215          i1: direct index for structure ( uniform int)
0:215            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:215            Constant:
0:215              5 (const uint)
0:215          i1: direct index for structure ( uniform int)
0:215            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:215            Constant:
0:215              5 (const uint)
0:216      imageAtomicMax ( temp int)
0:216        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:216        i1: direct index for structure ( uniform int)
0:216          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:216          Constant:
0:216            5 (const uint)
0:216        i1b: direct index for structure ( uniform int)
0:216          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:216          Constant:
0:216            8 (const uint)
0:217      move second child to first child ( temp int)
0:217        'out_i1' ( temp int)
0:217        imageAtomicMax ( temp int)
0:217          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:217          i1: direct index for structure ( uniform int)
0:217            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:217            Constant:
0:217              5 (const uint)
0:217          i1: direct index for structure ( uniform int)
0:217            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:217            Constant:
0:217              5 (const uint)
0:218      imageAtomicMin ( temp int)
0:218        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:218        i1: direct index for structure ( uniform int)
0:218          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:218          Constant:
0:218            5 (const uint)
0:218        i1b: direct index for structure ( uniform int)
0:218          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:218          Constant:
0:218            8 (const uint)
0:219      move second child to first child ( temp int)
0:219        'out_i1' ( temp int)
0:219        imageAtomicMin ( temp int)
0:219          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:219          i1: direct index for structure ( uniform int)
0:219            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:219            Constant:
0:219              5 (const uint)
0:219          i1: direct index for structure ( uniform int)
0:219            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:219            Constant:
0:219              5 (const uint)
0:220      imageAtomicOr ( temp int)
0:220        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:220        i1: direct index for structure ( uniform int)
0:220          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:220          Constant:
0:220            5 (const uint)
0:220        i1b: direct index for structure ( uniform int)
0:220          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:220          Constant:
0:220            8 (const uint)
0:221      move second child to first child ( temp int)
0:221        'out_i1' ( temp int)
0:221        imageAtomicOr ( temp int)
0:221          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:221          i1: direct index for structure ( uniform int)
0:221            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:221            Constant:
0:221              5 (const uint)
0:221          i1: direct index for structure ( uniform int)
0:221            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:221            Constant:
0:221              5 (const uint)
0:222      imageAtomicXor ( temp int)
0:222        'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:222        i1: direct index for structure ( uniform int)
0:222          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:222          Constant:
0:222            5 (const uint)
0:222        i1b: direct index for structure ( uniform int)
0:222          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:222          Constant:
0:222            8 (const uint)
0:223      move second child to first child ( temp int)
0:223        'out_i1' ( temp int)
0:223        imageAtomicXor ( temp int)
0:223          'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:223          i1: direct index for structure ( uniform int)
0:223            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:223            Constant:
0:223              5 (const uint)
0:223          i1: direct index for structure ( uniform int)
0:223            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:223            Constant:
0:223              5 (const uint)
0:226      imageAtomicAdd ( temp uint)
0:226        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:226        u1: direct index for structure ( uniform uint)
0:226          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:226          Constant:
0:226            0 (const uint)
0:226        u1: direct index for structure ( uniform uint)
0:226          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:226          Constant:
0:226            0 (const uint)
0:227      move second child to first child ( temp uint)
0:227        'out_u1' ( temp uint)
0:227        imageAtomicAdd ( temp uint)
0:227          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:227          u1: direct index for structure ( uniform uint)
0:227            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:227            Constant:
0:227              0 (const uint)
0:227          u1: direct index for structure ( uniform uint)
0:227            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:227            Constant:
0:227              0 (const uint)
0:228      imageAtomicAnd ( temp uint)
0:228        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:228        u1: direct index for structure ( uniform uint)
0:228          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:228          Constant:
0:228            0 (const uint)
0:228        u1: direct index for structure ( uniform uint)
0:228          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:228          Constant:
0:228            0 (const uint)
0:229      move second child to first child ( temp uint)
0:229        'out_u1' ( temp uint)
0:229        imageAtomicAnd ( temp uint)
0:229          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:229          u1: direct index for structure ( uniform uint)
0:229            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:229            Constant:
0:229              0 (const uint)
0:229          u1: direct index for structure ( uniform uint)
0:229            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:229            Constant:
0:229              0 (const uint)
0:230      move second child to first child ( temp uint)
0:230        'out_u1' ( temp uint)
0:230        imageAtomicCompSwap ( temp uint)
0:230          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:230          u1: direct index for structure ( uniform uint)
0:230            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:230            Constant:
0:230              0 (const uint)
0:230          u1b: direct index for structure ( uniform uint)
0:230            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:230            Constant:
0:230              3 (const uint)
0:230          u1c: direct index for structure ( uniform uint)
0:230            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:230            Constant:
0:230              4 (const uint)
0:231      move second child to first child ( temp uint)
0:231        'out_u1' ( temp uint)
0:231        imageAtomicExchange ( temp uint)
0:231          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:231          u1: direct index for structure ( uniform uint)
0:231            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:231            Constant:
0:231              0 (const uint)
0:231          u1: direct index for structure ( uniform uint)
0:231            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:231            Constant:
0:231              0 (const uint)
0:232      imageAtomicMax ( temp uint)
0:232        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:232        u1: direct index for structure ( uniform uint)
0:232          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:232          Constant:
0:232            0 (const uint)
0:232        u1: direct index for structure ( uniform uint)
0:232          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:232          Constant:
0:232            0 (const uint)
0:233      move second child to first child ( temp uint)
0:233        'out_u1' ( temp uint)
0:233        imageAtomicMax ( temp uint)
0:233          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:233          u1: direct index for structure ( uniform uint)
0:233            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:233            Constant:
0:233              0 (const uint)
0:233          u1: direct index for structure ( uniform uint)
0:233            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:233            Constant:
0:233              0 (const uint)
0:234      imageAtomicMin ( temp uint)
0:234        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:234        u1: direct index for structure ( uniform uint)
0:234          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:234          Constant:
0:234            0 (const uint)
0:234        u1: direct index for structure ( uniform uint)
0:234          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:234          Constant:
0:234            0 (const uint)
0:235      move second child to first child ( temp uint)
0:235        'out_u1' ( temp uint)
0:235        imageAtomicMin ( temp uint)
0:235          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:235          u1: direct index for structure ( uniform uint)
0:235            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:235            Constant:
0:235              0 (const uint)
0:235          u1: direct index for structure ( uniform uint)
0:235            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:235            Constant:
0:235              0 (const uint)
0:236      imageAtomicOr ( temp uint)
0:236        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:236        u1: direct index for structure ( uniform uint)
0:236          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:236          Constant:
0:236            0 (const uint)
0:236        u1: direct index for structure ( uniform uint)
0:236          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:236          Constant:
0:236            0 (const uint)
0:237      move second child to first child ( temp uint)
0:237        'out_u1' ( temp uint)
0:237        imageAtomicOr ( temp uint)
0:237          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:237          u1: direct index for structure ( uniform uint)
0:237            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:237            Constant:
0:237              0 (const uint)
0:237          u1: direct index for structure ( uniform uint)
0:237            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:237            Constant:
0:237              0 (const uint)
0:238      imageAtomicXor ( temp uint)
0:238        'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:238        u1: direct index for structure ( uniform uint)
0:238          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:238          Constant:
0:238            0 (const uint)
0:238        u1: direct index for structure ( uniform uint)
0:238          'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:238          Constant:
0:238            0 (const uint)
0:239      move second child to first child ( temp uint)
0:239        'out_u1' ( temp uint)
0:239        imageAtomicXor ( temp uint)
0:239          'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:239          u1: direct index for structure ( uniform uint)
0:239            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:239            Constant:
0:239              0 (const uint)
0:239          u1: direct index for structure ( uniform uint)
0:239            'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:239            Constant:
0:239              0 (const uint)
0:242      move second child to first child ( temp 4-component vector of float)
0:242        Color: direct index for structure ( temp 4-component vector of float)
0:242          'psout' ( temp structure{ temp 4-component vector of float Color})
0:242          Constant:
0:242            0 (const int)
0:242        Constant:
0:242          1.000000
0:242          1.000000
0:242          1.000000
0:242          1.000000
0:243      Branch: Return with expression
0:243        'psout' ( temp structure{ temp 4-component vector of float Color})
0:45  Function Definition: main( ( temp void)
0:45    Function Parameters: 
0:?     Sequence
0:45      Sequence
0:45        move second child to first child ( temp 4-component vector of float)
0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
0:45          Color: direct index for structure ( temp 4-component vector of float)
0:45            Function Call: @main( ( temp structure{ temp 4-component vector of float Color})
0:45            Constant:
0:45              0 (const int)
0:?   Linker Objects
0:?     'g_sSamp' ( uniform sampler)
0:?     'g_tTex1df1' (layout( r32f) uniform image1D)
0:?     'g_tTex1di1' (layout( r32i) uniform iimage1D)
0:?     'g_tTex1du1' (layout( r32ui) uniform uimage1D)
0:?     'g_tTex2df1' (layout( r32f) uniform image2D)
0:?     'g_tTex2di1' (layout( r32i) uniform iimage2D)
0:?     'g_tTex2du1' (layout( r32ui) uniform uimage2D)
0:?     'g_tTex3df1' (layout( r32f) uniform image3D)
0:?     'g_tTex3di1' (layout( r32i) uniform iimage3D)
0:?     'g_tTex3du1' (layout( r32ui) uniform uimage3D)
0:?     'g_tTex1df1a' (layout( r32f) uniform image1DArray)
0:?     'g_tTex1di1a' (layout( r32i) uniform iimage1DArray)
0:?     'g_tTex1du1a' (layout( r32ui) uniform uimage1DArray)
0:?     'g_tTex2df1a' (layout( r32f) uniform image2DArray)
0:?     'g_tTex2di1a' (layout( r32i) uniform iimage2DArray)
0:?     'g_tTex2du1a' (layout( r32ui) uniform uimage2DArray)
0:?     'g_tBuffF' (layout( r32f) uniform imageBuffer)
0:?     'g_tBuffI' (layout( r32i) uniform iimageBuffer)
0:?     'g_tBuffU' (layout( r32ui) uniform uimageBuffer)
0:?     'anon@0' (layout( row_major std140) uniform block{ uniform uint u1,  uniform 2-component vector of uint u2,  uniform 3-component vector of uint u3,  uniform uint u1b,  uniform uint u1c,  uniform int i1,  uniform 2-component vector of int i2,  uniform 3-component vector of int i3,  uniform int i1b,  uniform int i1c})
0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)

// Module Version 10000
// Generated by (magic number): 80007
// Id's are bound by 1147

                              Capability Shader
                              Capability Image1D
                              Capability ImageBuffer
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 1117
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "main"
                              Name 8  "PS_OUTPUT"
                              MemberName 8(PS_OUTPUT) 0  "Color"
                              Name 10  "@main("
                              Name 15  "g_tTex1di1"
                              Name 21  "$Global"
                              MemberName 21($Global) 0  "u1"
                              MemberName 21($Global) 1  "u2"
                              MemberName 21($Global) 2  "u3"
                              MemberName 21($Global) 3  "u1b"
                              MemberName 21($Global) 4  "u1c"
                              MemberName 21($Global) 5  "i1"
                              MemberName 21($Global) 6  "i2"
                              MemberName 21($Global) 7  "i3"
                              MemberName 21($Global) 8  "i1b"
                              MemberName 21($Global) 9  "i1c"
                              Name 23  ""
                              Name 37  "out_i1"
                              Name 121  "g_tTex1du1"
                              Name 132  "out_u1"
                              Name 217  "g_tTex2di1"
                              Name 308  "g_tTex2du1"
                              Name 399  "g_tTex3di1"
                              Name 490  "g_tTex3du1"
                              Name 581  "g_tTex1di1a"
                              Name 670  "g_tTex1du1a"
                              Name 931  "g_tBuffI"
                              Name 1020  "g_tBuffU"
                              Name 1108  "psout"
                              Name 1117  "@entryPointOutput.Color"
                              Name 1122  "g_sSamp"
                              Name 1125  "g_tTex1df1"
                              Name 1128  "g_tTex2df1"
                              Name 1131  "g_tTex3df1"
                              Name 1134  "g_tTex1df1a"
                              Name 1137  "g_tTex2df1a"
                              Name 1140  "g_tTex2di1a"
                              Name 1143  "g_tTex2du1a"
                              Name 1146  "g_tBuffF"
                              Decorate 15(g_tTex1di1) DescriptorSet 0
                              MemberDecorate 21($Global) 0 Offset 0
                              MemberDecorate 21($Global) 1 Offset 8
                              MemberDecorate 21($Global) 2 Offset 16
                              MemberDecorate 21($Global) 3 Offset 28
                              MemberDecorate 21($Global) 4 Offset 32
                              MemberDecorate 21($Global) 5 Offset 36
                              MemberDecorate 21($Global) 6 Offset 40
                              MemberDecorate 21($Global) 7 Offset 48
                              MemberDecorate 21($Global) 8 Offset 60
                              MemberDecorate 21($Global) 9 Offset 64
                              Decorate 21($Global) Block
                              Decorate 23 DescriptorSet 0
                              Decorate 121(g_tTex1du1) DescriptorSet 0
                              Decorate 217(g_tTex2di1) DescriptorSet 0
                              Decorate 308(g_tTex2du1) DescriptorSet 0
                              Decorate 399(g_tTex3di1) DescriptorSet 0
                              Decorate 490(g_tTex3du1) DescriptorSet 0
                              Decorate 581(g_tTex1di1a) DescriptorSet 0
                              Decorate 670(g_tTex1du1a) DescriptorSet 0
                              Decorate 931(g_tBuffI) DescriptorSet 0
                              Decorate 1020(g_tBuffU) DescriptorSet 0
                              Decorate 1117(@entryPointOutput.Color) Location 0
                              Decorate 1122(g_sSamp) DescriptorSet 0
                              Decorate 1125(g_tTex1df1) DescriptorSet 0
                              Decorate 1128(g_tTex2df1) DescriptorSet 0
                              Decorate 1131(g_tTex3df1) DescriptorSet 0
                              Decorate 1134(g_tTex1df1a) DescriptorSet 0
                              Decorate 1137(g_tTex2df1a) DescriptorSet 0
                              Decorate 1140(g_tTex2di1a) DescriptorSet 0
                              Decorate 1143(g_tTex2du1a) DescriptorSet 0
                              Decorate 1146(g_tBuffF) DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
    8(PS_OUTPUT):             TypeStruct 7(fvec4)
               9:             TypeFunction 8(PS_OUTPUT)
              12:             TypeInt 32 1
              13:             TypeImage 12(int) 1D nonsampled format:R32i
              14:             TypePointer UniformConstant 13
  15(g_tTex1di1):     14(ptr) Variable UniformConstant
              16:             TypeInt 32 0
              17:             TypeVector 16(int) 2
              18:             TypeVector 16(int) 3
              19:             TypeVector 12(int) 2
              20:             TypeVector 12(int) 3
     21($Global):             TypeStruct 16(int) 17(ivec2) 18(ivec3) 16(int) 16(int) 12(int) 19(ivec2) 20(ivec3) 12(int) 12(int)
              22:             TypePointer Uniform 21($Global)
              23:     22(ptr) Variable Uniform
              24:     12(int) Constant 5
              25:             TypePointer Uniform 12(int)
              28:     12(int) Constant 8
              31:     16(int) Constant 0
              32:             TypePointer Image 12(int)
              34:     16(int) Constant 1
              36:             TypePointer Function 12(int)
              60:     12(int) Constant 9
             119:             TypeImage 16(int) 1D nonsampled format:R32ui
             120:             TypePointer UniformConstant 119
 121(g_tTex1du1):    120(ptr) Variable UniformConstant
             122:     12(int) Constant 0
             123:             TypePointer Uniform 16(int)
             128:             TypePointer Image 16(int)
             131:             TypePointer Function 16(int)
             153:     12(int) Constant 3
             156:     12(int) Constant 4
             215:             TypeImage 12(int) 2D nonsampled format:R32i
             216:             TypePointer UniformConstant 215
 217(g_tTex2di1):    216(ptr) Variable UniformConstant
             218:     12(int) Constant 6
             219:             TypePointer Uniform 19(ivec2)
             306:             TypeImage 16(int) 2D nonsampled format:R32ui
             307:             TypePointer UniformConstant 306
 308(g_tTex2du1):    307(ptr) Variable UniformConstant
             309:     12(int) Constant 1
             310:             TypePointer Uniform 17(ivec2)
             397:             TypeImage 12(int) 3D nonsampled format:R32i
             398:             TypePointer UniformConstant 397
 399(g_tTex3di1):    398(ptr) Variable UniformConstant
             400:     12(int) Constant 7
             401:             TypePointer Uniform 20(ivec3)
             488:             TypeImage 16(int) 3D nonsampled format:R32ui
             489:             TypePointer UniformConstant 488
 490(g_tTex3du1):    489(ptr) Variable UniformConstant
             491:     12(int) Constant 2
             492:             TypePointer Uniform 18(ivec3)
             579:             TypeImage 12(int) 1D array nonsampled format:R32i
             580:             TypePointer UniformConstant 579
581(g_tTex1di1a):    580(ptr) Variable UniformConstant
             668:             TypeImage 16(int) 1D array nonsampled format:R32ui
             669:             TypePointer UniformConstant 668
670(g_tTex1du1a):    669(ptr) Variable UniformConstant
             929:             TypeImage 12(int) Buffer nonsampled format:R32i
             930:             TypePointer UniformConstant 929
   931(g_tBuffI):    930(ptr) Variable UniformConstant
            1018:             TypeImage 16(int) Buffer nonsampled format:R32ui
            1019:             TypePointer UniformConstant 1018
  1020(g_tBuffU):   1019(ptr) Variable UniformConstant
            1107:             TypePointer Function 8(PS_OUTPUT)
            1109:    6(float) Constant 1065353216
            1110:    7(fvec4) ConstantComposite 1109 1109 1109 1109
            1111:             TypePointer Function 7(fvec4)
            1116:             TypePointer Output 7(fvec4)
1117(@entryPointOutput.Color):   1116(ptr) Variable Output
            1120:             TypeSampler
            1121:             TypePointer UniformConstant 1120
   1122(g_sSamp):   1121(ptr) Variable UniformConstant
            1123:             TypeImage 6(float) 1D nonsampled format:R32f
            1124:             TypePointer UniformConstant 1123
1125(g_tTex1df1):   1124(ptr) Variable UniformConstant
            1126:             TypeImage 6(float) 2D nonsampled format:R32f
            1127:             TypePointer UniformConstant 1126
1128(g_tTex2df1):   1127(ptr) Variable UniformConstant
            1129:             TypeImage 6(float) 3D nonsampled format:R32f
            1130:             TypePointer UniformConstant 1129
1131(g_tTex3df1):   1130(ptr) Variable UniformConstant
            1132:             TypeImage 6(float) 1D array nonsampled format:R32f
            1133:             TypePointer UniformConstant 1132
1134(g_tTex1df1a):   1133(ptr) Variable UniformConstant
            1135:             TypeImage 6(float) 2D array nonsampled format:R32f
            1136:             TypePointer UniformConstant 1135
1137(g_tTex2df1a):   1136(ptr) Variable UniformConstant
            1138:             TypeImage 12(int) 2D array nonsampled format:R32i
            1139:             TypePointer UniformConstant 1138
1140(g_tTex2di1a):   1139(ptr) Variable UniformConstant
            1141:             TypeImage 16(int) 2D array nonsampled format:R32ui
            1142:             TypePointer UniformConstant 1141
1143(g_tTex2du1a):   1142(ptr) Variable UniformConstant
            1144:             TypeImage 6(float) Buffer nonsampled format:R32f
            1145:             TypePointer UniformConstant 1144
  1146(g_tBuffF):   1145(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
            1118:8(PS_OUTPUT) FunctionCall 10(@main()
            1119:    7(fvec4) CompositeExtract 1118 0
                              Store 1117(@entryPointOutput.Color) 1119
                              Return
                              FunctionEnd
      10(@main():8(PS_OUTPUT) Function None 9
              11:             Label
      37(out_i1):     36(ptr) Variable Function
     132(out_u1):    131(ptr) Variable Function
     1108(psout):   1107(ptr) Variable Function
              26:     25(ptr) AccessChain 23 24
              27:     12(int) Load 26
              29:     25(ptr) AccessChain 23 28
              30:     12(int) Load 29
              33:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 27 31
              35:     12(int) AtomicIAdd 33 34 31 30
              38:     25(ptr) AccessChain 23 24
              39:     12(int) Load 38
              40:     25(ptr) AccessChain 23 24
              41:     12(int) Load 40
              42:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 39 31
              43:     12(int) AtomicIAdd 42 34 31 41
                              Store 37(out_i1) 43
              44:     25(ptr) AccessChain 23 24
              45:     12(int) Load 44
              46:     25(ptr) AccessChain 23 28
              47:     12(int) Load 46
              48:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 45 31
              49:     12(int) AtomicAnd 48 34 31 47
              50:     25(ptr) AccessChain 23 24
              51:     12(int) Load 50
              52:     25(ptr) AccessChain 23 24
              53:     12(int) Load 52
              54:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 51 31
              55:     12(int) AtomicAnd 54 34 31 53
                              Store 37(out_i1) 55
              56:     25(ptr) AccessChain 23 24
              57:     12(int) Load 56
              58:     25(ptr) AccessChain 23 28
              59:     12(int) Load 58
              61:     25(ptr) AccessChain 23 60
              62:     12(int) Load 61
              63:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 57 31
              64:     12(int) AtomicCompareExchange 63 34 31 31 62 59
                              Store 37(out_i1) 64
              65:     25(ptr) AccessChain 23 24
              66:     12(int) Load 65
              67:     25(ptr) AccessChain 23 24
              68:     12(int) Load 67
              69:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 66 31
              70:     12(int) AtomicExchange 69 34 31 68
                              Store 37(out_i1) 70
              71:     25(ptr) AccessChain 23 24
              72:     12(int) Load 71
              73:     25(ptr) AccessChain 23 28
              74:     12(int) Load 73
              75:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 72 31
              76:     12(int) AtomicSMax 75 34 31 74
              77:     25(ptr) AccessChain 23 24
              78:     12(int) Load 77
              79:     25(ptr) AccessChain 23 24
              80:     12(int) Load 79
              81:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 78 31
              82:     12(int) AtomicSMax 81 34 31 80
                              Store 37(out_i1) 82
              83:     25(ptr) AccessChain 23 24
              84:     12(int) Load 83
              85:     25(ptr) AccessChain 23 28
              86:     12(int) Load 85
              87:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 84 31
              88:     12(int) AtomicSMin 87 34 31 86
              89:     25(ptr) AccessChain 23 24
              90:     12(int) Load 89
              91:     25(ptr) AccessChain 23 24
              92:     12(int) Load 91
              93:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 90 31
              94:     12(int) AtomicSMin 93 34 31 92
                              Store 37(out_i1) 94
              95:     25(ptr) AccessChain 23 24
              96:     12(int) Load 95
              97:     25(ptr) AccessChain 23 28
              98:     12(int) Load 97
              99:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 96 31
             100:     12(int) AtomicOr 99 34 31 98
             101:     25(ptr) AccessChain 23 24
             102:     12(int) Load 101
             103:     25(ptr) AccessChain 23 24
             104:     12(int) Load 103
             105:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 102 31
             106:     12(int) AtomicOr 105 34 31 104
                              Store 37(out_i1) 106
             107:     25(ptr) AccessChain 23 24
             108:     12(int) Load 107
             109:     25(ptr) AccessChain 23 28
             110:     12(int) Load 109
             111:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 108 31
             112:     12(int) AtomicXor 111 34 31 110
             113:     25(ptr) AccessChain 23 24
             114:     12(int) Load 113
             115:     25(ptr) AccessChain 23 24
             116:     12(int) Load 115
             117:     32(ptr) ImageTexelPointer 15(g_tTex1di1) 114 31
             118:     12(int) AtomicXor 117 34 31 116
                              Store 37(out_i1) 118
             124:    123(ptr) AccessChain 23 122
             125:     16(int) Load 124
             126:    123(ptr) AccessChain 23 122
             127:     16(int) Load 126
             129:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 125 31
             130:     16(int) AtomicIAdd 129 34 31 127
             133:    123(ptr) AccessChain 23 122
             134:     16(int) Load 133
             135:    123(ptr) AccessChain 23 122
             136:     16(int) Load 135
             137:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 134 31
             138:     16(int) AtomicIAdd 137 34 31 136
                              Store 132(out_u1) 138
             139:    123(ptr) AccessChain 23 122
             140:     16(int) Load 139
             141:    123(ptr) AccessChain 23 122
             142:     16(int) Load 141
             143:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 140 31
             144:     16(int) AtomicAnd 143 34 31 142
             145:    123(ptr) AccessChain 23 122
             146:     16(int) Load 145
             147:    123(ptr) AccessChain 23 122
             148:     16(int) Load 147
             149:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 146 31
             150:     16(int) AtomicAnd 149 34 31 148
                              Store 132(out_u1) 150
             151:    123(ptr) AccessChain 23 122
             152:     16(int) Load 151
             154:    123(ptr) AccessChain 23 153
             155:     16(int) Load 154
             157:    123(ptr) AccessChain 23 156
             158:     16(int) Load 157
             159:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 152 31
             160:     16(int) AtomicCompareExchange 159 34 31 31 158 155
                              Store 132(out_u1) 160
             161:    123(ptr) AccessChain 23 122
             162:     16(int) Load 161
             163:    123(ptr) AccessChain 23 122
             164:     16(int) Load 163
             165:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 162 31
             166:     16(int) AtomicExchange 165 34 31 164
                              Store 132(out_u1) 166
             167:    123(ptr) AccessChain 23 122
             168:     16(int) Load 167
             169:    123(ptr) AccessChain 23 122
             170:     16(int) Load 169
             171:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 168 31
             172:     16(int) AtomicUMax 171 34 31 170
             173:    123(ptr) AccessChain 23 122
             174:     16(int) Load 173
             175:    123(ptr) AccessChain 23 122
             176:     16(int) Load 175
             177:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 174 31
             178:     16(int) AtomicUMax 177 34 31 176
                              Store 132(out_u1) 178
             179:    123(ptr) AccessChain 23 122
             180:     16(int) Load 179
             181:    123(ptr) AccessChain 23 122
             182:     16(int) Load 181
             183:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 180 31
             184:     16(int) AtomicUMin 183 34 31 182
             185:    123(ptr) AccessChain 23 122
             186:     16(int) Load 185
             187:    123(ptr) AccessChain 23 122
             188:     16(int) Load 187
             189:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 186 31
             190:     16(int) AtomicUMin 189 34 31 188
                              Store 132(out_u1) 190
             191:    123(ptr) AccessChain 23 122
             192:     16(int) Load 191
             193:    123(ptr) AccessChain 23 122
             194:     16(int) Load 193
             195:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 192 31
             196:     16(int) AtomicOr 195 34 31 194
             197:    123(ptr) AccessChain 23 122
             198:     16(int) Load 197
             199:    123(ptr) AccessChain 23 122
             200:     16(int) Load 199
             201:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 198 31
             202:     16(int) AtomicOr 201 34 31 200
                              Store 132(out_u1) 202
             203:    123(ptr) AccessChain 23 122
             204:     16(int) Load 203
             205:    123(ptr) AccessChain 23 122
             206:     16(int) Load 205
             207:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 204 31
             208:     16(int) AtomicXor 207 34 31 206
             209:    123(ptr) AccessChain 23 122
             210:     16(int) Load 209
             211:    123(ptr) AccessChain 23 122
             212:     16(int) Load 211
             213:    128(ptr) ImageTexelPointer 121(g_tTex1du1) 210 31
             214:     16(int) AtomicXor 213 34 31 212
                              Store 132(out_u1) 214
             220:    219(ptr) AccessChain 23 218
             221:   19(ivec2) Load 220
             222:     25(ptr) AccessChain 23 28
             223:     12(int) Load 222
             224:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 221 31
             225:     12(int) AtomicIAdd 224 34 31 223
             226:    219(ptr) AccessChain 23 218
             227:   19(ivec2) Load 226
             228:     25(ptr) AccessChain 23 24
             229:     12(int) Load 228
             230:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 227 31
             231:     12(int) AtomicIAdd 230 34 31 229
                              Store 37(out_i1) 231
             232:    219(ptr) AccessChain 23 218
             233:   19(ivec2) Load 232
             234:     25(ptr) AccessChain 23 28
             235:     12(int) Load 234
             236:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 233 31
             237:     12(int) AtomicAnd 236 34 31 235
             238:    219(ptr) AccessChain 23 218
             239:   19(ivec2) Load 238
             240:     25(ptr) AccessChain 23 24
             241:     12(int) Load 240
             242:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 239 31
             243:     12(int) AtomicAnd 242 34 31 241
                              Store 37(out_i1) 243
             244:    219(ptr) AccessChain 23 218
             245:   19(ivec2) Load 244
             246:     25(ptr) AccessChain 23 28
             247:     12(int) Load 246
             248:     25(ptr) AccessChain 23 60
             249:     12(int) Load 248
             250:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 245 31
             251:     12(int) AtomicCompareExchange 250 34 31 31 249 247
                              Store 37(out_i1) 251
             252:    219(ptr) AccessChain 23 218
             253:   19(ivec2) Load 252
             254:     25(ptr) AccessChain 23 24
             255:     12(int) Load 254
             256:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 253 31
             257:     12(int) AtomicExchange 256 34 31 255
                              Store 37(out_i1) 257
             258:    219(ptr) AccessChain 23 218
             259:   19(ivec2) Load 258
             260:     25(ptr) AccessChain 23 28
             261:     12(int) Load 260
             262:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 259 31
             263:     12(int) AtomicSMax 262 34 31 261
             264:    219(ptr) AccessChain 23 218
             265:   19(ivec2) Load 264
             266:     25(ptr) AccessChain 23 24
             267:     12(int) Load 266
             268:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 265 31
             269:     12(int) AtomicSMax 268 34 31 267
                              Store 37(out_i1) 269
             270:    219(ptr) AccessChain 23 218
             271:   19(ivec2) Load 270
             272:     25(ptr) AccessChain 23 28
             273:     12(int) Load 272
             274:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 271 31
             275:     12(int) AtomicSMin 274 34 31 273
             276:    219(ptr) AccessChain 23 218
             277:   19(ivec2) Load 276
             278:     25(ptr) AccessChain 23 24
             279:     12(int) Load 278
             280:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 277 31
             281:     12(int) AtomicSMin 280 34 31 279
                              Store 37(out_i1) 281
             282:    219(ptr) AccessChain 23 218
             283:   19(ivec2) Load 282
             284:     25(ptr) AccessChain 23 28
             285:     12(int) Load 284
             286:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 283 31
             287:     12(int) AtomicOr 286 34 31 285
             288:    219(ptr) AccessChain 23 218
             289:   19(ivec2) Load 288
             290:     25(ptr) AccessChain 23 24
             291:     12(int) Load 290
             292:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 289 31
             293:     12(int) AtomicOr 292 34 31 291
                              Store 37(out_i1) 293
             294:    219(ptr) AccessChain 23 218
             295:   19(ivec2) Load 294
             296:     25(ptr) AccessChain 23 28
             297:     12(int) Load 296
             298:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 295 31
             299:     12(int) AtomicXor 298 34 31 297
             300:    219(ptr) AccessChain 23 218
             301:   19(ivec2) Load 300
             302:     25(ptr) AccessChain 23 24
             303:     12(int) Load 302
             304:     32(ptr) ImageTexelPointer 217(g_tTex2di1) 301 31
             305:     12(int) AtomicXor 304 34 31 303
                              Store 37(out_i1) 305
             311:    310(ptr) AccessChain 23 309
             312:   17(ivec2) Load 311
             313:    123(ptr) AccessChain 23 122
             314:     16(int) Load 313
             315:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 312 31
             316:     16(int) AtomicIAdd 315 34 31 314
             317:    310(ptr) AccessChain 23 309
             318:   17(ivec2) Load 317
             319:    123(ptr) AccessChain 23 122
             320:     16(int) Load 319
             321:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 318 31
             322:     16(int) AtomicIAdd 321 34 31 320
                              Store 132(out_u1) 322
             323:    310(ptr) AccessChain 23 309
             324:   17(ivec2) Load 323
             325:    123(ptr) AccessChain 23 122
             326:     16(int) Load 325
             327:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 324 31
             328:     16(int) AtomicAnd 327 34 31 326
             329:    310(ptr) AccessChain 23 309
             330:   17(ivec2) Load 329
             331:    123(ptr) AccessChain 23 122
             332:     16(int) Load 331
             333:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 330 31
             334:     16(int) AtomicAnd 333 34 31 332
                              Store 132(out_u1) 334
             335:    310(ptr) AccessChain 23 309
             336:   17(ivec2) Load 335
             337:    123(ptr) AccessChain 23 153
             338:     16(int) Load 337
             339:    123(ptr) AccessChain 23 156
             340:     16(int) Load 339
             341:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 336 31
             342:     16(int) AtomicCompareExchange 341 34 31 31 340 338
                              Store 132(out_u1) 342
             343:    310(ptr) AccessChain 23 309
             344:   17(ivec2) Load 343
             345:    123(ptr) AccessChain 23 122
             346:     16(int) Load 345
             347:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 344 31
             348:     16(int) AtomicExchange 347 34 31 346
                              Store 132(out_u1) 348
             349:    310(ptr) AccessChain 23 309
             350:   17(ivec2) Load 349
             351:    123(ptr) AccessChain 23 122
             352:     16(int) Load 351
             353:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 350 31
             354:     16(int) AtomicUMax 353 34 31 352
             355:    310(ptr) AccessChain 23 309
             356:   17(ivec2) Load 355
             357:    123(ptr) AccessChain 23 122
             358:     16(int) Load 357
             359:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 356 31
             360:     16(int) AtomicUMax 359 34 31 358
                              Store 132(out_u1) 360
             361:    310(ptr) AccessChain 23 309
             362:   17(ivec2) Load 361
             363:    123(ptr) AccessChain 23 122
             364:     16(int) Load 363
             365:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 362 31
             366:     16(int) AtomicUMin 365 34 31 364
             367:    310(ptr) AccessChain 23 309
             368:   17(ivec2) Load 367
             369:    123(ptr) AccessChain 23 122
             370:     16(int) Load 369
             371:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 368 31
             372:     16(int) AtomicUMin 371 34 31 370
                              Store 132(out_u1) 372
             373:    310(ptr) AccessChain 23 309
             374:   17(ivec2) Load 373
             375:    123(ptr) AccessChain 23 122
             376:     16(int) Load 375
             377:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 374 31
             378:     16(int) AtomicOr 377 34 31 376
             379:    310(ptr) AccessChain 23 309
             380:   17(ivec2) Load 379
             381:    123(ptr) AccessChain 23 122
             382:     16(int) Load 381
             383:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 380 31
             384:     16(int) AtomicOr 383 34 31 382
                              Store 132(out_u1) 384
             385:    310(ptr) AccessChain 23 309
             386:   17(ivec2) Load 385
             387:    123(ptr) AccessChain 23 122
             388:     16(int) Load 387
             389:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 386 31
             390:     16(int) AtomicXor 389 34 31 388
             391:    310(ptr) AccessChain 23 309
             392:   17(ivec2) Load 391
             393:    123(ptr) AccessChain 23 122
             394:     16(int) Load 393
             395:    128(ptr) ImageTexelPointer 308(g_tTex2du1) 392 31
             396:     16(int) AtomicXor 395 34 31 394
                              Store 132(out_u1) 396
             402:    401(ptr) AccessChain 23 400
             403:   20(ivec3) Load 402
             404:     25(ptr) AccessChain 23 28
             405:     12(int) Load 404
             406:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 403 31
             407:     12(int) AtomicIAdd 406 34 31 405
             408:    401(ptr) AccessChain 23 400
             409:   20(ivec3) Load 408
             410:     25(ptr) AccessChain 23 24
             411:     12(int) Load 410
             412:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 409 31
             413:     12(int) AtomicIAdd 412 34 31 411
                              Store 37(out_i1) 413
             414:    401(ptr) AccessChain 23 400
             415:   20(ivec3) Load 414
             416:     25(ptr) AccessChain 23 28
             417:     12(int) Load 416
             418:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 415 31
             419:     12(int) AtomicAnd 418 34 31 417
             420:    401(ptr) AccessChain 23 400
             421:   20(ivec3) Load 420
             422:     25(ptr) AccessChain 23 24
             423:     12(int) Load 422
             424:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 421 31
             425:     12(int) AtomicAnd 424 34 31 423
                              Store 37(out_i1) 425
             426:    401(ptr) AccessChain 23 400
             427:   20(ivec3) Load 426
             428:     25(ptr) AccessChain 23 28
             429:     12(int) Load 428
             430:     25(ptr) AccessChain 23 60
             431:     12(int) Load 430
             432:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 427 31
             433:     12(int) AtomicCompareExchange 432 34 31 31 431 429
                              Store 37(out_i1) 433
             434:    401(ptr) AccessChain 23 400
             435:   20(ivec3) Load 434
             436:     25(ptr) AccessChain 23 24
             437:     12(int) Load 436
             438:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 435 31
             439:     12(int) AtomicExchange 438 34 31 437
                              Store 37(out_i1) 439
             440:    401(ptr) AccessChain 23 400
             441:   20(ivec3) Load 440
             442:     25(ptr) AccessChain 23 28
             443:     12(int) Load 442
             444:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 441 31
             445:     12(int) AtomicSMax 444 34 31 443
             446:    401(ptr) AccessChain 23 400
             447:   20(ivec3) Load 446
             448:     25(ptr) AccessChain 23 24
             449:     12(int) Load 448
             450:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 447 31
             451:     12(int) AtomicSMax 450 34 31 449
                              Store 37(out_i1) 451
             452:    401(ptr) AccessChain 23 400
             453:   20(ivec3) Load 452
             454:     25(ptr) AccessChain 23 28
             455:     12(int) Load 454
             456:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 453 31
             457:     12(int) AtomicSMin 456 34 31 455
             458:    401(ptr) AccessChain 23 400
             459:   20(ivec3) Load 458
             460:     25(ptr) AccessChain 23 24
             461:     12(int) Load 460
             462:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 459 31
             463:     12(int) AtomicSMin 462 34 31 461
                              Store 37(out_i1) 463
             464:    401(ptr) AccessChain 23 400
             465:   20(ivec3) Load 464
             466:     25(ptr) AccessChain 23 28
             467:     12(int) Load 466
             468:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 465 31
             469:     12(int) AtomicOr 468 34 31 467
             470:    401(ptr) AccessChain 23 400
             471:   20(ivec3) Load 470
             472:     25(ptr) AccessChain 23 24
             473:     12(int) Load 472
             474:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 471 31
             475:     12(int) AtomicOr 474 34 31 473
                              Store 37(out_i1) 475
             476:    401(ptr) AccessChain 23 400
             477:   20(ivec3) Load 476
             478:     25(ptr) AccessChain 23 28
             479:     12(int) Load 478
             480:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 477 31
             481:     12(int) AtomicXor 480 34 31 479
             482:    401(ptr) AccessChain 23 400
             483:   20(ivec3) Load 482
             484:     25(ptr) AccessChain 23 24
             485:     12(int) Load 484
             486:     32(ptr) ImageTexelPointer 399(g_tTex3di1) 483 31
             487:     12(int) AtomicXor 486 34 31 485
                              Store 37(out_i1) 487
             493:    492(ptr) AccessChain 23 491
             494:   18(ivec3) Load 493
             495:    123(ptr) AccessChain 23 122
             496:     16(int) Load 495
             497:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 494 31
             498:     16(int) AtomicIAdd 497 34 31 496
             499:    492(ptr) AccessChain 23 491
             500:   18(ivec3) Load 499
             501:    123(ptr) AccessChain 23 122
             502:     16(int) Load 501
             503:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 500 31
             504:     16(int) AtomicIAdd 503 34 31 502
                              Store 132(out_u1) 504
             505:    492(ptr) AccessChain 23 491
             506:   18(ivec3) Load 505
             507:    123(ptr) AccessChain 23 122
             508:     16(int) Load 507
             509:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 506 31
             510:     16(int) AtomicAnd 509 34 31 508
             511:    492(ptr) AccessChain 23 491
             512:   18(ivec3) Load 511
             513:    123(ptr) AccessChain 23 122
             514:     16(int) Load 513
             515:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 512 31
             516:     16(int) AtomicAnd 515 34 31 514
                              Store 132(out_u1) 516
             517:    492(ptr) AccessChain 23 491
             518:   18(ivec3) Load 517
             519:    123(ptr) AccessChain 23 153
             520:     16(int) Load 519
             521:    123(ptr) AccessChain 23 156
             522:     16(int) Load 521
             523:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 518 31
             524:     16(int) AtomicCompareExchange 523 34 31 31 522 520
                              Store 132(out_u1) 524
             525:    492(ptr) AccessChain 23 491
             526:   18(ivec3) Load 525
             527:    123(ptr) AccessChain 23 122
             528:     16(int) Load 527
             529:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 526 31
             530:     16(int) AtomicExchange 529 34 31 528
                              Store 132(out_u1) 530
             531:    492(ptr) AccessChain 23 491
             532:   18(ivec3) Load 531
             533:    123(ptr) AccessChain 23 122
             534:     16(int) Load 533
             535:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 532 31
             536:     16(int) AtomicUMax 535 34 31 534
             537:    492(ptr) AccessChain 23 491
             538:   18(ivec3) Load 537
             539:    123(ptr) AccessChain 23 122
             540:     16(int) Load 539
             541:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 538 31
             542:     16(int) AtomicUMax 541 34 31 540
                              Store 132(out_u1) 542
             543:    492(ptr) AccessChain 23 491
             544:   18(ivec3) Load 543
             545:    123(ptr) AccessChain 23 122
             546:     16(int) Load 545
             547:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 544 31
             548:     16(int) AtomicUMin 547 34 31 546
             549:    492(ptr) AccessChain 23 491
             550:   18(ivec3) Load 549
             551:    123(ptr) AccessChain 23 122
             552:     16(int) Load 551
             553:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 550 31
             554:     16(int) AtomicUMin 553 34 31 552
                              Store 132(out_u1) 554
             555:    492(ptr) AccessChain 23 491
             556:   18(ivec3) Load 555
             557:    123(ptr) AccessChain 23 122
             558:     16(int) Load 557
             559:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 556 31
             560:     16(int) AtomicOr 559 34 31 558
             561:    492(ptr) AccessChain 23 491
             562:   18(ivec3) Load 561
             563:    123(ptr) AccessChain 23 122
             564:     16(int) Load 563
             565:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 562 31
             566:     16(int) AtomicOr 565 34 31 564
                              Store 132(out_u1) 566
             567:    492(ptr) AccessChain 23 491
             568:   18(ivec3) Load 567
             569:    123(ptr) AccessChain 23 122
             570:     16(int) Load 569
             571:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 568 31
             572:     16(int) AtomicXor 571 34 31 570
             573:    492(ptr) AccessChain 23 491
             574:   18(ivec3) Load 573
             575:    123(ptr) AccessChain 23 122
             576:     16(int) Load 575
             577:    128(ptr) ImageTexelPointer 490(g_tTex3du1) 574 31
             578:     16(int) AtomicXor 577 34 31 576
                              Store 132(out_u1) 578
             582:    219(ptr) AccessChain 23 218
             583:   19(ivec2) Load 582
             584:     25(ptr) AccessChain 23 28
             585:     12(int) Load 584
             586:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 583 31
             587:     12(int) AtomicIAdd 586 34 31 585
             588:    219(ptr) AccessChain 23 218
             589:   19(ivec2) Load 588
             590:     25(ptr) AccessChain 23 24
             591:     12(int) Load 590
             592:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 589 31
             593:     12(int) AtomicIAdd 592 34 31 591
                              Store 37(out_i1) 593
             594:    219(ptr) AccessChain 23 218
             595:   19(ivec2) Load 594
             596:     25(ptr) AccessChain 23 28
             597:     12(int) Load 596
             598:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 595 31
             599:     12(int) AtomicAnd 598 34 31 597
             600:    219(ptr) AccessChain 23 218
             601:   19(ivec2) Load 600
             602:     25(ptr) AccessChain 23 24
             603:     12(int) Load 602
             604:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 601 31
             605:     12(int) AtomicAnd 604 34 31 603
                              Store 37(out_i1) 605
             606:    219(ptr) AccessChain 23 218
             607:   19(ivec2) Load 606
             608:     25(ptr) AccessChain 23 28
             609:     12(int) Load 608
             610:     25(ptr) AccessChain 23 60
             611:     12(int) Load 610
             612:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 607 31
             613:     12(int) AtomicCompareExchange 612 34 31 31 611 609
                              Store 37(out_i1) 613
             614:    219(ptr) AccessChain 23 218
             615:   19(ivec2) Load 614
             616:     25(ptr) AccessChain 23 24
             617:     12(int) Load 616
             618:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 615 31
             619:     12(int) AtomicExchange 618 34 31 617
                              Store 37(out_i1) 619
             620:    219(ptr) AccessChain 23 218
             621:   19(ivec2) Load 620
             622:     25(ptr) AccessChain 23 28
             623:     12(int) Load 622
             624:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 621 31
             625:     12(int) AtomicSMax 624 34 31 623
             626:    219(ptr) AccessChain 23 218
             627:   19(ivec2) Load 626
             628:     25(ptr) AccessChain 23 24
             629:     12(int) Load 628
             630:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 627 31
             631:     12(int) AtomicSMax 630 34 31 629
                              Store 37(out_i1) 631
             632:    219(ptr) AccessChain 23 218
             633:   19(ivec2) Load 632
             634:     25(ptr) AccessChain 23 28
             635:     12(int) Load 634
             636:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 633 31
             637:     12(int) AtomicSMin 636 34 31 635
             638:    219(ptr) AccessChain 23 218
             639:   19(ivec2) Load 638
             640:     25(ptr) AccessChain 23 24
             641:     12(int) Load 640
             642:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 639 31
             643:     12(int) AtomicSMin 642 34 31 641
                              Store 37(out_i1) 643
             644:    219(ptr) AccessChain 23 218
             645:   19(ivec2) Load 644
             646:     25(ptr) AccessChain 23 28
             647:     12(int) Load 646
             648:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 645 31
             649:     12(int) AtomicOr 648 34 31 647
             650:    219(ptr) AccessChain 23 218
             651:   19(ivec2) Load 650
             652:     25(ptr) AccessChain 23 24
             653:     12(int) Load 652
             654:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 651 31
             655:     12(int) AtomicOr 654 34 31 653
                              Store 37(out_i1) 655
             656:    219(ptr) AccessChain 23 218
             657:   19(ivec2) Load 656
             658:     25(ptr) AccessChain 23 28
             659:     12(int) Load 658
             660:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 657 31
             661:     12(int) AtomicXor 660 34 31 659
             662:    219(ptr) AccessChain 23 218
             663:   19(ivec2) Load 662
             664:     25(ptr) AccessChain 23 24
             665:     12(int) Load 664
             666:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 663 31
             667:     12(int) AtomicXor 666 34 31 665
                              Store 37(out_i1) 667
             671:    310(ptr) AccessChain 23 309
             672:   17(ivec2) Load 671
             673:    123(ptr) AccessChain 23 122
             674:     16(int) Load 673
             675:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 672 31
             676:     16(int) AtomicIAdd 675 34 31 674
             677:    310(ptr) AccessChain 23 309
             678:   17(ivec2) Load 677
             679:    123(ptr) AccessChain 23 122
             680:     16(int) Load 679
             681:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 678 31
             682:     16(int) AtomicIAdd 681 34 31 680
                              Store 132(out_u1) 682
             683:    310(ptr) AccessChain 23 309
             684:   17(ivec2) Load 683
             685:    123(ptr) AccessChain 23 122
             686:     16(int) Load 685
             687:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 684 31
             688:     16(int) AtomicAnd 687 34 31 686
             689:    310(ptr) AccessChain 23 309
             690:   17(ivec2) Load 689
             691:    123(ptr) AccessChain 23 122
             692:     16(int) Load 691
             693:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 690 31
             694:     16(int) AtomicAnd 693 34 31 692
                              Store 132(out_u1) 694
             695:    310(ptr) AccessChain 23 309
             696:   17(ivec2) Load 695
             697:    123(ptr) AccessChain 23 153
             698:     16(int) Load 697
             699:    123(ptr) AccessChain 23 156
             700:     16(int) Load 699
             701:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 696 31
             702:     16(int) AtomicCompareExchange 701 34 31 31 700 698
                              Store 132(out_u1) 702
             703:    310(ptr) AccessChain 23 309
             704:   17(ivec2) Load 703
             705:    123(ptr) AccessChain 23 122
             706:     16(int) Load 705
             707:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 704 31
             708:     16(int) AtomicExchange 707 34 31 706
                              Store 132(out_u1) 708
             709:    310(ptr) AccessChain 23 309
             710:   17(ivec2) Load 709
             711:    123(ptr) AccessChain 23 122
             712:     16(int) Load 711
             713:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 710 31
             714:     16(int) AtomicUMax 713 34 31 712
             715:    310(ptr) AccessChain 23 309
             716:   17(ivec2) Load 715
             717:    123(ptr) AccessChain 23 122
             718:     16(int) Load 717
             719:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 716 31
             720:     16(int) AtomicUMax 719 34 31 718
                              Store 132(out_u1) 720
             721:    310(ptr) AccessChain 23 309
             722:   17(ivec2) Load 721
             723:    123(ptr) AccessChain 23 122
             724:     16(int) Load 723
             725:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 722 31
             726:     16(int) AtomicUMin 725 34 31 724
             727:    310(ptr) AccessChain 23 309
             728:   17(ivec2) Load 727
             729:    123(ptr) AccessChain 23 122
             730:     16(int) Load 729
             731:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 728 31
             732:     16(int) AtomicUMin 731 34 31 730
                              Store 132(out_u1) 732
             733:    310(ptr) AccessChain 23 309
             734:   17(ivec2) Load 733
             735:    123(ptr) AccessChain 23 122
             736:     16(int) Load 735
             737:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 734 31
             738:     16(int) AtomicOr 737 34 31 736
             739:    310(ptr) AccessChain 23 309
             740:   17(ivec2) Load 739
             741:    123(ptr) AccessChain 23 122
             742:     16(int) Load 741
             743:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 740 31
             744:     16(int) AtomicOr 743 34 31 742
                              Store 132(out_u1) 744
             745:    310(ptr) AccessChain 23 309
             746:   17(ivec2) Load 745
             747:    123(ptr) AccessChain 23 122
             748:     16(int) Load 747
             749:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 746 31
             750:     16(int) AtomicXor 749 34 31 748
             751:    310(ptr) AccessChain 23 309
             752:   17(ivec2) Load 751
             753:    123(ptr) AccessChain 23 122
             754:     16(int) Load 753
             755:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 752 31
             756:     16(int) AtomicXor 755 34 31 754
                              Store 132(out_u1) 756
             757:    219(ptr) AccessChain 23 218
             758:   19(ivec2) Load 757
             759:     25(ptr) AccessChain 23 28
             760:     12(int) Load 759
             761:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 758 31
             762:     12(int) AtomicIAdd 761 34 31 760
             763:    219(ptr) AccessChain 23 218
             764:   19(ivec2) Load 763
             765:     25(ptr) AccessChain 23 24
             766:     12(int) Load 765
             767:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 764 31
             768:     12(int) AtomicIAdd 767 34 31 766
                              Store 37(out_i1) 768
             769:    219(ptr) AccessChain 23 218
             770:   19(ivec2) Load 769
             771:     25(ptr) AccessChain 23 28
             772:     12(int) Load 771
             773:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 770 31
             774:     12(int) AtomicAnd 773 34 31 772
             775:    219(ptr) AccessChain 23 218
             776:   19(ivec2) Load 775
             777:     25(ptr) AccessChain 23 24
             778:     12(int) Load 777
             779:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 776 31
             780:     12(int) AtomicAnd 779 34 31 778
                              Store 37(out_i1) 780
             781:    219(ptr) AccessChain 23 218
             782:   19(ivec2) Load 781
             783:     25(ptr) AccessChain 23 28
             784:     12(int) Load 783
             785:     25(ptr) AccessChain 23 60
             786:     12(int) Load 785
             787:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 782 31
             788:     12(int) AtomicCompareExchange 787 34 31 31 786 784
                              Store 37(out_i1) 788
             789:    219(ptr) AccessChain 23 218
             790:   19(ivec2) Load 789
             791:     25(ptr) AccessChain 23 24
             792:     12(int) Load 791
             793:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 790 31
             794:     12(int) AtomicExchange 793 34 31 792
                              Store 37(out_i1) 794
             795:    219(ptr) AccessChain 23 218
             796:   19(ivec2) Load 795
             797:     25(ptr) AccessChain 23 28
             798:     12(int) Load 797
             799:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 796 31
             800:     12(int) AtomicSMax 799 34 31 798
             801:    219(ptr) AccessChain 23 218
             802:   19(ivec2) Load 801
             803:     25(ptr) AccessChain 23 24
             804:     12(int) Load 803
             805:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 802 31
             806:     12(int) AtomicSMax 805 34 31 804
                              Store 37(out_i1) 806
             807:    219(ptr) AccessChain 23 218
             808:   19(ivec2) Load 807
             809:     25(ptr) AccessChain 23 28
             810:     12(int) Load 809
             811:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 808 31
             812:     12(int) AtomicSMin 811 34 31 810
             813:    219(ptr) AccessChain 23 218
             814:   19(ivec2) Load 813
             815:     25(ptr) AccessChain 23 24
             816:     12(int) Load 815
             817:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 814 31
             818:     12(int) AtomicSMin 817 34 31 816
                              Store 37(out_i1) 818
             819:    219(ptr) AccessChain 23 218
             820:   19(ivec2) Load 819
             821:     25(ptr) AccessChain 23 28
             822:     12(int) Load 821
             823:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 820 31
             824:     12(int) AtomicOr 823 34 31 822
             825:    219(ptr) AccessChain 23 218
             826:   19(ivec2) Load 825
             827:     25(ptr) AccessChain 23 24
             828:     12(int) Load 827
             829:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 826 31
             830:     12(int) AtomicOr 829 34 31 828
                              Store 37(out_i1) 830
             831:    219(ptr) AccessChain 23 218
             832:   19(ivec2) Load 831
             833:     25(ptr) AccessChain 23 28
             834:     12(int) Load 833
             835:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 832 31
             836:     12(int) AtomicXor 835 34 31 834
             837:    219(ptr) AccessChain 23 218
             838:   19(ivec2) Load 837
             839:     25(ptr) AccessChain 23 24
             840:     12(int) Load 839
             841:     32(ptr) ImageTexelPointer 581(g_tTex1di1a) 838 31
             842:     12(int) AtomicXor 841 34 31 840
                              Store 37(out_i1) 842
             843:    310(ptr) AccessChain 23 309
             844:   17(ivec2) Load 843
             845:    123(ptr) AccessChain 23 122
             846:     16(int) Load 845
             847:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 844 31
             848:     16(int) AtomicIAdd 847 34 31 846
             849:    310(ptr) AccessChain 23 309
             850:   17(ivec2) Load 849
             851:    123(ptr) AccessChain 23 122
             852:     16(int) Load 851
             853:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 850 31
             854:     16(int) AtomicIAdd 853 34 31 852
                              Store 132(out_u1) 854
             855:    310(ptr) AccessChain 23 309
             856:   17(ivec2) Load 855
             857:    123(ptr) AccessChain 23 122
             858:     16(int) Load 857
             859:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 856 31
             860:     16(int) AtomicAnd 859 34 31 858
             861:    310(ptr) AccessChain 23 309
             862:   17(ivec2) Load 861
             863:    123(ptr) AccessChain 23 122
             864:     16(int) Load 863
             865:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 862 31
             866:     16(int) AtomicAnd 865 34 31 864
                              Store 132(out_u1) 866
             867:    310(ptr) AccessChain 23 309
             868:   17(ivec2) Load 867
             869:    123(ptr) AccessChain 23 153
             870:     16(int) Load 869
             871:    123(ptr) AccessChain 23 156
             872:     16(int) Load 871
             873:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 868 31
             874:     16(int) AtomicCompareExchange 873 34 31 31 872 870
                              Store 132(out_u1) 874
             875:    310(ptr) AccessChain 23 309
             876:   17(ivec2) Load 875
             877:    123(ptr) AccessChain 23 122
             878:     16(int) Load 877
             879:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 876 31
             880:     16(int) AtomicExchange 879 34 31 878
                              Store 132(out_u1) 880
             881:    310(ptr) AccessChain 23 309
             882:   17(ivec2) Load 881
             883:    123(ptr) AccessChain 23 122
             884:     16(int) Load 883
             885:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 882 31
             886:     16(int) AtomicUMax 885 34 31 884
             887:    310(ptr) AccessChain 23 309
             888:   17(ivec2) Load 887
             889:    123(ptr) AccessChain 23 122
             890:     16(int) Load 889
             891:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 888 31
             892:     16(int) AtomicUMax 891 34 31 890
                              Store 132(out_u1) 892
             893:    310(ptr) AccessChain 23 309
             894:   17(ivec2) Load 893
             895:    123(ptr) AccessChain 23 122
             896:     16(int) Load 895
             897:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 894 31
             898:     16(int) AtomicUMin 897 34 31 896
             899:    310(ptr) AccessChain 23 309
             900:   17(ivec2) Load 899
             901:    123(ptr) AccessChain 23 122
             902:     16(int) Load 901
             903:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 900 31
             904:     16(int) AtomicUMin 903 34 31 902
                              Store 132(out_u1) 904
             905:    310(ptr) AccessChain 23 309
             906:   17(ivec2) Load 905
             907:    123(ptr) AccessChain 23 122
             908:     16(int) Load 907
             909:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 906 31
             910:     16(int) AtomicOr 909 34 31 908
             911:    310(ptr) AccessChain 23 309
             912:   17(ivec2) Load 911
             913:    123(ptr) AccessChain 23 122
             914:     16(int) Load 913
             915:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 912 31
             916:     16(int) AtomicOr 915 34 31 914
                              Store 132(out_u1) 916
             917:    310(ptr) AccessChain 23 309
             918:   17(ivec2) Load 917
             919:    123(ptr) AccessChain 23 122
             920:     16(int) Load 919
             921:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 918 31
             922:     16(int) AtomicXor 921 34 31 920
             923:    310(ptr) AccessChain 23 309
             924:   17(ivec2) Load 923
             925:    123(ptr) AccessChain 23 122
             926:     16(int) Load 925
             927:    128(ptr) ImageTexelPointer 670(g_tTex1du1a) 924 31
             928:     16(int) AtomicXor 927 34 31 926
                              Store 132(out_u1) 928
             932:     25(ptr) AccessChain 23 24
             933:     12(int) Load 932
             934:     25(ptr) AccessChain 23 28
             935:     12(int) Load 934
             936:     32(ptr) ImageTexelPointer 931(g_tBuffI) 933 31
             937:     12(int) AtomicIAdd 936 34 31 935
             938:     25(ptr) AccessChain 23 24
             939:     12(int) Load 938
             940:     25(ptr) AccessChain 23 24
             941:     12(int) Load 940
             942:     32(ptr) ImageTexelPointer 931(g_tBuffI) 939 31
             943:     12(int) AtomicIAdd 942 34 31 941
                              Store 37(out_i1) 943
             944:     25(ptr) AccessChain 23 24
             945:     12(int) Load 944
             946:     25(ptr) AccessChain 23 28
             947:     12(int) Load 946
             948:     32(ptr) ImageTexelPointer 931(g_tBuffI) 945 31
             949:     12(int) AtomicAnd 948 34 31 947
             950:     25(ptr) AccessChain 23 24
             951:     12(int) Load 950
             952:     25(ptr) AccessChain 23 24
             953:     12(int) Load 952
             954:     32(ptr) ImageTexelPointer 931(g_tBuffI) 951 31
             955:     12(int) AtomicAnd 954 34 31 953
                              Store 37(out_i1) 955
             956:     25(ptr) AccessChain 23 24
             957:     12(int) Load 956
             958:     25(ptr) AccessChain 23 28
             959:     12(int) Load 958
             960:     25(ptr) AccessChain 23 60
             961:     12(int) Load 960
             962:     32(ptr) ImageTexelPointer 931(g_tBuffI) 957 31
             963:     12(int) AtomicCompareExchange 962 34 31 31 961 959
                              Store 37(out_i1) 963
             964:     25(ptr) AccessChain 23 24
             965:     12(int) Load 964
             966:     25(ptr) AccessChain 23 24
             967:     12(int) Load 966
             968:     32(ptr) ImageTexelPointer 931(g_tBuffI) 965 31
             969:     12(int) AtomicExchange 968 34 31 967
                              Store 37(out_i1) 969
             970:     25(ptr) AccessChain 23 24
             971:     12(int) Load 970
             972:     25(ptr) AccessChain 23 28
             973:     12(int) Load 972
             974:     32(ptr) ImageTexelPointer 931(g_tBuffI) 971 31
             975:     12(int) AtomicSMax 974 34 31 973
             976:     25(ptr) AccessChain 23 24
             977:     12(int) Load 976
             978:     25(ptr) AccessChain 23 24
             979:     12(int) Load 978
             980:     32(ptr) ImageTexelPointer 931(g_tBuffI) 977 31
             981:     12(int) AtomicSMax 980 34 31 979
                              Store 37(out_i1) 981
             982:     25(ptr) AccessChain 23 24
             983:     12(int) Load 982
             984:     25(ptr) AccessChain 23 28
             985:     12(int) Load 984
             986:     32(ptr) ImageTexelPointer 931(g_tBuffI) 983 31
             987:     12(int) AtomicSMin 986 34 31 985
             988:     25(ptr) AccessChain 23 24
             989:     12(int) Load 988
             990:     25(ptr) AccessChain 23 24
             991:     12(int) Load 990
             992:     32(ptr) ImageTexelPointer 931(g_tBuffI) 989 31
             993:     12(int) AtomicSMin 992 34 31 991
                              Store 37(out_i1) 993
             994:     25(ptr) AccessChain 23 24
             995:     12(int) Load 994
             996:     25(ptr) AccessChain 23 28
             997:     12(int) Load 996
             998:     32(ptr) ImageTexelPointer 931(g_tBuffI) 995 31
             999:     12(int) AtomicOr 998 34 31 997
            1000:     25(ptr) AccessChain 23 24
            1001:     12(int) Load 1000
            1002:     25(ptr) AccessChain 23 24
            1003:     12(int) Load 1002
            1004:     32(ptr) ImageTexelPointer 931(g_tBuffI) 1001 31
            1005:     12(int) AtomicOr 1004 34 31 1003
                              Store 37(out_i1) 1005
            1006:     25(ptr) AccessChain 23 24
            1007:     12(int) Load 1006
            1008:     25(ptr) AccessChain 23 28
            1009:     12(int) Load 1008
            1010:     32(ptr) ImageTexelPointer 931(g_tBuffI) 1007 31
            1011:     12(int) AtomicXor 1010 34 31 1009
            1012:     25(ptr) AccessChain 23 24
            1013:     12(int) Load 1012
            1014:     25(ptr) AccessChain 23 24
            1015:     12(int) Load 1014
            1016:     32(ptr) ImageTexelPointer 931(g_tBuffI) 1013 31
            1017:     12(int) AtomicXor 1016 34 31 1015
                              Store 37(out_i1) 1017
            1021:    123(ptr) AccessChain 23 122
            1022:     16(int) Load 1021
            1023:    123(ptr) AccessChain 23 122
            1024:     16(int) Load 1023
            1025:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1022 31
            1026:     16(int) AtomicIAdd 1025 34 31 1024
            1027:    123(ptr) AccessChain 23 122
            1028:     16(int) Load 1027
            1029:    123(ptr) AccessChain 23 122
            1030:     16(int) Load 1029
            1031:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1028 31
            1032:     16(int) AtomicIAdd 1031 34 31 1030
                              Store 132(out_u1) 1032
            1033:    123(ptr) AccessChain 23 122
            1034:     16(int) Load 1033
            1035:    123(ptr) AccessChain 23 122
            1036:     16(int) Load 1035
            1037:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1034 31
            1038:     16(int) AtomicAnd 1037 34 31 1036
            1039:    123(ptr) AccessChain 23 122
            1040:     16(int) Load 1039
            1041:    123(ptr) AccessChain 23 122
            1042:     16(int) Load 1041
            1043:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1040 31
            1044:     16(int) AtomicAnd 1043 34 31 1042
                              Store 132(out_u1) 1044
            1045:    123(ptr) AccessChain 23 122
            1046:     16(int) Load 1045
            1047:    123(ptr) AccessChain 23 153
            1048:     16(int) Load 1047
            1049:    123(ptr) AccessChain 23 156
            1050:     16(int) Load 1049
            1051:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1046 31
            1052:     16(int) AtomicCompareExchange 1051 34 31 31 1050 1048
                              Store 132(out_u1) 1052
            1053:    123(ptr) AccessChain 23 122
            1054:     16(int) Load 1053
            1055:    123(ptr) AccessChain 23 122
            1056:     16(int) Load 1055
            1057:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1054 31
            1058:     16(int) AtomicExchange 1057 34 31 1056
                              Store 132(out_u1) 1058
            1059:    123(ptr) AccessChain 23 122
            1060:     16(int) Load 1059
            1061:    123(ptr) AccessChain 23 122
            1062:     16(int) Load 1061
            1063:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1060 31
            1064:     16(int) AtomicUMax 1063 34 31 1062
            1065:    123(ptr) AccessChain 23 122
            1066:     16(int) Load 1065
            1067:    123(ptr) AccessChain 23 122
            1068:     16(int) Load 1067
            1069:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1066 31
            1070:     16(int) AtomicUMax 1069 34 31 1068
                              Store 132(out_u1) 1070
            1071:    123(ptr) AccessChain 23 122
            1072:     16(int) Load 1071
            1073:    123(ptr) AccessChain 23 122
            1074:     16(int) Load 1073
            1075:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1072 31
            1076:     16(int) AtomicUMin 1075 34 31 1074
            1077:    123(ptr) AccessChain 23 122
            1078:     16(int) Load 1077
            1079:    123(ptr) AccessChain 23 122
            1080:     16(int) Load 1079
            1081:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1078 31
            1082:     16(int) AtomicUMin 1081 34 31 1080
                              Store 132(out_u1) 1082
            1083:    123(ptr) AccessChain 23 122
            1084:     16(int) Load 1083
            1085:    123(ptr) AccessChain 23 122
            1086:     16(int) Load 1085
            1087:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1084 31
            1088:     16(int) AtomicOr 1087 34 31 1086
            1089:    123(ptr) AccessChain 23 122
            1090:     16(int) Load 1089
            1091:    123(ptr) AccessChain 23 122
            1092:     16(int) Load 1091
            1093:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1090 31
            1094:     16(int) AtomicOr 1093 34 31 1092
                              Store 132(out_u1) 1094
            1095:    123(ptr) AccessChain 23 122
            1096:     16(int) Load 1095
            1097:    123(ptr) AccessChain 23 122
            1098:     16(int) Load 1097
            1099:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1096 31
            1100:     16(int) AtomicXor 1099 34 31 1098
            1101:    123(ptr) AccessChain 23 122
            1102:     16(int) Load 1101
            1103:    123(ptr) AccessChain 23 122
            1104:     16(int) Load 1103
            1105:    128(ptr) ImageTexelPointer 1020(g_tBuffU) 1102 31
            1106:     16(int) AtomicXor 1105 34 31 1104
                              Store 132(out_u1) 1106
            1112:   1111(ptr) AccessChain 1108(psout) 122
                              Store 1112 1110
            1113:8(PS_OUTPUT) Load 1108(psout)
                              ReturnValue 1113
                              FunctionEnd
