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): 8000a
// 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
                              Decorate 15(g_tTex1di1) Binding 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 23 Binding 10
                              Decorate 121(g_tTex1du1) DescriptorSet 0
                              Decorate 121(g_tTex1du1) Binding 1
                              Decorate 217(g_tTex2di1) DescriptorSet 0
                              Decorate 217(g_tTex2di1) Binding 2
                              Decorate 308(g_tTex2du1) DescriptorSet 0
                              Decorate 308(g_tTex2du1) Binding 3
                              Decorate 399(g_tTex3di1) DescriptorSet 0
                              Decorate 399(g_tTex3di1) Binding 4
                              Decorate 490(g_tTex3du1) DescriptorSet 0
                              Decorate 490(g_tTex3du1) Binding 5
                              Decorate 581(g_tTex1di1a) DescriptorSet 0
                              Decorate 581(g_tTex1di1a) Binding 6
                              Decorate 670(g_tTex1du1a) DescriptorSet 0
                              Decorate 670(g_tTex1du1a) Binding 7
                              Decorate 931(g_tBuffI) DescriptorSet 0
                              Decorate 931(g_tBuffI) Binding 8
                              Decorate 1020(g_tBuffU) DescriptorSet 0
                              Decorate 1020(g_tBuffU) Binding 9
                              Decorate 1117(@entryPointOutput.Color) Location 0
                              Decorate 1122(g_sSamp) DescriptorSet 0
                              Decorate 1122(g_sSamp) Binding 0
                              Decorate 1125(g_tTex1df1) DescriptorSet 0
                              Decorate 1125(g_tTex1df1) Binding 0
                              Decorate 1128(g_tTex2df1) DescriptorSet 0
                              Decorate 1128(g_tTex2df1) Binding 0
                              Decorate 1131(g_tTex3df1) DescriptorSet 0
                              Decorate 1131(g_tTex3df1) Binding 0
                              Decorate 1134(g_tTex1df1a) DescriptorSet 0
                              Decorate 1134(g_tTex1df1a) Binding 0
                              Decorate 1137(g_tTex2df1a) DescriptorSet 0
                              Decorate 1137(g_tTex2df1a) Binding 0
                              Decorate 1140(g_tTex2di1a) DescriptorSet 0
                              Decorate 1140(g_tTex2di1a) Binding 0
                              Decorate 1143(g_tTex2du1a) DescriptorSet 0
                              Decorate 1143(g_tTex2du1a) Binding 0
                              Decorate 1146(g_tBuffF) DescriptorSet 0
                              Decorate 1146(g_tBuffF) Binding 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
