glsl.450.subgroupArithmetic.comp
Shader version: 450
Requested GL_KHR_shader_subgroup_arithmetic
Requested GL_KHR_shader_subgroup_basic
local_size = (8, 1, 1)
0:? Sequence
0:15  Function Definition: main( ( global void)
0:15    Function Parameters: 
0:17    Sequence
0:17      Sequence
0:17        move second child to first child ( temp uint)
0:17          'invocation' ( temp uint)
0:17          mod ( temp uint)
0:17            add ( temp uint)
0:17              'gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
0:17              'gl_SubgroupSize' ( in uint SubgroupSize)
0:17            Constant:
0:17              4 (const uint)
0:19      move second child to first child ( temp float)
0:19        direct index ( temp float)
0:19          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:19            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19              'invocation' ( temp uint)
0:19            Constant:
0:19              0 (const int)
0:19          Constant:
0:19            0 (const int)
0:19        subgroupAdd ( global float)
0:19          direct index ( temp float)
0:19            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:19              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19                Constant:
0:19                  0 (const int)
0:19              Constant:
0:19                0 (const int)
0:19            Constant:
0:19              0 (const int)
0:20      move second child to first child ( temp 2-component vector of float)
0:20        vector swizzle ( temp 2-component vector of float)
0:20          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:20            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20              'invocation' ( temp uint)
0:20            Constant:
0:20              0 (const int)
0:20          Sequence
0:20            Constant:
0:20              0 (const int)
0:20            Constant:
0:20              1 (const int)
0:20        subgroupAdd ( global 2-component vector of float)
0:20          vector swizzle ( temp 2-component vector of float)
0:20            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:20              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20                Constant:
0:20                  1 (const int)
0:20              Constant:
0:20                0 (const int)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:21      move second child to first child ( temp 3-component vector of float)
0:21        vector swizzle ( temp 3-component vector of float)
0:21          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:21            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21              'invocation' ( temp uint)
0:21            Constant:
0:21              0 (const int)
0:21          Sequence
0:21            Constant:
0:21              0 (const int)
0:21            Constant:
0:21              1 (const int)
0:21            Constant:
0:21              2 (const int)
0:21        subgroupAdd ( global 3-component vector of float)
0:21          vector swizzle ( temp 3-component vector of float)
0:21            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:21              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21                Constant:
0:21                  2 (const int)
0:21              Constant:
0:21                0 (const int)
0:21            Sequence
0:21              Constant:
0:21                0 (const int)
0:21              Constant:
0:21                1 (const int)
0:21              Constant:
0:21                2 (const int)
0:22      move second child to first child ( temp 4-component vector of float)
0:22        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:22          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22            'invocation' ( temp uint)
0:22          Constant:
0:22            0 (const int)
0:22        subgroupAdd ( global 4-component vector of float)
0:22          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:22            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22              Constant:
0:22                3 (const int)
0:22            Constant:
0:22              0 (const int)
0:24      move second child to first child ( temp int)
0:24        direct index ( temp int)
0:24          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:24            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24              'invocation' ( temp uint)
0:24            Constant:
0:24              1 (const int)
0:24          Constant:
0:24            0 (const int)
0:24        subgroupAdd ( global int)
0:24          direct index ( temp int)
0:24            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:24              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24                Constant:
0:24                  0 (const int)
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              0 (const int)
0:25      move second child to first child ( temp 2-component vector of int)
0:25        vector swizzle ( temp 2-component vector of int)
0:25          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:25            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25              'invocation' ( temp uint)
0:25            Constant:
0:25              1 (const int)
0:25          Sequence
0:25            Constant:
0:25              0 (const int)
0:25            Constant:
0:25              1 (const int)
0:25        subgroupAdd ( global 2-component vector of int)
0:25          vector swizzle ( temp 2-component vector of int)
0:25            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:25              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25                Constant:
0:25                  1 (const int)
0:25              Constant:
0:25                1 (const int)
0:25            Sequence
0:25              Constant:
0:25                0 (const int)
0:25              Constant:
0:25                1 (const int)
0:26      move second child to first child ( temp 3-component vector of int)
0:26        vector swizzle ( temp 3-component vector of int)
0:26          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:26            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26              'invocation' ( temp uint)
0:26            Constant:
0:26              1 (const int)
0:26          Sequence
0:26            Constant:
0:26              0 (const int)
0:26            Constant:
0:26              1 (const int)
0:26            Constant:
0:26              2 (const int)
0:26        subgroupAdd ( global 3-component vector of int)
0:26          vector swizzle ( temp 3-component vector of int)
0:26            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:26              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26                Constant:
0:26                  2 (const int)
0:26              Constant:
0:26                1 (const int)
0:26            Sequence
0:26              Constant:
0:26                0 (const int)
0:26              Constant:
0:26                1 (const int)
0:26              Constant:
0:26                2 (const int)
0:27      move second child to first child ( temp 4-component vector of int)
0:27        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:27          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27            'invocation' ( temp uint)
0:27          Constant:
0:27            1 (const int)
0:27        subgroupAdd ( global 4-component vector of int)
0:27          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:27            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27              Constant:
0:27                3 (const int)
0:27            Constant:
0:27              1 (const int)
0:29      move second child to first child ( temp uint)
0:29        direct index ( temp uint)
0:29          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:29            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29              'invocation' ( temp uint)
0:29            Constant:
0:29              2 (const int)
0:29          Constant:
0:29            0 (const int)
0:29        subgroupAdd ( global uint)
0:29          direct index ( temp uint)
0:29            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:29              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29                Constant:
0:29                  0 (const int)
0:29              Constant:
0:29                2 (const int)
0:29            Constant:
0:29              0 (const int)
0:30      move second child to first child ( temp 2-component vector of uint)
0:30        vector swizzle ( temp 2-component vector of uint)
0:30          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:30            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30              'invocation' ( temp uint)
0:30            Constant:
0:30              2 (const int)
0:30          Sequence
0:30            Constant:
0:30              0 (const int)
0:30            Constant:
0:30              1 (const int)
0:30        subgroupAdd ( global 2-component vector of uint)
0:30          vector swizzle ( temp 2-component vector of uint)
0:30            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:30              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30                Constant:
0:30                  1 (const int)
0:30              Constant:
0:30                2 (const int)
0:30            Sequence
0:30              Constant:
0:30                0 (const int)
0:30              Constant:
0:30                1 (const int)
0:31      move second child to first child ( temp 3-component vector of uint)
0:31        vector swizzle ( temp 3-component vector of uint)
0:31          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:31            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31              'invocation' ( temp uint)
0:31            Constant:
0:31              2 (const int)
0:31          Sequence
0:31            Constant:
0:31              0 (const int)
0:31            Constant:
0:31              1 (const int)
0:31            Constant:
0:31              2 (const int)
0:31        subgroupAdd ( global 3-component vector of uint)
0:31          vector swizzle ( temp 3-component vector of uint)
0:31            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:31              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31                Constant:
0:31                  2 (const int)
0:31              Constant:
0:31                2 (const int)
0:31            Sequence
0:31              Constant:
0:31                0 (const int)
0:31              Constant:
0:31                1 (const int)
0:31              Constant:
0:31                2 (const int)
0:32      move second child to first child ( temp 4-component vector of uint)
0:32        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:32          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32            'invocation' ( temp uint)
0:32          Constant:
0:32            2 (const int)
0:32        subgroupAdd ( global 4-component vector of uint)
0:32          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:32            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32              Constant:
0:32                3 (const int)
0:32            Constant:
0:32              2 (const int)
0:34      move second child to first child ( temp double)
0:34        direct index ( temp double)
0:34          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:34            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34              'invocation' ( temp uint)
0:34            Constant:
0:34              3 (const int)
0:34          Constant:
0:34            0 (const int)
0:34        subgroupAdd ( global double)
0:34          direct index ( temp double)
0:34            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:34              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34                Constant:
0:34                  0 (const int)
0:34              Constant:
0:34                3 (const int)
0:34            Constant:
0:34              0 (const int)
0:35      move second child to first child ( temp 2-component vector of double)
0:35        vector swizzle ( temp 2-component vector of double)
0:35          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:35            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35              'invocation' ( temp uint)
0:35            Constant:
0:35              3 (const int)
0:35          Sequence
0:35            Constant:
0:35              0 (const int)
0:35            Constant:
0:35              1 (const int)
0:35        subgroupAdd ( global 2-component vector of double)
0:35          vector swizzle ( temp 2-component vector of double)
0:35            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:35              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35                Constant:
0:35                  1 (const int)
0:35              Constant:
0:35                3 (const int)
0:35            Sequence
0:35              Constant:
0:35                0 (const int)
0:35              Constant:
0:35                1 (const int)
0:36      move second child to first child ( temp 3-component vector of double)
0:36        vector swizzle ( temp 3-component vector of double)
0:36          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:36            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36              'invocation' ( temp uint)
0:36            Constant:
0:36              3 (const int)
0:36          Sequence
0:36            Constant:
0:36              0 (const int)
0:36            Constant:
0:36              1 (const int)
0:36            Constant:
0:36              2 (const int)
0:36        subgroupAdd ( global 3-component vector of double)
0:36          vector swizzle ( temp 3-component vector of double)
0:36            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:36              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36                Constant:
0:36                  2 (const int)
0:36              Constant:
0:36                3 (const int)
0:36            Sequence
0:36              Constant:
0:36                0 (const int)
0:36              Constant:
0:36                1 (const int)
0:36              Constant:
0:36                2 (const int)
0:37      move second child to first child ( temp 4-component vector of double)
0:37        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:37          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37            'invocation' ( temp uint)
0:37          Constant:
0:37            3 (const int)
0:37        subgroupAdd ( global 4-component vector of double)
0:37          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:37            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37              Constant:
0:37                3 (const int)
0:37            Constant:
0:37              3 (const int)
0:39      move second child to first child ( temp float)
0:39        direct index ( temp float)
0:39          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:39            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39              'invocation' ( temp uint)
0:39            Constant:
0:39              0 (const int)
0:39          Constant:
0:39            0 (const int)
0:39        subgroupMul ( global float)
0:39          direct index ( temp float)
0:39            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:39              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39                Constant:
0:39                  0 (const int)
0:39              Constant:
0:39                0 (const int)
0:39            Constant:
0:39              0 (const int)
0:40      move second child to first child ( temp 2-component vector of float)
0:40        vector swizzle ( temp 2-component vector of float)
0:40          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:40            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40              'invocation' ( temp uint)
0:40            Constant:
0:40              0 (const int)
0:40          Sequence
0:40            Constant:
0:40              0 (const int)
0:40            Constant:
0:40              1 (const int)
0:40        subgroupMul ( global 2-component vector of float)
0:40          vector swizzle ( temp 2-component vector of float)
0:40            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:40              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40                Constant:
0:40                  1 (const int)
0:40              Constant:
0:40                0 (const int)
0:40            Sequence
0:40              Constant:
0:40                0 (const int)
0:40              Constant:
0:40                1 (const int)
0:41      move second child to first child ( temp 3-component vector of float)
0:41        vector swizzle ( temp 3-component vector of float)
0:41          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:41            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41              'invocation' ( temp uint)
0:41            Constant:
0:41              0 (const int)
0:41          Sequence
0:41            Constant:
0:41              0 (const int)
0:41            Constant:
0:41              1 (const int)
0:41            Constant:
0:41              2 (const int)
0:41        subgroupMul ( global 3-component vector of float)
0:41          vector swizzle ( temp 3-component vector of float)
0:41            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:41              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41                Constant:
0:41                  2 (const int)
0:41              Constant:
0:41                0 (const int)
0:41            Sequence
0:41              Constant:
0:41                0 (const int)
0:41              Constant:
0:41                1 (const int)
0:41              Constant:
0:41                2 (const int)
0:42      move second child to first child ( temp 4-component vector of float)
0:42        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:42          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42            'invocation' ( temp uint)
0:42          Constant:
0:42            0 (const int)
0:42        subgroupMul ( global 4-component vector of float)
0:42          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:42            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42              Constant:
0:42                3 (const int)
0:42            Constant:
0:42              0 (const int)
0:44      move second child to first child ( temp int)
0:44        direct index ( temp int)
0:44          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:44            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44              'invocation' ( temp uint)
0:44            Constant:
0:44              1 (const int)
0:44          Constant:
0:44            0 (const int)
0:44        subgroupMul ( global int)
0:44          direct index ( temp int)
0:44            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:44              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44                Constant:
0:44                  0 (const int)
0:44              Constant:
0:44                1 (const int)
0:44            Constant:
0:44              0 (const int)
0:45      move second child to first child ( temp 2-component vector of int)
0:45        vector swizzle ( temp 2-component vector of int)
0:45          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:45            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45              'invocation' ( temp uint)
0:45            Constant:
0:45              1 (const int)
0:45          Sequence
0:45            Constant:
0:45              0 (const int)
0:45            Constant:
0:45              1 (const int)
0:45        subgroupMul ( global 2-component vector of int)
0:45          vector swizzle ( temp 2-component vector of int)
0:45            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:45              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45                Constant:
0:45                  1 (const int)
0:45              Constant:
0:45                1 (const int)
0:45            Sequence
0:45              Constant:
0:45                0 (const int)
0:45              Constant:
0:45                1 (const int)
0:46      move second child to first child ( temp 3-component vector of int)
0:46        vector swizzle ( temp 3-component vector of int)
0:46          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:46            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46              'invocation' ( temp uint)
0:46            Constant:
0:46              1 (const int)
0:46          Sequence
0:46            Constant:
0:46              0 (const int)
0:46            Constant:
0:46              1 (const int)
0:46            Constant:
0:46              2 (const int)
0:46        subgroupMul ( global 3-component vector of int)
0:46          vector swizzle ( temp 3-component vector of int)
0:46            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:46              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46                Constant:
0:46                  2 (const int)
0:46              Constant:
0:46                1 (const int)
0:46            Sequence
0:46              Constant:
0:46                0 (const int)
0:46              Constant:
0:46                1 (const int)
0:46              Constant:
0:46                2 (const int)
0:47      move second child to first child ( temp 4-component vector of int)
0:47        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:47          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47            'invocation' ( temp uint)
0:47          Constant:
0:47            1 (const int)
0:47        subgroupMul ( global 4-component vector of int)
0:47          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:47            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47              Constant:
0:47                3 (const int)
0:47            Constant:
0:47              1 (const int)
0:49      move second child to first child ( temp uint)
0:49        direct index ( temp uint)
0:49          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:49            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49              'invocation' ( temp uint)
0:49            Constant:
0:49              2 (const int)
0:49          Constant:
0:49            0 (const int)
0:49        subgroupMul ( global uint)
0:49          direct index ( temp uint)
0:49            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:49              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49                Constant:
0:49                  0 (const int)
0:49              Constant:
0:49                2 (const int)
0:49            Constant:
0:49              0 (const int)
0:50      move second child to first child ( temp 2-component vector of uint)
0:50        vector swizzle ( temp 2-component vector of uint)
0:50          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:50            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50              'invocation' ( temp uint)
0:50            Constant:
0:50              2 (const int)
0:50          Sequence
0:50            Constant:
0:50              0 (const int)
0:50            Constant:
0:50              1 (const int)
0:50        subgroupMul ( global 2-component vector of uint)
0:50          vector swizzle ( temp 2-component vector of uint)
0:50            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:50              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50                Constant:
0:50                  1 (const int)
0:50              Constant:
0:50                2 (const int)
0:50            Sequence
0:50              Constant:
0:50                0 (const int)
0:50              Constant:
0:50                1 (const int)
0:51      move second child to first child ( temp 3-component vector of uint)
0:51        vector swizzle ( temp 3-component vector of uint)
0:51          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:51            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51              'invocation' ( temp uint)
0:51            Constant:
0:51              2 (const int)
0:51          Sequence
0:51            Constant:
0:51              0 (const int)
0:51            Constant:
0:51              1 (const int)
0:51            Constant:
0:51              2 (const int)
0:51        subgroupMul ( global 3-component vector of uint)
0:51          vector swizzle ( temp 3-component vector of uint)
0:51            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:51              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51                Constant:
0:51                  2 (const int)
0:51              Constant:
0:51                2 (const int)
0:51            Sequence
0:51              Constant:
0:51                0 (const int)
0:51              Constant:
0:51                1 (const int)
0:51              Constant:
0:51                2 (const int)
0:52      move second child to first child ( temp 4-component vector of uint)
0:52        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:52          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52            'invocation' ( temp uint)
0:52          Constant:
0:52            2 (const int)
0:52        subgroupMul ( global 4-component vector of uint)
0:52          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:52            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52              Constant:
0:52                3 (const int)
0:52            Constant:
0:52              2 (const int)
0:54      move second child to first child ( temp double)
0:54        direct index ( temp double)
0:54          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:54            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54              'invocation' ( temp uint)
0:54            Constant:
0:54              3 (const int)
0:54          Constant:
0:54            0 (const int)
0:54        subgroupMul ( global double)
0:54          direct index ( temp double)
0:54            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:54              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54                Constant:
0:54                  0 (const int)
0:54              Constant:
0:54                3 (const int)
0:54            Constant:
0:54              0 (const int)
0:55      move second child to first child ( temp 2-component vector of double)
0:55        vector swizzle ( temp 2-component vector of double)
0:55          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:55            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55              'invocation' ( temp uint)
0:55            Constant:
0:55              3 (const int)
0:55          Sequence
0:55            Constant:
0:55              0 (const int)
0:55            Constant:
0:55              1 (const int)
0:55        subgroupMul ( global 2-component vector of double)
0:55          vector swizzle ( temp 2-component vector of double)
0:55            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:55              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55                Constant:
0:55                  1 (const int)
0:55              Constant:
0:55                3 (const int)
0:55            Sequence
0:55              Constant:
0:55                0 (const int)
0:55              Constant:
0:55                1 (const int)
0:56      move second child to first child ( temp 3-component vector of double)
0:56        vector swizzle ( temp 3-component vector of double)
0:56          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:56            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56              'invocation' ( temp uint)
0:56            Constant:
0:56              3 (const int)
0:56          Sequence
0:56            Constant:
0:56              0 (const int)
0:56            Constant:
0:56              1 (const int)
0:56            Constant:
0:56              2 (const int)
0:56        subgroupMul ( global 3-component vector of double)
0:56          vector swizzle ( temp 3-component vector of double)
0:56            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:56              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56                Constant:
0:56                  2 (const int)
0:56              Constant:
0:56                3 (const int)
0:56            Sequence
0:56              Constant:
0:56                0 (const int)
0:56              Constant:
0:56                1 (const int)
0:56              Constant:
0:56                2 (const int)
0:57      move second child to first child ( temp 4-component vector of double)
0:57        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:57          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57            'invocation' ( temp uint)
0:57          Constant:
0:57            3 (const int)
0:57        subgroupMul ( global 4-component vector of double)
0:57          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:57            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57              Constant:
0:57                3 (const int)
0:57            Constant:
0:57              3 (const int)
0:59      move second child to first child ( temp float)
0:59        direct index ( temp float)
0:59          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:59            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59              'invocation' ( temp uint)
0:59            Constant:
0:59              0 (const int)
0:59          Constant:
0:59            0 (const int)
0:59        subgroupMin ( global float)
0:59          direct index ( temp float)
0:59            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:59              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59                Constant:
0:59                  0 (const int)
0:59              Constant:
0:59                0 (const int)
0:59            Constant:
0:59              0 (const int)
0:60      move second child to first child ( temp 2-component vector of float)
0:60        vector swizzle ( temp 2-component vector of float)
0:60          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:60            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60              'invocation' ( temp uint)
0:60            Constant:
0:60              0 (const int)
0:60          Sequence
0:60            Constant:
0:60              0 (const int)
0:60            Constant:
0:60              1 (const int)
0:60        subgroupMin ( global 2-component vector of float)
0:60          vector swizzle ( temp 2-component vector of float)
0:60            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:60              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60                Constant:
0:60                  1 (const int)
0:60              Constant:
0:60                0 (const int)
0:60            Sequence
0:60              Constant:
0:60                0 (const int)
0:60              Constant:
0:60                1 (const int)
0:61      move second child to first child ( temp 3-component vector of float)
0:61        vector swizzle ( temp 3-component vector of float)
0:61          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:61            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61              'invocation' ( temp uint)
0:61            Constant:
0:61              0 (const int)
0:61          Sequence
0:61            Constant:
0:61              0 (const int)
0:61            Constant:
0:61              1 (const int)
0:61            Constant:
0:61              2 (const int)
0:61        subgroupMin ( global 3-component vector of float)
0:61          vector swizzle ( temp 3-component vector of float)
0:61            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:61              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61                Constant:
0:61                  2 (const int)
0:61              Constant:
0:61                0 (const int)
0:61            Sequence
0:61              Constant:
0:61                0 (const int)
0:61              Constant:
0:61                1 (const int)
0:61              Constant:
0:61                2 (const int)
0:62      move second child to first child ( temp 4-component vector of float)
0:62        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:62          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62            'invocation' ( temp uint)
0:62          Constant:
0:62            0 (const int)
0:62        subgroupMin ( global 4-component vector of float)
0:62          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:62            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62              Constant:
0:62                3 (const int)
0:62            Constant:
0:62              0 (const int)
0:64      move second child to first child ( temp int)
0:64        direct index ( temp int)
0:64          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:64            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64              'invocation' ( temp uint)
0:64            Constant:
0:64              1 (const int)
0:64          Constant:
0:64            0 (const int)
0:64        subgroupMin ( global int)
0:64          direct index ( temp int)
0:64            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:64              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64                Constant:
0:64                  0 (const int)
0:64              Constant:
0:64                1 (const int)
0:64            Constant:
0:64              0 (const int)
0:65      move second child to first child ( temp 2-component vector of int)
0:65        vector swizzle ( temp 2-component vector of int)
0:65          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:65            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65              'invocation' ( temp uint)
0:65            Constant:
0:65              1 (const int)
0:65          Sequence
0:65            Constant:
0:65              0 (const int)
0:65            Constant:
0:65              1 (const int)
0:65        subgroupMin ( global 2-component vector of int)
0:65          vector swizzle ( temp 2-component vector of int)
0:65            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:65              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65                Constant:
0:65                  1 (const int)
0:65              Constant:
0:65                1 (const int)
0:65            Sequence
0:65              Constant:
0:65                0 (const int)
0:65              Constant:
0:65                1 (const int)
0:66      move second child to first child ( temp 3-component vector of int)
0:66        vector swizzle ( temp 3-component vector of int)
0:66          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:66            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66              'invocation' ( temp uint)
0:66            Constant:
0:66              1 (const int)
0:66          Sequence
0:66            Constant:
0:66              0 (const int)
0:66            Constant:
0:66              1 (const int)
0:66            Constant:
0:66              2 (const int)
0:66        subgroupMin ( global 3-component vector of int)
0:66          vector swizzle ( temp 3-component vector of int)
0:66            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:66              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66                Constant:
0:66                  2 (const int)
0:66              Constant:
0:66                1 (const int)
0:66            Sequence
0:66              Constant:
0:66                0 (const int)
0:66              Constant:
0:66                1 (const int)
0:66              Constant:
0:66                2 (const int)
0:67      move second child to first child ( temp 4-component vector of int)
0:67        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:67          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67            'invocation' ( temp uint)
0:67          Constant:
0:67            1 (const int)
0:67        subgroupMin ( global 4-component vector of int)
0:67          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:67            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67              Constant:
0:67                3 (const int)
0:67            Constant:
0:67              1 (const int)
0:69      move second child to first child ( temp uint)
0:69        direct index ( temp uint)
0:69          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:69            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69              'invocation' ( temp uint)
0:69            Constant:
0:69              2 (const int)
0:69          Constant:
0:69            0 (const int)
0:69        subgroupMin ( global uint)
0:69          direct index ( temp uint)
0:69            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:69              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69                Constant:
0:69                  0 (const int)
0:69              Constant:
0:69                2 (const int)
0:69            Constant:
0:69              0 (const int)
0:70      move second child to first child ( temp 2-component vector of uint)
0:70        vector swizzle ( temp 2-component vector of uint)
0:70          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:70            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70              'invocation' ( temp uint)
0:70            Constant:
0:70              2 (const int)
0:70          Sequence
0:70            Constant:
0:70              0 (const int)
0:70            Constant:
0:70              1 (const int)
0:70        subgroupMin ( global 2-component vector of uint)
0:70          vector swizzle ( temp 2-component vector of uint)
0:70            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:70              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70                Constant:
0:70                  1 (const int)
0:70              Constant:
0:70                2 (const int)
0:70            Sequence
0:70              Constant:
0:70                0 (const int)
0:70              Constant:
0:70                1 (const int)
0:71      move second child to first child ( temp 3-component vector of uint)
0:71        vector swizzle ( temp 3-component vector of uint)
0:71          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:71            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71              'invocation' ( temp uint)
0:71            Constant:
0:71              2 (const int)
0:71          Sequence
0:71            Constant:
0:71              0 (const int)
0:71            Constant:
0:71              1 (const int)
0:71            Constant:
0:71              2 (const int)
0:71        subgroupMin ( global 3-component vector of uint)
0:71          vector swizzle ( temp 3-component vector of uint)
0:71            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:71              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71                Constant:
0:71                  2 (const int)
0:71              Constant:
0:71                2 (const int)
0:71            Sequence
0:71              Constant:
0:71                0 (const int)
0:71              Constant:
0:71                1 (const int)
0:71              Constant:
0:71                2 (const int)
0:72      move second child to first child ( temp 4-component vector of uint)
0:72        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:72          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72            'invocation' ( temp uint)
0:72          Constant:
0:72            2 (const int)
0:72        subgroupMin ( global 4-component vector of uint)
0:72          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:72            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72              Constant:
0:72                3 (const int)
0:72            Constant:
0:72              2 (const int)
0:74      move second child to first child ( temp double)
0:74        direct index ( temp double)
0:74          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:74            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74              'invocation' ( temp uint)
0:74            Constant:
0:74              3 (const int)
0:74          Constant:
0:74            0 (const int)
0:74        subgroupMin ( global double)
0:74          direct index ( temp double)
0:74            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:74              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74                Constant:
0:74                  0 (const int)
0:74              Constant:
0:74                3 (const int)
0:74            Constant:
0:74              0 (const int)
0:75      move second child to first child ( temp 2-component vector of double)
0:75        vector swizzle ( temp 2-component vector of double)
0:75          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:75            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75              'invocation' ( temp uint)
0:75            Constant:
0:75              3 (const int)
0:75          Sequence
0:75            Constant:
0:75              0 (const int)
0:75            Constant:
0:75              1 (const int)
0:75        subgroupMin ( global 2-component vector of double)
0:75          vector swizzle ( temp 2-component vector of double)
0:75            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:75              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75                Constant:
0:75                  1 (const int)
0:75              Constant:
0:75                3 (const int)
0:75            Sequence
0:75              Constant:
0:75                0 (const int)
0:75              Constant:
0:75                1 (const int)
0:76      move second child to first child ( temp 3-component vector of double)
0:76        vector swizzle ( temp 3-component vector of double)
0:76          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:76            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76              'invocation' ( temp uint)
0:76            Constant:
0:76              3 (const int)
0:76          Sequence
0:76            Constant:
0:76              0 (const int)
0:76            Constant:
0:76              1 (const int)
0:76            Constant:
0:76              2 (const int)
0:76        subgroupMin ( global 3-component vector of double)
0:76          vector swizzle ( temp 3-component vector of double)
0:76            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:76              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76                Constant:
0:76                  2 (const int)
0:76              Constant:
0:76                3 (const int)
0:76            Sequence
0:76              Constant:
0:76                0 (const int)
0:76              Constant:
0:76                1 (const int)
0:76              Constant:
0:76                2 (const int)
0:77      move second child to first child ( temp 4-component vector of double)
0:77        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:77          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77            'invocation' ( temp uint)
0:77          Constant:
0:77            3 (const int)
0:77        subgroupMin ( global 4-component vector of double)
0:77          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:77            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77              Constant:
0:77                3 (const int)
0:77            Constant:
0:77              3 (const int)
0:79      move second child to first child ( temp float)
0:79        direct index ( temp float)
0:79          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:79            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79              'invocation' ( temp uint)
0:79            Constant:
0:79              0 (const int)
0:79          Constant:
0:79            0 (const int)
0:79        subgroupMax ( global float)
0:79          direct index ( temp float)
0:79            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:79              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79                Constant:
0:79                  0 (const int)
0:79              Constant:
0:79                0 (const int)
0:79            Constant:
0:79              0 (const int)
0:80      move second child to first child ( temp 2-component vector of float)
0:80        vector swizzle ( temp 2-component vector of float)
0:80          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:80            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80              'invocation' ( temp uint)
0:80            Constant:
0:80              0 (const int)
0:80          Sequence
0:80            Constant:
0:80              0 (const int)
0:80            Constant:
0:80              1 (const int)
0:80        subgroupMax ( global 2-component vector of float)
0:80          vector swizzle ( temp 2-component vector of float)
0:80            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:80              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80                Constant:
0:80                  1 (const int)
0:80              Constant:
0:80                0 (const int)
0:80            Sequence
0:80              Constant:
0:80                0 (const int)
0:80              Constant:
0:80                1 (const int)
0:81      move second child to first child ( temp 3-component vector of float)
0:81        vector swizzle ( temp 3-component vector of float)
0:81          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:81            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81              'invocation' ( temp uint)
0:81            Constant:
0:81              0 (const int)
0:81          Sequence
0:81            Constant:
0:81              0 (const int)
0:81            Constant:
0:81              1 (const int)
0:81            Constant:
0:81              2 (const int)
0:81        subgroupMax ( global 3-component vector of float)
0:81          vector swizzle ( temp 3-component vector of float)
0:81            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:81              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81                Constant:
0:81                  2 (const int)
0:81              Constant:
0:81                0 (const int)
0:81            Sequence
0:81              Constant:
0:81                0 (const int)
0:81              Constant:
0:81                1 (const int)
0:81              Constant:
0:81                2 (const int)
0:82      move second child to first child ( temp 4-component vector of float)
0:82        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:82          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82            'invocation' ( temp uint)
0:82          Constant:
0:82            0 (const int)
0:82        subgroupMax ( global 4-component vector of float)
0:82          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:82            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82              Constant:
0:82                3 (const int)
0:82            Constant:
0:82              0 (const int)
0:84      move second child to first child ( temp int)
0:84        direct index ( temp int)
0:84          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:84            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84              'invocation' ( temp uint)
0:84            Constant:
0:84              1 (const int)
0:84          Constant:
0:84            0 (const int)
0:84        subgroupMax ( global int)
0:84          direct index ( temp int)
0:84            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:84              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84                Constant:
0:84                  0 (const int)
0:84              Constant:
0:84                1 (const int)
0:84            Constant:
0:84              0 (const int)
0:85      move second child to first child ( temp 2-component vector of int)
0:85        vector swizzle ( temp 2-component vector of int)
0:85          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:85            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85              'invocation' ( temp uint)
0:85            Constant:
0:85              1 (const int)
0:85          Sequence
0:85            Constant:
0:85              0 (const int)
0:85            Constant:
0:85              1 (const int)
0:85        subgroupMax ( global 2-component vector of int)
0:85          vector swizzle ( temp 2-component vector of int)
0:85            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:85              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85                Constant:
0:85                  1 (const int)
0:85              Constant:
0:85                1 (const int)
0:85            Sequence
0:85              Constant:
0:85                0 (const int)
0:85              Constant:
0:85                1 (const int)
0:86      move second child to first child ( temp 3-component vector of int)
0:86        vector swizzle ( temp 3-component vector of int)
0:86          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:86            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86              'invocation' ( temp uint)
0:86            Constant:
0:86              1 (const int)
0:86          Sequence
0:86            Constant:
0:86              0 (const int)
0:86            Constant:
0:86              1 (const int)
0:86            Constant:
0:86              2 (const int)
0:86        subgroupMax ( global 3-component vector of int)
0:86          vector swizzle ( temp 3-component vector of int)
0:86            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:86              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86                Constant:
0:86                  2 (const int)
0:86              Constant:
0:86                1 (const int)
0:86            Sequence
0:86              Constant:
0:86                0 (const int)
0:86              Constant:
0:86                1 (const int)
0:86              Constant:
0:86                2 (const int)
0:87      move second child to first child ( temp 4-component vector of int)
0:87        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:87          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87            'invocation' ( temp uint)
0:87          Constant:
0:87            1 (const int)
0:87        subgroupMax ( global 4-component vector of int)
0:87          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:87            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87              Constant:
0:87                3 (const int)
0:87            Constant:
0:87              1 (const int)
0:89      move second child to first child ( temp uint)
0:89        direct index ( temp uint)
0:89          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:89            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89              'invocation' ( temp uint)
0:89            Constant:
0:89              2 (const int)
0:89          Constant:
0:89            0 (const int)
0:89        subgroupMax ( global uint)
0:89          direct index ( temp uint)
0:89            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:89              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89                Constant:
0:89                  0 (const int)
0:89              Constant:
0:89                2 (const int)
0:89            Constant:
0:89              0 (const int)
0:90      move second child to first child ( temp 2-component vector of uint)
0:90        vector swizzle ( temp 2-component vector of uint)
0:90          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:90            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90              'invocation' ( temp uint)
0:90            Constant:
0:90              2 (const int)
0:90          Sequence
0:90            Constant:
0:90              0 (const int)
0:90            Constant:
0:90              1 (const int)
0:90        subgroupMax ( global 2-component vector of uint)
0:90          vector swizzle ( temp 2-component vector of uint)
0:90            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:90              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90                Constant:
0:90                  1 (const int)
0:90              Constant:
0:90                2 (const int)
0:90            Sequence
0:90              Constant:
0:90                0 (const int)
0:90              Constant:
0:90                1 (const int)
0:91      move second child to first child ( temp 3-component vector of uint)
0:91        vector swizzle ( temp 3-component vector of uint)
0:91          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:91            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91              'invocation' ( temp uint)
0:91            Constant:
0:91              2 (const int)
0:91          Sequence
0:91            Constant:
0:91              0 (const int)
0:91            Constant:
0:91              1 (const int)
0:91            Constant:
0:91              2 (const int)
0:91        subgroupMax ( global 3-component vector of uint)
0:91          vector swizzle ( temp 3-component vector of uint)
0:91            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:91              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91                Constant:
0:91                  2 (const int)
0:91              Constant:
0:91                2 (const int)
0:91            Sequence
0:91              Constant:
0:91                0 (const int)
0:91              Constant:
0:91                1 (const int)
0:91              Constant:
0:91                2 (const int)
0:92      move second child to first child ( temp 4-component vector of uint)
0:92        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:92          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92            'invocation' ( temp uint)
0:92          Constant:
0:92            2 (const int)
0:92        subgroupMax ( global 4-component vector of uint)
0:92          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:92            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92              Constant:
0:92                3 (const int)
0:92            Constant:
0:92              2 (const int)
0:94      move second child to first child ( temp double)
0:94        direct index ( temp double)
0:94          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:94            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94              'invocation' ( temp uint)
0:94            Constant:
0:94              3 (const int)
0:94          Constant:
0:94            0 (const int)
0:94        subgroupMax ( global double)
0:94          direct index ( temp double)
0:94            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:94              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94                Constant:
0:94                  0 (const int)
0:94              Constant:
0:94                3 (const int)
0:94            Constant:
0:94              0 (const int)
0:95      move second child to first child ( temp 2-component vector of double)
0:95        vector swizzle ( temp 2-component vector of double)
0:95          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:95            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95              'invocation' ( temp uint)
0:95            Constant:
0:95              3 (const int)
0:95          Sequence
0:95            Constant:
0:95              0 (const int)
0:95            Constant:
0:95              1 (const int)
0:95        subgroupMax ( global 2-component vector of double)
0:95          vector swizzle ( temp 2-component vector of double)
0:95            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:95              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95                Constant:
0:95                  1 (const int)
0:95              Constant:
0:95                3 (const int)
0:95            Sequence
0:95              Constant:
0:95                0 (const int)
0:95              Constant:
0:95                1 (const int)
0:96      move second child to first child ( temp 3-component vector of double)
0:96        vector swizzle ( temp 3-component vector of double)
0:96          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:96            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96              'invocation' ( temp uint)
0:96            Constant:
0:96              3 (const int)
0:96          Sequence
0:96            Constant:
0:96              0 (const int)
0:96            Constant:
0:96              1 (const int)
0:96            Constant:
0:96              2 (const int)
0:96        subgroupMax ( global 3-component vector of double)
0:96          vector swizzle ( temp 3-component vector of double)
0:96            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:96              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96                Constant:
0:96                  2 (const int)
0:96              Constant:
0:96                3 (const int)
0:96            Sequence
0:96              Constant:
0:96                0 (const int)
0:96              Constant:
0:96                1 (const int)
0:96              Constant:
0:96                2 (const int)
0:97      move second child to first child ( temp 4-component vector of double)
0:97        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:97          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97            'invocation' ( temp uint)
0:97          Constant:
0:97            3 (const int)
0:97        subgroupMax ( global 4-component vector of double)
0:97          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:97            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97              Constant:
0:97                3 (const int)
0:97            Constant:
0:97              3 (const int)
0:99      move second child to first child ( temp int)
0:99        direct index ( temp int)
0:99          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:99            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99              'invocation' ( temp uint)
0:99            Constant:
0:99              1 (const int)
0:99          Constant:
0:99            0 (const int)
0:99        subgroupAnd ( global int)
0:99          direct index ( temp int)
0:99            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:99              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99                Constant:
0:99                  0 (const int)
0:99              Constant:
0:99                1 (const int)
0:99            Constant:
0:99              0 (const int)
0:100      move second child to first child ( temp 2-component vector of int)
0:100        vector swizzle ( temp 2-component vector of int)
0:100          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:100            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100              'invocation' ( temp uint)
0:100            Constant:
0:100              1 (const int)
0:100          Sequence
0:100            Constant:
0:100              0 (const int)
0:100            Constant:
0:100              1 (const int)
0:100        subgroupAnd ( global 2-component vector of int)
0:100          vector swizzle ( temp 2-component vector of int)
0:100            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:100              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100                Constant:
0:100                  1 (const int)
0:100              Constant:
0:100                1 (const int)
0:100            Sequence
0:100              Constant:
0:100                0 (const int)
0:100              Constant:
0:100                1 (const int)
0:101      move second child to first child ( temp 3-component vector of int)
0:101        vector swizzle ( temp 3-component vector of int)
0:101          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:101            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101              'invocation' ( temp uint)
0:101            Constant:
0:101              1 (const int)
0:101          Sequence
0:101            Constant:
0:101              0 (const int)
0:101            Constant:
0:101              1 (const int)
0:101            Constant:
0:101              2 (const int)
0:101        subgroupAnd ( global 3-component vector of int)
0:101          vector swizzle ( temp 3-component vector of int)
0:101            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:101              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101                Constant:
0:101                  2 (const int)
0:101              Constant:
0:101                1 (const int)
0:101            Sequence
0:101              Constant:
0:101                0 (const int)
0:101              Constant:
0:101                1 (const int)
0:101              Constant:
0:101                2 (const int)
0:102      move second child to first child ( temp 4-component vector of int)
0:102        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:102          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102            'invocation' ( temp uint)
0:102          Constant:
0:102            1 (const int)
0:102        subgroupAnd ( global 4-component vector of int)
0:102          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:102            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102              Constant:
0:102                3 (const int)
0:102            Constant:
0:102              1 (const int)
0:104      move second child to first child ( temp uint)
0:104        direct index ( temp uint)
0:104          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:104            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104              'invocation' ( temp uint)
0:104            Constant:
0:104              2 (const int)
0:104          Constant:
0:104            0 (const int)
0:104        subgroupAnd ( global uint)
0:104          direct index ( temp uint)
0:104            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:104              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104                Constant:
0:104                  0 (const int)
0:104              Constant:
0:104                2 (const int)
0:104            Constant:
0:104              0 (const int)
0:105      move second child to first child ( temp 2-component vector of uint)
0:105        vector swizzle ( temp 2-component vector of uint)
0:105          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:105            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105              'invocation' ( temp uint)
0:105            Constant:
0:105              2 (const int)
0:105          Sequence
0:105            Constant:
0:105              0 (const int)
0:105            Constant:
0:105              1 (const int)
0:105        subgroupAnd ( global 2-component vector of uint)
0:105          vector swizzle ( temp 2-component vector of uint)
0:105            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:105              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105                Constant:
0:105                  1 (const int)
0:105              Constant:
0:105                2 (const int)
0:105            Sequence
0:105              Constant:
0:105                0 (const int)
0:105              Constant:
0:105                1 (const int)
0:106      move second child to first child ( temp 3-component vector of uint)
0:106        vector swizzle ( temp 3-component vector of uint)
0:106          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:106            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106              'invocation' ( temp uint)
0:106            Constant:
0:106              2 (const int)
0:106          Sequence
0:106            Constant:
0:106              0 (const int)
0:106            Constant:
0:106              1 (const int)
0:106            Constant:
0:106              2 (const int)
0:106        subgroupAnd ( global 3-component vector of uint)
0:106          vector swizzle ( temp 3-component vector of uint)
0:106            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:106              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106                Constant:
0:106                  2 (const int)
0:106              Constant:
0:106                2 (const int)
0:106            Sequence
0:106              Constant:
0:106                0 (const int)
0:106              Constant:
0:106                1 (const int)
0:106              Constant:
0:106                2 (const int)
0:107      move second child to first child ( temp 4-component vector of uint)
0:107        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:107          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107            'invocation' ( temp uint)
0:107          Constant:
0:107            2 (const int)
0:107        subgroupAnd ( global 4-component vector of uint)
0:107          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:107            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107              Constant:
0:107                3 (const int)
0:107            Constant:
0:107              2 (const int)
0:109      move second child to first child ( temp int)
0:109        direct index ( temp int)
0:109          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:109            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109              'invocation' ( temp uint)
0:109            Constant:
0:109              1 (const int)
0:109          Constant:
0:109            0 (const int)
0:109        Convert bool to int ( temp int)
0:109          subgroupAnd ( global bool)
0:109            Compare Less Than ( temp bool)
0:109              direct index ( temp int)
0:109                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:109                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109                    Constant:
0:109                      0 (const int)
0:109                  Constant:
0:109                    1 (const int)
0:109                Constant:
0:109                  0 (const int)
0:109              Constant:
0:109                0 (const int)
0:110      move second child to first child ( temp 2-component vector of int)
0:110        vector swizzle ( temp 2-component vector of int)
0:110          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:110            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110              'invocation' ( temp uint)
0:110            Constant:
0:110              1 (const int)
0:110          Sequence
0:110            Constant:
0:110              0 (const int)
0:110            Constant:
0:110              1 (const int)
0:110        Convert bool to int ( temp 2-component vector of int)
0:110          subgroupAnd ( global 2-component vector of bool)
0:110            Compare Less Than ( global 2-component vector of bool)
0:110              vector swizzle ( temp 2-component vector of int)
0:110                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:110                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110                    Constant:
0:110                      1 (const int)
0:110                  Constant:
0:110                    1 (const int)
0:110                Sequence
0:110                  Constant:
0:110                    0 (const int)
0:110                  Constant:
0:110                    1 (const int)
0:110              Constant:
0:110                0 (const int)
0:110                0 (const int)
0:111      move second child to first child ( temp 3-component vector of int)
0:111        vector swizzle ( temp 3-component vector of int)
0:111          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:111            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111              'invocation' ( temp uint)
0:111            Constant:
0:111              1 (const int)
0:111          Sequence
0:111            Constant:
0:111              0 (const int)
0:111            Constant:
0:111              1 (const int)
0:111            Constant:
0:111              2 (const int)
0:111        Convert bool to int ( temp 3-component vector of int)
0:111          subgroupAnd ( global 3-component vector of bool)
0:111            Compare Less Than ( global 3-component vector of bool)
0:111              vector swizzle ( temp 3-component vector of int)
0:111                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:111                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111                    Constant:
0:111                      1 (const int)
0:111                  Constant:
0:111                    1 (const int)
0:111                Sequence
0:111                  Constant:
0:111                    0 (const int)
0:111                  Constant:
0:111                    1 (const int)
0:111                  Constant:
0:111                    2 (const int)
0:111              Constant:
0:111                0 (const int)
0:111                0 (const int)
0:111                0 (const int)
0:112      move second child to first child ( temp 4-component vector of int)
0:112        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:112          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112            'invocation' ( temp uint)
0:112          Constant:
0:112            1 (const int)
0:112        Convert bool to int ( temp 4-component vector of int)
0:112          subgroupAnd ( global 4-component vector of bool)
0:112            Compare Less Than ( global 4-component vector of bool)
0:112              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:112                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112                  Constant:
0:112                    1 (const int)
0:112                Constant:
0:112                  1 (const int)
0:112              Constant:
0:112                0 (const int)
0:112                0 (const int)
0:112                0 (const int)
0:112                0 (const int)
0:114      move second child to first child ( temp int)
0:114        direct index ( temp int)
0:114          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:114            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114              'invocation' ( temp uint)
0:114            Constant:
0:114              1 (const int)
0:114          Constant:
0:114            0 (const int)
0:114        subgroupOr ( global int)
0:114          direct index ( temp int)
0:114            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:114              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114                Constant:
0:114                  0 (const int)
0:114              Constant:
0:114                1 (const int)
0:114            Constant:
0:114              0 (const int)
0:115      move second child to first child ( temp 2-component vector of int)
0:115        vector swizzle ( temp 2-component vector of int)
0:115          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:115            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115              'invocation' ( temp uint)
0:115            Constant:
0:115              1 (const int)
0:115          Sequence
0:115            Constant:
0:115              0 (const int)
0:115            Constant:
0:115              1 (const int)
0:115        subgroupOr ( global 2-component vector of int)
0:115          vector swizzle ( temp 2-component vector of int)
0:115            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:115              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115                Constant:
0:115                  1 (const int)
0:115              Constant:
0:115                1 (const int)
0:115            Sequence
0:115              Constant:
0:115                0 (const int)
0:115              Constant:
0:115                1 (const int)
0:116      move second child to first child ( temp 3-component vector of int)
0:116        vector swizzle ( temp 3-component vector of int)
0:116          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:116            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116              'invocation' ( temp uint)
0:116            Constant:
0:116              1 (const int)
0:116          Sequence
0:116            Constant:
0:116              0 (const int)
0:116            Constant:
0:116              1 (const int)
0:116            Constant:
0:116              2 (const int)
0:116        subgroupOr ( global 3-component vector of int)
0:116          vector swizzle ( temp 3-component vector of int)
0:116            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:116              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116                Constant:
0:116                  2 (const int)
0:116              Constant:
0:116                1 (const int)
0:116            Sequence
0:116              Constant:
0:116                0 (const int)
0:116              Constant:
0:116                1 (const int)
0:116              Constant:
0:116                2 (const int)
0:117      move second child to first child ( temp 4-component vector of int)
0:117        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:117          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117            'invocation' ( temp uint)
0:117          Constant:
0:117            1 (const int)
0:117        subgroupOr ( global 4-component vector of int)
0:117          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:117            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117              Constant:
0:117                3 (const int)
0:117            Constant:
0:117              1 (const int)
0:119      move second child to first child ( temp uint)
0:119        direct index ( temp uint)
0:119          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:119            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119              'invocation' ( temp uint)
0:119            Constant:
0:119              2 (const int)
0:119          Constant:
0:119            0 (const int)
0:119        subgroupOr ( global uint)
0:119          direct index ( temp uint)
0:119            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:119              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119                Constant:
0:119                  0 (const int)
0:119              Constant:
0:119                2 (const int)
0:119            Constant:
0:119              0 (const int)
0:120      move second child to first child ( temp 2-component vector of uint)
0:120        vector swizzle ( temp 2-component vector of uint)
0:120          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:120            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120              'invocation' ( temp uint)
0:120            Constant:
0:120              2 (const int)
0:120          Sequence
0:120            Constant:
0:120              0 (const int)
0:120            Constant:
0:120              1 (const int)
0:120        subgroupOr ( global 2-component vector of uint)
0:120          vector swizzle ( temp 2-component vector of uint)
0:120            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:120              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120                Constant:
0:120                  1 (const int)
0:120              Constant:
0:120                2 (const int)
0:120            Sequence
0:120              Constant:
0:120                0 (const int)
0:120              Constant:
0:120                1 (const int)
0:121      move second child to first child ( temp 3-component vector of uint)
0:121        vector swizzle ( temp 3-component vector of uint)
0:121          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:121            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121              'invocation' ( temp uint)
0:121            Constant:
0:121              2 (const int)
0:121          Sequence
0:121            Constant:
0:121              0 (const int)
0:121            Constant:
0:121              1 (const int)
0:121            Constant:
0:121              2 (const int)
0:121        subgroupOr ( global 3-component vector of uint)
0:121          vector swizzle ( temp 3-component vector of uint)
0:121            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:121              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121                Constant:
0:121                  2 (const int)
0:121              Constant:
0:121                2 (const int)
0:121            Sequence
0:121              Constant:
0:121                0 (const int)
0:121              Constant:
0:121                1 (const int)
0:121              Constant:
0:121                2 (const int)
0:122      move second child to first child ( temp 4-component vector of uint)
0:122        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:122          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122            'invocation' ( temp uint)
0:122          Constant:
0:122            2 (const int)
0:122        subgroupOr ( global 4-component vector of uint)
0:122          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:122            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122              Constant:
0:122                3 (const int)
0:122            Constant:
0:122              2 (const int)
0:124      move second child to first child ( temp int)
0:124        direct index ( temp int)
0:124          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:124            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124              'invocation' ( temp uint)
0:124            Constant:
0:124              1 (const int)
0:124          Constant:
0:124            0 (const int)
0:124        Convert bool to int ( temp int)
0:124          subgroupOr ( global bool)
0:124            Compare Less Than ( temp bool)
0:124              direct index ( temp int)
0:124                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:124                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124                    Constant:
0:124                      0 (const int)
0:124                  Constant:
0:124                    1 (const int)
0:124                Constant:
0:124                  0 (const int)
0:124              Constant:
0:124                0 (const int)
0:125      move second child to first child ( temp 2-component vector of int)
0:125        vector swizzle ( temp 2-component vector of int)
0:125          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:125            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125              'invocation' ( temp uint)
0:125            Constant:
0:125              1 (const int)
0:125          Sequence
0:125            Constant:
0:125              0 (const int)
0:125            Constant:
0:125              1 (const int)
0:125        Convert bool to int ( temp 2-component vector of int)
0:125          subgroupOr ( global 2-component vector of bool)
0:125            Compare Less Than ( global 2-component vector of bool)
0:125              vector swizzle ( temp 2-component vector of int)
0:125                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:125                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125                    Constant:
0:125                      1 (const int)
0:125                  Constant:
0:125                    1 (const int)
0:125                Sequence
0:125                  Constant:
0:125                    0 (const int)
0:125                  Constant:
0:125                    1 (const int)
0:125              Constant:
0:125                0 (const int)
0:125                0 (const int)
0:126      move second child to first child ( temp 3-component vector of int)
0:126        vector swizzle ( temp 3-component vector of int)
0:126          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:126            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126              'invocation' ( temp uint)
0:126            Constant:
0:126              1 (const int)
0:126          Sequence
0:126            Constant:
0:126              0 (const int)
0:126            Constant:
0:126              1 (const int)
0:126            Constant:
0:126              2 (const int)
0:126        Convert bool to int ( temp 3-component vector of int)
0:126          subgroupOr ( global 3-component vector of bool)
0:126            Compare Less Than ( global 3-component vector of bool)
0:126              vector swizzle ( temp 3-component vector of int)
0:126                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:126                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126                    Constant:
0:126                      1 (const int)
0:126                  Constant:
0:126                    1 (const int)
0:126                Sequence
0:126                  Constant:
0:126                    0 (const int)
0:126                  Constant:
0:126                    1 (const int)
0:126                  Constant:
0:126                    2 (const int)
0:126              Constant:
0:126                0 (const int)
0:126                0 (const int)
0:126                0 (const int)
0:127      move second child to first child ( temp 4-component vector of int)
0:127        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:127          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127            'invocation' ( temp uint)
0:127          Constant:
0:127            1 (const int)
0:127        Convert bool to int ( temp 4-component vector of int)
0:127          subgroupOr ( global 4-component vector of bool)
0:127            Compare Less Than ( global 4-component vector of bool)
0:127              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:127                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127                  Constant:
0:127                    1 (const int)
0:127                Constant:
0:127                  1 (const int)
0:127              Constant:
0:127                0 (const int)
0:127                0 (const int)
0:127                0 (const int)
0:127                0 (const int)
0:129      move second child to first child ( temp int)
0:129        direct index ( temp int)
0:129          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:129            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129              'invocation' ( temp uint)
0:129            Constant:
0:129              1 (const int)
0:129          Constant:
0:129            0 (const int)
0:129        subgroupXor ( global int)
0:129          direct index ( temp int)
0:129            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:129              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129                Constant:
0:129                  0 (const int)
0:129              Constant:
0:129                1 (const int)
0:129            Constant:
0:129              0 (const int)
0:130      move second child to first child ( temp 2-component vector of int)
0:130        vector swizzle ( temp 2-component vector of int)
0:130          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:130            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130              'invocation' ( temp uint)
0:130            Constant:
0:130              1 (const int)
0:130          Sequence
0:130            Constant:
0:130              0 (const int)
0:130            Constant:
0:130              1 (const int)
0:130        subgroupXor ( global 2-component vector of int)
0:130          vector swizzle ( temp 2-component vector of int)
0:130            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:130              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130                Constant:
0:130                  1 (const int)
0:130              Constant:
0:130                1 (const int)
0:130            Sequence
0:130              Constant:
0:130                0 (const int)
0:130              Constant:
0:130                1 (const int)
0:131      move second child to first child ( temp 3-component vector of int)
0:131        vector swizzle ( temp 3-component vector of int)
0:131          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:131            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131              'invocation' ( temp uint)
0:131            Constant:
0:131              1 (const int)
0:131          Sequence
0:131            Constant:
0:131              0 (const int)
0:131            Constant:
0:131              1 (const int)
0:131            Constant:
0:131              2 (const int)
0:131        subgroupXor ( global 3-component vector of int)
0:131          vector swizzle ( temp 3-component vector of int)
0:131            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:131              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131                Constant:
0:131                  2 (const int)
0:131              Constant:
0:131                1 (const int)
0:131            Sequence
0:131              Constant:
0:131                0 (const int)
0:131              Constant:
0:131                1 (const int)
0:131              Constant:
0:131                2 (const int)
0:132      move second child to first child ( temp 4-component vector of int)
0:132        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:132          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132            'invocation' ( temp uint)
0:132          Constant:
0:132            1 (const int)
0:132        subgroupXor ( global 4-component vector of int)
0:132          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:132            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132              Constant:
0:132                3 (const int)
0:132            Constant:
0:132              1 (const int)
0:134      move second child to first child ( temp uint)
0:134        direct index ( temp uint)
0:134          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:134            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134              'invocation' ( temp uint)
0:134            Constant:
0:134              2 (const int)
0:134          Constant:
0:134            0 (const int)
0:134        subgroupXor ( global uint)
0:134          direct index ( temp uint)
0:134            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:134              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134                Constant:
0:134                  0 (const int)
0:134              Constant:
0:134                2 (const int)
0:134            Constant:
0:134              0 (const int)
0:135      move second child to first child ( temp 2-component vector of uint)
0:135        vector swizzle ( temp 2-component vector of uint)
0:135          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:135            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135              'invocation' ( temp uint)
0:135            Constant:
0:135              2 (const int)
0:135          Sequence
0:135            Constant:
0:135              0 (const int)
0:135            Constant:
0:135              1 (const int)
0:135        subgroupXor ( global 2-component vector of uint)
0:135          vector swizzle ( temp 2-component vector of uint)
0:135            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:135              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135                Constant:
0:135                  1 (const int)
0:135              Constant:
0:135                2 (const int)
0:135            Sequence
0:135              Constant:
0:135                0 (const int)
0:135              Constant:
0:135                1 (const int)
0:136      move second child to first child ( temp 3-component vector of uint)
0:136        vector swizzle ( temp 3-component vector of uint)
0:136          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:136            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136              'invocation' ( temp uint)
0:136            Constant:
0:136              2 (const int)
0:136          Sequence
0:136            Constant:
0:136              0 (const int)
0:136            Constant:
0:136              1 (const int)
0:136            Constant:
0:136              2 (const int)
0:136        subgroupXor ( global 3-component vector of uint)
0:136          vector swizzle ( temp 3-component vector of uint)
0:136            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:136              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136                Constant:
0:136                  2 (const int)
0:136              Constant:
0:136                2 (const int)
0:136            Sequence
0:136              Constant:
0:136                0 (const int)
0:136              Constant:
0:136                1 (const int)
0:136              Constant:
0:136                2 (const int)
0:137      move second child to first child ( temp 4-component vector of uint)
0:137        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:137          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137            'invocation' ( temp uint)
0:137          Constant:
0:137            2 (const int)
0:137        subgroupXor ( global 4-component vector of uint)
0:137          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:137            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137              Constant:
0:137                3 (const int)
0:137            Constant:
0:137              2 (const int)
0:139      move second child to first child ( temp int)
0:139        direct index ( temp int)
0:139          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:139            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139              'invocation' ( temp uint)
0:139            Constant:
0:139              1 (const int)
0:139          Constant:
0:139            0 (const int)
0:139        Convert bool to int ( temp int)
0:139          subgroupXor ( global bool)
0:139            Compare Less Than ( temp bool)
0:139              direct index ( temp int)
0:139                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:139                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139                    Constant:
0:139                      0 (const int)
0:139                  Constant:
0:139                    1 (const int)
0:139                Constant:
0:139                  0 (const int)
0:139              Constant:
0:139                0 (const int)
0:140      move second child to first child ( temp 2-component vector of int)
0:140        vector swizzle ( temp 2-component vector of int)
0:140          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:140            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140              'invocation' ( temp uint)
0:140            Constant:
0:140              1 (const int)
0:140          Sequence
0:140            Constant:
0:140              0 (const int)
0:140            Constant:
0:140              1 (const int)
0:140        Convert bool to int ( temp 2-component vector of int)
0:140          subgroupXor ( global 2-component vector of bool)
0:140            Compare Less Than ( global 2-component vector of bool)
0:140              vector swizzle ( temp 2-component vector of int)
0:140                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:140                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140                    Constant:
0:140                      1 (const int)
0:140                  Constant:
0:140                    1 (const int)
0:140                Sequence
0:140                  Constant:
0:140                    0 (const int)
0:140                  Constant:
0:140                    1 (const int)
0:140              Constant:
0:140                0 (const int)
0:140                0 (const int)
0:141      move second child to first child ( temp 3-component vector of int)
0:141        vector swizzle ( temp 3-component vector of int)
0:141          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:141            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141              'invocation' ( temp uint)
0:141            Constant:
0:141              1 (const int)
0:141          Sequence
0:141            Constant:
0:141              0 (const int)
0:141            Constant:
0:141              1 (const int)
0:141            Constant:
0:141              2 (const int)
0:141        Convert bool to int ( temp 3-component vector of int)
0:141          subgroupXor ( global 3-component vector of bool)
0:141            Compare Less Than ( global 3-component vector of bool)
0:141              vector swizzle ( temp 3-component vector of int)
0:141                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:141                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141                    Constant:
0:141                      1 (const int)
0:141                  Constant:
0:141                    1 (const int)
0:141                Sequence
0:141                  Constant:
0:141                    0 (const int)
0:141                  Constant:
0:141                    1 (const int)
0:141                  Constant:
0:141                    2 (const int)
0:141              Constant:
0:141                0 (const int)
0:141                0 (const int)
0:141                0 (const int)
0:142      move second child to first child ( temp 4-component vector of int)
0:142        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:142          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142            'invocation' ( temp uint)
0:142          Constant:
0:142            1 (const int)
0:142        Convert bool to int ( temp 4-component vector of int)
0:142          subgroupXor ( global 4-component vector of bool)
0:142            Compare Less Than ( global 4-component vector of bool)
0:142              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:142                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142                  Constant:
0:142                    1 (const int)
0:142                Constant:
0:142                  1 (const int)
0:142              Constant:
0:142                0 (const int)
0:142                0 (const int)
0:142                0 (const int)
0:142                0 (const int)
0:144      move second child to first child ( temp float)
0:144        direct index ( temp float)
0:144          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:144            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144              'invocation' ( temp uint)
0:144            Constant:
0:144              0 (const int)
0:144          Constant:
0:144            0 (const int)
0:144        subgroupInclusiveAdd ( global float)
0:144          direct index ( temp float)
0:144            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:144              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144                Constant:
0:144                  0 (const int)
0:144              Constant:
0:144                0 (const int)
0:144            Constant:
0:144              0 (const int)
0:145      move second child to first child ( temp 2-component vector of float)
0:145        vector swizzle ( temp 2-component vector of float)
0:145          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:145            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145              'invocation' ( temp uint)
0:145            Constant:
0:145              0 (const int)
0:145          Sequence
0:145            Constant:
0:145              0 (const int)
0:145            Constant:
0:145              1 (const int)
0:145        subgroupInclusiveAdd ( global 2-component vector of float)
0:145          vector swizzle ( temp 2-component vector of float)
0:145            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:145              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145                Constant:
0:145                  1 (const int)
0:145              Constant:
0:145                0 (const int)
0:145            Sequence
0:145              Constant:
0:145                0 (const int)
0:145              Constant:
0:145                1 (const int)
0:146      move second child to first child ( temp 3-component vector of float)
0:146        vector swizzle ( temp 3-component vector of float)
0:146          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:146            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146              'invocation' ( temp uint)
0:146            Constant:
0:146              0 (const int)
0:146          Sequence
0:146            Constant:
0:146              0 (const int)
0:146            Constant:
0:146              1 (const int)
0:146            Constant:
0:146              2 (const int)
0:146        subgroupInclusiveAdd ( global 3-component vector of float)
0:146          vector swizzle ( temp 3-component vector of float)
0:146            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:146              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146                Constant:
0:146                  2 (const int)
0:146              Constant:
0:146                0 (const int)
0:146            Sequence
0:146              Constant:
0:146                0 (const int)
0:146              Constant:
0:146                1 (const int)
0:146              Constant:
0:146                2 (const int)
0:147      move second child to first child ( temp 4-component vector of float)
0:147        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:147          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147            'invocation' ( temp uint)
0:147          Constant:
0:147            0 (const int)
0:147        subgroupInclusiveAdd ( global 4-component vector of float)
0:147          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:147            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147              Constant:
0:147                3 (const int)
0:147            Constant:
0:147              0 (const int)
0:149      move second child to first child ( temp int)
0:149        direct index ( temp int)
0:149          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:149            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149              'invocation' ( temp uint)
0:149            Constant:
0:149              1 (const int)
0:149          Constant:
0:149            0 (const int)
0:149        subgroupInclusiveAdd ( global int)
0:149          direct index ( temp int)
0:149            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:149              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149                Constant:
0:149                  0 (const int)
0:149              Constant:
0:149                1 (const int)
0:149            Constant:
0:149              0 (const int)
0:150      move second child to first child ( temp 2-component vector of int)
0:150        vector swizzle ( temp 2-component vector of int)
0:150          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:150            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150              'invocation' ( temp uint)
0:150            Constant:
0:150              1 (const int)
0:150          Sequence
0:150            Constant:
0:150              0 (const int)
0:150            Constant:
0:150              1 (const int)
0:150        subgroupInclusiveAdd ( global 2-component vector of int)
0:150          vector swizzle ( temp 2-component vector of int)
0:150            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:150              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150                Constant:
0:150                  1 (const int)
0:150              Constant:
0:150                1 (const int)
0:150            Sequence
0:150              Constant:
0:150                0 (const int)
0:150              Constant:
0:150                1 (const int)
0:151      move second child to first child ( temp 3-component vector of int)
0:151        vector swizzle ( temp 3-component vector of int)
0:151          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:151            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151              'invocation' ( temp uint)
0:151            Constant:
0:151              1 (const int)
0:151          Sequence
0:151            Constant:
0:151              0 (const int)
0:151            Constant:
0:151              1 (const int)
0:151            Constant:
0:151              2 (const int)
0:151        subgroupInclusiveAdd ( global 3-component vector of int)
0:151          vector swizzle ( temp 3-component vector of int)
0:151            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:151              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151                Constant:
0:151                  2 (const int)
0:151              Constant:
0:151                1 (const int)
0:151            Sequence
0:151              Constant:
0:151                0 (const int)
0:151              Constant:
0:151                1 (const int)
0:151              Constant:
0:151                2 (const int)
0:152      move second child to first child ( temp 4-component vector of int)
0:152        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:152          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152            'invocation' ( temp uint)
0:152          Constant:
0:152            1 (const int)
0:152        subgroupInclusiveAdd ( global 4-component vector of int)
0:152          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:152            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152              Constant:
0:152                3 (const int)
0:152            Constant:
0:152              1 (const int)
0:154      move second child to first child ( temp uint)
0:154        direct index ( temp uint)
0:154          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:154            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154              'invocation' ( temp uint)
0:154            Constant:
0:154              2 (const int)
0:154          Constant:
0:154            0 (const int)
0:154        subgroupInclusiveAdd ( global uint)
0:154          direct index ( temp uint)
0:154            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:154              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154                Constant:
0:154                  0 (const int)
0:154              Constant:
0:154                2 (const int)
0:154            Constant:
0:154              0 (const int)
0:155      move second child to first child ( temp 2-component vector of uint)
0:155        vector swizzle ( temp 2-component vector of uint)
0:155          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:155            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155              'invocation' ( temp uint)
0:155            Constant:
0:155              2 (const int)
0:155          Sequence
0:155            Constant:
0:155              0 (const int)
0:155            Constant:
0:155              1 (const int)
0:155        subgroupInclusiveAdd ( global 2-component vector of uint)
0:155          vector swizzle ( temp 2-component vector of uint)
0:155            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:155              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155                Constant:
0:155                  1 (const int)
0:155              Constant:
0:155                2 (const int)
0:155            Sequence
0:155              Constant:
0:155                0 (const int)
0:155              Constant:
0:155                1 (const int)
0:156      move second child to first child ( temp 3-component vector of uint)
0:156        vector swizzle ( temp 3-component vector of uint)
0:156          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:156            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156              'invocation' ( temp uint)
0:156            Constant:
0:156              2 (const int)
0:156          Sequence
0:156            Constant:
0:156              0 (const int)
0:156            Constant:
0:156              1 (const int)
0:156            Constant:
0:156              2 (const int)
0:156        subgroupInclusiveAdd ( global 3-component vector of uint)
0:156          vector swizzle ( temp 3-component vector of uint)
0:156            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:156              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156                Constant:
0:156                  2 (const int)
0:156              Constant:
0:156                2 (const int)
0:156            Sequence
0:156              Constant:
0:156                0 (const int)
0:156              Constant:
0:156                1 (const int)
0:156              Constant:
0:156                2 (const int)
0:157      move second child to first child ( temp 4-component vector of uint)
0:157        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:157          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157            'invocation' ( temp uint)
0:157          Constant:
0:157            2 (const int)
0:157        subgroupInclusiveAdd ( global 4-component vector of uint)
0:157          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:157            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157              Constant:
0:157                3 (const int)
0:157            Constant:
0:157              2 (const int)
0:159      move second child to first child ( temp double)
0:159        direct index ( temp double)
0:159          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:159            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159              'invocation' ( temp uint)
0:159            Constant:
0:159              3 (const int)
0:159          Constant:
0:159            0 (const int)
0:159        subgroupInclusiveAdd ( global double)
0:159          direct index ( temp double)
0:159            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:159              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159                Constant:
0:159                  0 (const int)
0:159              Constant:
0:159                3 (const int)
0:159            Constant:
0:159              0 (const int)
0:160      move second child to first child ( temp 2-component vector of double)
0:160        vector swizzle ( temp 2-component vector of double)
0:160          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:160            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160              'invocation' ( temp uint)
0:160            Constant:
0:160              3 (const int)
0:160          Sequence
0:160            Constant:
0:160              0 (const int)
0:160            Constant:
0:160              1 (const int)
0:160        subgroupInclusiveAdd ( global 2-component vector of double)
0:160          vector swizzle ( temp 2-component vector of double)
0:160            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:160              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160                Constant:
0:160                  1 (const int)
0:160              Constant:
0:160                3 (const int)
0:160            Sequence
0:160              Constant:
0:160                0 (const int)
0:160              Constant:
0:160                1 (const int)
0:161      move second child to first child ( temp 3-component vector of double)
0:161        vector swizzle ( temp 3-component vector of double)
0:161          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:161            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161              'invocation' ( temp uint)
0:161            Constant:
0:161              3 (const int)
0:161          Sequence
0:161            Constant:
0:161              0 (const int)
0:161            Constant:
0:161              1 (const int)
0:161            Constant:
0:161              2 (const int)
0:161        subgroupInclusiveAdd ( global 3-component vector of double)
0:161          vector swizzle ( temp 3-component vector of double)
0:161            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:161              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161                Constant:
0:161                  2 (const int)
0:161              Constant:
0:161                3 (const int)
0:161            Sequence
0:161              Constant:
0:161                0 (const int)
0:161              Constant:
0:161                1 (const int)
0:161              Constant:
0:161                2 (const int)
0:162      move second child to first child ( temp 4-component vector of double)
0:162        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:162          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162            'invocation' ( temp uint)
0:162          Constant:
0:162            3 (const int)
0:162        subgroupInclusiveAdd ( global 4-component vector of double)
0:162          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:162            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162              Constant:
0:162                3 (const int)
0:162            Constant:
0:162              3 (const int)
0:164      move second child to first child ( temp float)
0:164        direct index ( temp float)
0:164          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:164            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164              'invocation' ( temp uint)
0:164            Constant:
0:164              0 (const int)
0:164          Constant:
0:164            0 (const int)
0:164        subgroupInclusiveMul ( global float)
0:164          direct index ( temp float)
0:164            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:164              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164                Constant:
0:164                  0 (const int)
0:164              Constant:
0:164                0 (const int)
0:164            Constant:
0:164              0 (const int)
0:165      move second child to first child ( temp 2-component vector of float)
0:165        vector swizzle ( temp 2-component vector of float)
0:165          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:165            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165              'invocation' ( temp uint)
0:165            Constant:
0:165              0 (const int)
0:165          Sequence
0:165            Constant:
0:165              0 (const int)
0:165            Constant:
0:165              1 (const int)
0:165        subgroupInclusiveMul ( global 2-component vector of float)
0:165          vector swizzle ( temp 2-component vector of float)
0:165            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:165              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165                Constant:
0:165                  1 (const int)
0:165              Constant:
0:165                0 (const int)
0:165            Sequence
0:165              Constant:
0:165                0 (const int)
0:165              Constant:
0:165                1 (const int)
0:166      move second child to first child ( temp 3-component vector of float)
0:166        vector swizzle ( temp 3-component vector of float)
0:166          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:166            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166              'invocation' ( temp uint)
0:166            Constant:
0:166              0 (const int)
0:166          Sequence
0:166            Constant:
0:166              0 (const int)
0:166            Constant:
0:166              1 (const int)
0:166            Constant:
0:166              2 (const int)
0:166        subgroupInclusiveMul ( global 3-component vector of float)
0:166          vector swizzle ( temp 3-component vector of float)
0:166            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:166              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166                Constant:
0:166                  2 (const int)
0:166              Constant:
0:166                0 (const int)
0:166            Sequence
0:166              Constant:
0:166                0 (const int)
0:166              Constant:
0:166                1 (const int)
0:166              Constant:
0:166                2 (const int)
0:167      move second child to first child ( temp 4-component vector of float)
0:167        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:167          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167            'invocation' ( temp uint)
0:167          Constant:
0:167            0 (const int)
0:167        subgroupInclusiveMul ( global 4-component vector of float)
0:167          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:167            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167              Constant:
0:167                3 (const int)
0:167            Constant:
0:167              0 (const int)
0:169      move second child to first child ( temp int)
0:169        direct index ( temp int)
0:169          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:169            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169              'invocation' ( temp uint)
0:169            Constant:
0:169              1 (const int)
0:169          Constant:
0:169            0 (const int)
0:169        subgroupInclusiveMul ( global int)
0:169          direct index ( temp int)
0:169            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:169              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169                Constant:
0:169                  0 (const int)
0:169              Constant:
0:169                1 (const int)
0:169            Constant:
0:169              0 (const int)
0:170      move second child to first child ( temp 2-component vector of int)
0:170        vector swizzle ( temp 2-component vector of int)
0:170          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:170            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170              'invocation' ( temp uint)
0:170            Constant:
0:170              1 (const int)
0:170          Sequence
0:170            Constant:
0:170              0 (const int)
0:170            Constant:
0:170              1 (const int)
0:170        subgroupInclusiveMul ( global 2-component vector of int)
0:170          vector swizzle ( temp 2-component vector of int)
0:170            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:170              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170                Constant:
0:170                  1 (const int)
0:170              Constant:
0:170                1 (const int)
0:170            Sequence
0:170              Constant:
0:170                0 (const int)
0:170              Constant:
0:170                1 (const int)
0:171      move second child to first child ( temp 3-component vector of int)
0:171        vector swizzle ( temp 3-component vector of int)
0:171          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:171            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171              'invocation' ( temp uint)
0:171            Constant:
0:171              1 (const int)
0:171          Sequence
0:171            Constant:
0:171              0 (const int)
0:171            Constant:
0:171              1 (const int)
0:171            Constant:
0:171              2 (const int)
0:171        subgroupInclusiveMul ( global 3-component vector of int)
0:171          vector swizzle ( temp 3-component vector of int)
0:171            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:171              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171                Constant:
0:171                  2 (const int)
0:171              Constant:
0:171                1 (const int)
0:171            Sequence
0:171              Constant:
0:171                0 (const int)
0:171              Constant:
0:171                1 (const int)
0:171              Constant:
0:171                2 (const int)
0:172      move second child to first child ( temp 4-component vector of int)
0:172        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:172          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172            'invocation' ( temp uint)
0:172          Constant:
0:172            1 (const int)
0:172        subgroupInclusiveMul ( global 4-component vector of int)
0:172          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:172            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172              Constant:
0:172                3 (const int)
0:172            Constant:
0:172              1 (const int)
0:174      move second child to first child ( temp uint)
0:174        direct index ( temp uint)
0:174          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:174            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174              'invocation' ( temp uint)
0:174            Constant:
0:174              2 (const int)
0:174          Constant:
0:174            0 (const int)
0:174        subgroupInclusiveMul ( global uint)
0:174          direct index ( temp uint)
0:174            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:174              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174                Constant:
0:174                  0 (const int)
0:174              Constant:
0:174                2 (const int)
0:174            Constant:
0:174              0 (const int)
0:175      move second child to first child ( temp 2-component vector of uint)
0:175        vector swizzle ( temp 2-component vector of uint)
0:175          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:175            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175              'invocation' ( temp uint)
0:175            Constant:
0:175              2 (const int)
0:175          Sequence
0:175            Constant:
0:175              0 (const int)
0:175            Constant:
0:175              1 (const int)
0:175        subgroupInclusiveMul ( global 2-component vector of uint)
0:175          vector swizzle ( temp 2-component vector of uint)
0:175            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:175              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175                Constant:
0:175                  1 (const int)
0:175              Constant:
0:175                2 (const int)
0:175            Sequence
0:175              Constant:
0:175                0 (const int)
0:175              Constant:
0:175                1 (const int)
0:176      move second child to first child ( temp 3-component vector of uint)
0:176        vector swizzle ( temp 3-component vector of uint)
0:176          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:176            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176              'invocation' ( temp uint)
0:176            Constant:
0:176              2 (const int)
0:176          Sequence
0:176            Constant:
0:176              0 (const int)
0:176            Constant:
0:176              1 (const int)
0:176            Constant:
0:176              2 (const int)
0:176        subgroupInclusiveMul ( global 3-component vector of uint)
0:176          vector swizzle ( temp 3-component vector of uint)
0:176            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:176              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176                Constant:
0:176                  2 (const int)
0:176              Constant:
0:176                2 (const int)
0:176            Sequence
0:176              Constant:
0:176                0 (const int)
0:176              Constant:
0:176                1 (const int)
0:176              Constant:
0:176                2 (const int)
0:177      move second child to first child ( temp 4-component vector of uint)
0:177        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:177          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177            'invocation' ( temp uint)
0:177          Constant:
0:177            2 (const int)
0:177        subgroupInclusiveMul ( global 4-component vector of uint)
0:177          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:177            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177              Constant:
0:177                3 (const int)
0:177            Constant:
0:177              2 (const int)
0:179      move second child to first child ( temp double)
0:179        direct index ( temp double)
0:179          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:179            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179              'invocation' ( temp uint)
0:179            Constant:
0:179              3 (const int)
0:179          Constant:
0:179            0 (const int)
0:179        subgroupInclusiveMul ( global double)
0:179          direct index ( temp double)
0:179            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:179              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179                Constant:
0:179                  0 (const int)
0:179              Constant:
0:179                3 (const int)
0:179            Constant:
0:179              0 (const int)
0:180      move second child to first child ( temp 2-component vector of double)
0:180        vector swizzle ( temp 2-component vector of double)
0:180          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:180            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180              'invocation' ( temp uint)
0:180            Constant:
0:180              3 (const int)
0:180          Sequence
0:180            Constant:
0:180              0 (const int)
0:180            Constant:
0:180              1 (const int)
0:180        subgroupInclusiveMul ( global 2-component vector of double)
0:180          vector swizzle ( temp 2-component vector of double)
0:180            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:180              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180                Constant:
0:180                  1 (const int)
0:180              Constant:
0:180                3 (const int)
0:180            Sequence
0:180              Constant:
0:180                0 (const int)
0:180              Constant:
0:180                1 (const int)
0:181      move second child to first child ( temp 3-component vector of double)
0:181        vector swizzle ( temp 3-component vector of double)
0:181          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:181            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181              'invocation' ( temp uint)
0:181            Constant:
0:181              3 (const int)
0:181          Sequence
0:181            Constant:
0:181              0 (const int)
0:181            Constant:
0:181              1 (const int)
0:181            Constant:
0:181              2 (const int)
0:181        subgroupInclusiveMul ( global 3-component vector of double)
0:181          vector swizzle ( temp 3-component vector of double)
0:181            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:181              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181                Constant:
0:181                  2 (const int)
0:181              Constant:
0:181                3 (const int)
0:181            Sequence
0:181              Constant:
0:181                0 (const int)
0:181              Constant:
0:181                1 (const int)
0:181              Constant:
0:181                2 (const int)
0:182      move second child to first child ( temp 4-component vector of double)
0:182        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:182          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182            'invocation' ( temp uint)
0:182          Constant:
0:182            3 (const int)
0:182        subgroupInclusiveMul ( global 4-component vector of double)
0:182          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:182            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182              Constant:
0:182                3 (const int)
0:182            Constant:
0:182              3 (const int)
0:184      move second child to first child ( temp float)
0:184        direct index ( temp float)
0:184          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:184            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184              'invocation' ( temp uint)
0:184            Constant:
0:184              0 (const int)
0:184          Constant:
0:184            0 (const int)
0:184        subgroupInclusiveMin ( global float)
0:184          direct index ( temp float)
0:184            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:184              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184                Constant:
0:184                  0 (const int)
0:184              Constant:
0:184                0 (const int)
0:184            Constant:
0:184              0 (const int)
0:185      move second child to first child ( temp 2-component vector of float)
0:185        vector swizzle ( temp 2-component vector of float)
0:185          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:185            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185              'invocation' ( temp uint)
0:185            Constant:
0:185              0 (const int)
0:185          Sequence
0:185            Constant:
0:185              0 (const int)
0:185            Constant:
0:185              1 (const int)
0:185        subgroupInclusiveMin ( global 2-component vector of float)
0:185          vector swizzle ( temp 2-component vector of float)
0:185            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:185              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185                Constant:
0:185                  1 (const int)
0:185              Constant:
0:185                0 (const int)
0:185            Sequence
0:185              Constant:
0:185                0 (const int)
0:185              Constant:
0:185                1 (const int)
0:186      move second child to first child ( temp 3-component vector of float)
0:186        vector swizzle ( temp 3-component vector of float)
0:186          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:186            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186              'invocation' ( temp uint)
0:186            Constant:
0:186              0 (const int)
0:186          Sequence
0:186            Constant:
0:186              0 (const int)
0:186            Constant:
0:186              1 (const int)
0:186            Constant:
0:186              2 (const int)
0:186        subgroupInclusiveMin ( global 3-component vector of float)
0:186          vector swizzle ( temp 3-component vector of float)
0:186            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:186              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186                Constant:
0:186                  2 (const int)
0:186              Constant:
0:186                0 (const int)
0:186            Sequence
0:186              Constant:
0:186                0 (const int)
0:186              Constant:
0:186                1 (const int)
0:186              Constant:
0:186                2 (const int)
0:187      move second child to first child ( temp 4-component vector of float)
0:187        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:187          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187            'invocation' ( temp uint)
0:187          Constant:
0:187            0 (const int)
0:187        subgroupInclusiveMin ( global 4-component vector of float)
0:187          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:187            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187              Constant:
0:187                3 (const int)
0:187            Constant:
0:187              0 (const int)
0:189      move second child to first child ( temp int)
0:189        direct index ( temp int)
0:189          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:189            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189              'invocation' ( temp uint)
0:189            Constant:
0:189              1 (const int)
0:189          Constant:
0:189            0 (const int)
0:189        subgroupInclusiveMin ( global int)
0:189          direct index ( temp int)
0:189            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:189              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189                Constant:
0:189                  0 (const int)
0:189              Constant:
0:189                1 (const int)
0:189            Constant:
0:189              0 (const int)
0:190      move second child to first child ( temp 2-component vector of int)
0:190        vector swizzle ( temp 2-component vector of int)
0:190          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:190            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190              'invocation' ( temp uint)
0:190            Constant:
0:190              1 (const int)
0:190          Sequence
0:190            Constant:
0:190              0 (const int)
0:190            Constant:
0:190              1 (const int)
0:190        subgroupInclusiveMin ( global 2-component vector of int)
0:190          vector swizzle ( temp 2-component vector of int)
0:190            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:190              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190                Constant:
0:190                  1 (const int)
0:190              Constant:
0:190                1 (const int)
0:190            Sequence
0:190              Constant:
0:190                0 (const int)
0:190              Constant:
0:190                1 (const int)
0:191      move second child to first child ( temp 3-component vector of int)
0:191        vector swizzle ( temp 3-component vector of int)
0:191          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:191            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191              'invocation' ( temp uint)
0:191            Constant:
0:191              1 (const int)
0:191          Sequence
0:191            Constant:
0:191              0 (const int)
0:191            Constant:
0:191              1 (const int)
0:191            Constant:
0:191              2 (const int)
0:191        subgroupInclusiveMin ( global 3-component vector of int)
0:191          vector swizzle ( temp 3-component vector of int)
0:191            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:191              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191                Constant:
0:191                  2 (const int)
0:191              Constant:
0:191                1 (const int)
0:191            Sequence
0:191              Constant:
0:191                0 (const int)
0:191              Constant:
0:191                1 (const int)
0:191              Constant:
0:191                2 (const int)
0:192      move second child to first child ( temp 4-component vector of int)
0:192        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:192          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192            'invocation' ( temp uint)
0:192          Constant:
0:192            1 (const int)
0:192        subgroupInclusiveMin ( global 4-component vector of int)
0:192          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:192            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192              Constant:
0:192                3 (const int)
0:192            Constant:
0:192              1 (const int)
0:194      move second child to first child ( temp uint)
0:194        direct index ( temp uint)
0:194          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:194            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194              'invocation' ( temp uint)
0:194            Constant:
0:194              2 (const int)
0:194          Constant:
0:194            0 (const int)
0:194        subgroupInclusiveMin ( global uint)
0:194          direct index ( temp uint)
0:194            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:194              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194                Constant:
0:194                  0 (const int)
0:194              Constant:
0:194                2 (const int)
0:194            Constant:
0:194              0 (const int)
0:195      move second child to first child ( temp 2-component vector of uint)
0:195        vector swizzle ( temp 2-component vector of uint)
0:195          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:195            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195              'invocation' ( temp uint)
0:195            Constant:
0:195              2 (const int)
0:195          Sequence
0:195            Constant:
0:195              0 (const int)
0:195            Constant:
0:195              1 (const int)
0:195        subgroupInclusiveMin ( global 2-component vector of uint)
0:195          vector swizzle ( temp 2-component vector of uint)
0:195            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:195              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195                Constant:
0:195                  1 (const int)
0:195              Constant:
0:195                2 (const int)
0:195            Sequence
0:195              Constant:
0:195                0 (const int)
0:195              Constant:
0:195                1 (const int)
0:196      move second child to first child ( temp 3-component vector of uint)
0:196        vector swizzle ( temp 3-component vector of uint)
0:196          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:196            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196              'invocation' ( temp uint)
0:196            Constant:
0:196              2 (const int)
0:196          Sequence
0:196            Constant:
0:196              0 (const int)
0:196            Constant:
0:196              1 (const int)
0:196            Constant:
0:196              2 (const int)
0:196        subgroupInclusiveMin ( global 3-component vector of uint)
0:196          vector swizzle ( temp 3-component vector of uint)
0:196            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:196              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196                Constant:
0:196                  2 (const int)
0:196              Constant:
0:196                2 (const int)
0:196            Sequence
0:196              Constant:
0:196                0 (const int)
0:196              Constant:
0:196                1 (const int)
0:196              Constant:
0:196                2 (const int)
0:197      move second child to first child ( temp 4-component vector of uint)
0:197        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:197          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197            'invocation' ( temp uint)
0:197          Constant:
0:197            2 (const int)
0:197        subgroupInclusiveMin ( global 4-component vector of uint)
0:197          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:197            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197              Constant:
0:197                3 (const int)
0:197            Constant:
0:197              2 (const int)
0:199      move second child to first child ( temp double)
0:199        direct index ( temp double)
0:199          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:199            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199              'invocation' ( temp uint)
0:199            Constant:
0:199              3 (const int)
0:199          Constant:
0:199            0 (const int)
0:199        subgroupInclusiveMin ( global double)
0:199          direct index ( temp double)
0:199            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:199              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199                Constant:
0:199                  0 (const int)
0:199              Constant:
0:199                3 (const int)
0:199            Constant:
0:199              0 (const int)
0:200      move second child to first child ( temp 2-component vector of double)
0:200        vector swizzle ( temp 2-component vector of double)
0:200          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:200            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200              'invocation' ( temp uint)
0:200            Constant:
0:200              3 (const int)
0:200          Sequence
0:200            Constant:
0:200              0 (const int)
0:200            Constant:
0:200              1 (const int)
0:200        subgroupInclusiveMin ( global 2-component vector of double)
0:200          vector swizzle ( temp 2-component vector of double)
0:200            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:200              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200                Constant:
0:200                  1 (const int)
0:200              Constant:
0:200                3 (const int)
0:200            Sequence
0:200              Constant:
0:200                0 (const int)
0:200              Constant:
0:200                1 (const int)
0:201      move second child to first child ( temp 3-component vector of double)
0:201        vector swizzle ( temp 3-component vector of double)
0:201          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:201            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201              'invocation' ( temp uint)
0:201            Constant:
0:201              3 (const int)
0:201          Sequence
0:201            Constant:
0:201              0 (const int)
0:201            Constant:
0:201              1 (const int)
0:201            Constant:
0:201              2 (const int)
0:201        subgroupInclusiveMin ( global 3-component vector of double)
0:201          vector swizzle ( temp 3-component vector of double)
0:201            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:201              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201                Constant:
0:201                  2 (const int)
0:201              Constant:
0:201                3 (const int)
0:201            Sequence
0:201              Constant:
0:201                0 (const int)
0:201              Constant:
0:201                1 (const int)
0:201              Constant:
0:201                2 (const int)
0:202      move second child to first child ( temp 4-component vector of double)
0:202        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:202          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202            'invocation' ( temp uint)
0:202          Constant:
0:202            3 (const int)
0:202        subgroupInclusiveMin ( global 4-component vector of double)
0:202          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:202            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202              Constant:
0:202                3 (const int)
0:202            Constant:
0:202              3 (const int)
0:204      move second child to first child ( temp float)
0:204        direct index ( temp float)
0:204          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:204            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204              'invocation' ( temp uint)
0:204            Constant:
0:204              0 (const int)
0:204          Constant:
0:204            0 (const int)
0:204        subgroupInclusiveMax ( global float)
0:204          direct index ( temp float)
0:204            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:204              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204                Constant:
0:204                  0 (const int)
0:204              Constant:
0:204                0 (const int)
0:204            Constant:
0:204              0 (const int)
0:205      move second child to first child ( temp 2-component vector of float)
0:205        vector swizzle ( temp 2-component vector of float)
0:205          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:205            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205              'invocation' ( temp uint)
0:205            Constant:
0:205              0 (const int)
0:205          Sequence
0:205            Constant:
0:205              0 (const int)
0:205            Constant:
0:205              1 (const int)
0:205        subgroupInclusiveMax ( global 2-component vector of float)
0:205          vector swizzle ( temp 2-component vector of float)
0:205            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:205              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205                Constant:
0:205                  1 (const int)
0:205              Constant:
0:205                0 (const int)
0:205            Sequence
0:205              Constant:
0:205                0 (const int)
0:205              Constant:
0:205                1 (const int)
0:206      move second child to first child ( temp 3-component vector of float)
0:206        vector swizzle ( temp 3-component vector of float)
0:206          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:206            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206              'invocation' ( temp uint)
0:206            Constant:
0:206              0 (const int)
0:206          Sequence
0:206            Constant:
0:206              0 (const int)
0:206            Constant:
0:206              1 (const int)
0:206            Constant:
0:206              2 (const int)
0:206        subgroupInclusiveMax ( global 3-component vector of float)
0:206          vector swizzle ( temp 3-component vector of float)
0:206            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:206              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206                Constant:
0:206                  2 (const int)
0:206              Constant:
0:206                0 (const int)
0:206            Sequence
0:206              Constant:
0:206                0 (const int)
0:206              Constant:
0:206                1 (const int)
0:206              Constant:
0:206                2 (const int)
0:207      move second child to first child ( temp 4-component vector of float)
0:207        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:207          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207            'invocation' ( temp uint)
0:207          Constant:
0:207            0 (const int)
0:207        subgroupInclusiveMax ( global 4-component vector of float)
0:207          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:207            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207              Constant:
0:207                3 (const int)
0:207            Constant:
0:207              0 (const int)
0:209      move second child to first child ( temp int)
0:209        direct index ( temp int)
0:209          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:209            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209              'invocation' ( temp uint)
0:209            Constant:
0:209              1 (const int)
0:209          Constant:
0:209            0 (const int)
0:209        subgroupInclusiveMax ( global int)
0:209          direct index ( temp int)
0:209            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:209              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209                Constant:
0:209                  0 (const int)
0:209              Constant:
0:209                1 (const int)
0:209            Constant:
0:209              0 (const int)
0:210      move second child to first child ( temp 2-component vector of int)
0:210        vector swizzle ( temp 2-component vector of int)
0:210          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:210            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210              'invocation' ( temp uint)
0:210            Constant:
0:210              1 (const int)
0:210          Sequence
0:210            Constant:
0:210              0 (const int)
0:210            Constant:
0:210              1 (const int)
0:210        subgroupInclusiveMax ( global 2-component vector of int)
0:210          vector swizzle ( temp 2-component vector of int)
0:210            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:210              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210                Constant:
0:210                  1 (const int)
0:210              Constant:
0:210                1 (const int)
0:210            Sequence
0:210              Constant:
0:210                0 (const int)
0:210              Constant:
0:210                1 (const int)
0:211      move second child to first child ( temp 3-component vector of int)
0:211        vector swizzle ( temp 3-component vector of int)
0:211          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:211            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211              'invocation' ( temp uint)
0:211            Constant:
0:211              1 (const int)
0:211          Sequence
0:211            Constant:
0:211              0 (const int)
0:211            Constant:
0:211              1 (const int)
0:211            Constant:
0:211              2 (const int)
0:211        subgroupInclusiveMax ( global 3-component vector of int)
0:211          vector swizzle ( temp 3-component vector of int)
0:211            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:211              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211                Constant:
0:211                  2 (const int)
0:211              Constant:
0:211                1 (const int)
0:211            Sequence
0:211              Constant:
0:211                0 (const int)
0:211              Constant:
0:211                1 (const int)
0:211              Constant:
0:211                2 (const int)
0:212      move second child to first child ( temp 4-component vector of int)
0:212        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:212          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212            'invocation' ( temp uint)
0:212          Constant:
0:212            1 (const int)
0:212        subgroupInclusiveMax ( global 4-component vector of int)
0:212          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:212            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212              Constant:
0:212                3 (const int)
0:212            Constant:
0:212              1 (const int)
0:214      move second child to first child ( temp uint)
0:214        direct index ( temp uint)
0:214          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:214            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214              'invocation' ( temp uint)
0:214            Constant:
0:214              2 (const int)
0:214          Constant:
0:214            0 (const int)
0:214        subgroupInclusiveMax ( global uint)
0:214          direct index ( temp uint)
0:214            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:214              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214                Constant:
0:214                  0 (const int)
0:214              Constant:
0:214                2 (const int)
0:214            Constant:
0:214              0 (const int)
0:215      move second child to first child ( temp 2-component vector of uint)
0:215        vector swizzle ( temp 2-component vector of uint)
0:215          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:215            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215              'invocation' ( temp uint)
0:215            Constant:
0:215              2 (const int)
0:215          Sequence
0:215            Constant:
0:215              0 (const int)
0:215            Constant:
0:215              1 (const int)
0:215        subgroupInclusiveMax ( global 2-component vector of uint)
0:215          vector swizzle ( temp 2-component vector of uint)
0:215            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:215              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215                Constant:
0:215                  1 (const int)
0:215              Constant:
0:215                2 (const int)
0:215            Sequence
0:215              Constant:
0:215                0 (const int)
0:215              Constant:
0:215                1 (const int)
0:216      move second child to first child ( temp 3-component vector of uint)
0:216        vector swizzle ( temp 3-component vector of uint)
0:216          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:216            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216              'invocation' ( temp uint)
0:216            Constant:
0:216              2 (const int)
0:216          Sequence
0:216            Constant:
0:216              0 (const int)
0:216            Constant:
0:216              1 (const int)
0:216            Constant:
0:216              2 (const int)
0:216        subgroupInclusiveMax ( global 3-component vector of uint)
0:216          vector swizzle ( temp 3-component vector of uint)
0:216            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:216              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216                Constant:
0:216                  2 (const int)
0:216              Constant:
0:216                2 (const int)
0:216            Sequence
0:216              Constant:
0:216                0 (const int)
0:216              Constant:
0:216                1 (const int)
0:216              Constant:
0:216                2 (const int)
0:217      move second child to first child ( temp 4-component vector of uint)
0:217        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:217          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217            'invocation' ( temp uint)
0:217          Constant:
0:217            2 (const int)
0:217        subgroupInclusiveMax ( global 4-component vector of uint)
0:217          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:217            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217              Constant:
0:217                3 (const int)
0:217            Constant:
0:217              2 (const int)
0:219      move second child to first child ( temp double)
0:219        direct index ( temp double)
0:219          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:219            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219              'invocation' ( temp uint)
0:219            Constant:
0:219              3 (const int)
0:219          Constant:
0:219            0 (const int)
0:219        subgroupInclusiveMax ( global double)
0:219          direct index ( temp double)
0:219            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:219              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219                Constant:
0:219                  0 (const int)
0:219              Constant:
0:219                3 (const int)
0:219            Constant:
0:219              0 (const int)
0:220      move second child to first child ( temp 2-component vector of double)
0:220        vector swizzle ( temp 2-component vector of double)
0:220          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:220            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220              'invocation' ( temp uint)
0:220            Constant:
0:220              3 (const int)
0:220          Sequence
0:220            Constant:
0:220              0 (const int)
0:220            Constant:
0:220              1 (const int)
0:220        subgroupInclusiveMax ( global 2-component vector of double)
0:220          vector swizzle ( temp 2-component vector of double)
0:220            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:220              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220                Constant:
0:220                  1 (const int)
0:220              Constant:
0:220                3 (const int)
0:220            Sequence
0:220              Constant:
0:220                0 (const int)
0:220              Constant:
0:220                1 (const int)
0:221      move second child to first child ( temp 3-component vector of double)
0:221        vector swizzle ( temp 3-component vector of double)
0:221          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:221            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221              'invocation' ( temp uint)
0:221            Constant:
0:221              3 (const int)
0:221          Sequence
0:221            Constant:
0:221              0 (const int)
0:221            Constant:
0:221              1 (const int)
0:221            Constant:
0:221              2 (const int)
0:221        subgroupInclusiveMax ( global 3-component vector of double)
0:221          vector swizzle ( temp 3-component vector of double)
0:221            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:221              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221                Constant:
0:221                  2 (const int)
0:221              Constant:
0:221                3 (const int)
0:221            Sequence
0:221              Constant:
0:221                0 (const int)
0:221              Constant:
0:221                1 (const int)
0:221              Constant:
0:221                2 (const int)
0:222      move second child to first child ( temp 4-component vector of double)
0:222        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:222          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222            'invocation' ( temp uint)
0:222          Constant:
0:222            3 (const int)
0:222        subgroupInclusiveMax ( global 4-component vector of double)
0:222          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:222            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222              Constant:
0:222                3 (const int)
0:222            Constant:
0:222              3 (const int)
0:224      move second child to first child ( temp int)
0:224        direct index ( temp int)
0:224          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:224            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224              'invocation' ( temp uint)
0:224            Constant:
0:224              1 (const int)
0:224          Constant:
0:224            0 (const int)
0:224        subgroupInclusiveAnd ( global int)
0:224          direct index ( temp int)
0:224            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:224              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224                Constant:
0:224                  0 (const int)
0:224              Constant:
0:224                1 (const int)
0:224            Constant:
0:224              0 (const int)
0:225      move second child to first child ( temp 2-component vector of int)
0:225        vector swizzle ( temp 2-component vector of int)
0:225          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:225            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225              'invocation' ( temp uint)
0:225            Constant:
0:225              1 (const int)
0:225          Sequence
0:225            Constant:
0:225              0 (const int)
0:225            Constant:
0:225              1 (const int)
0:225        subgroupInclusiveAnd ( global 2-component vector of int)
0:225          vector swizzle ( temp 2-component vector of int)
0:225            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:225              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225                Constant:
0:225                  1 (const int)
0:225              Constant:
0:225                1 (const int)
0:225            Sequence
0:225              Constant:
0:225                0 (const int)
0:225              Constant:
0:225                1 (const int)
0:226      move second child to first child ( temp 3-component vector of int)
0:226        vector swizzle ( temp 3-component vector of int)
0:226          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:226            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226              'invocation' ( temp uint)
0:226            Constant:
0:226              1 (const int)
0:226          Sequence
0:226            Constant:
0:226              0 (const int)
0:226            Constant:
0:226              1 (const int)
0:226            Constant:
0:226              2 (const int)
0:226        subgroupInclusiveAnd ( global 3-component vector of int)
0:226          vector swizzle ( temp 3-component vector of int)
0:226            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:226              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226                Constant:
0:226                  2 (const int)
0:226              Constant:
0:226                1 (const int)
0:226            Sequence
0:226              Constant:
0:226                0 (const int)
0:226              Constant:
0:226                1 (const int)
0:226              Constant:
0:226                2 (const int)
0:227      move second child to first child ( temp 4-component vector of int)
0:227        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:227          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227            'invocation' ( temp uint)
0:227          Constant:
0:227            1 (const int)
0:227        subgroupInclusiveAnd ( global 4-component vector of int)
0:227          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:227            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227              Constant:
0:227                3 (const int)
0:227            Constant:
0:227              1 (const int)
0:229      move second child to first child ( temp uint)
0:229        direct index ( temp uint)
0:229          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:229            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229              'invocation' ( temp uint)
0:229            Constant:
0:229              2 (const int)
0:229          Constant:
0:229            0 (const int)
0:229        subgroupInclusiveAnd ( global uint)
0:229          direct index ( temp uint)
0:229            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:229              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229                Constant:
0:229                  0 (const int)
0:229              Constant:
0:229                2 (const int)
0:229            Constant:
0:229              0 (const int)
0:230      move second child to first child ( temp 2-component vector of uint)
0:230        vector swizzle ( temp 2-component vector of uint)
0:230          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:230            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230              'invocation' ( temp uint)
0:230            Constant:
0:230              2 (const int)
0:230          Sequence
0:230            Constant:
0:230              0 (const int)
0:230            Constant:
0:230              1 (const int)
0:230        subgroupInclusiveAnd ( global 2-component vector of uint)
0:230          vector swizzle ( temp 2-component vector of uint)
0:230            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:230              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230                Constant:
0:230                  1 (const int)
0:230              Constant:
0:230                2 (const int)
0:230            Sequence
0:230              Constant:
0:230                0 (const int)
0:230              Constant:
0:230                1 (const int)
0:231      move second child to first child ( temp 3-component vector of uint)
0:231        vector swizzle ( temp 3-component vector of uint)
0:231          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:231            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231              'invocation' ( temp uint)
0:231            Constant:
0:231              2 (const int)
0:231          Sequence
0:231            Constant:
0:231              0 (const int)
0:231            Constant:
0:231              1 (const int)
0:231            Constant:
0:231              2 (const int)
0:231        subgroupInclusiveAnd ( global 3-component vector of uint)
0:231          vector swizzle ( temp 3-component vector of uint)
0:231            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:231              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231                Constant:
0:231                  2 (const int)
0:231              Constant:
0:231                2 (const int)
0:231            Sequence
0:231              Constant:
0:231                0 (const int)
0:231              Constant:
0:231                1 (const int)
0:231              Constant:
0:231                2 (const int)
0:232      move second child to first child ( temp 4-component vector of uint)
0:232        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:232          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232            'invocation' ( temp uint)
0:232          Constant:
0:232            2 (const int)
0:232        subgroupInclusiveAnd ( global 4-component vector of uint)
0:232          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:232            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232              Constant:
0:232                3 (const int)
0:232            Constant:
0:232              2 (const int)
0:234      move second child to first child ( temp int)
0:234        direct index ( temp int)
0:234          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:234            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234              'invocation' ( temp uint)
0:234            Constant:
0:234              1 (const int)
0:234          Constant:
0:234            0 (const int)
0:234        Convert bool to int ( temp int)
0:234          subgroupInclusiveAnd ( global bool)
0:234            Compare Less Than ( temp bool)
0:234              direct index ( temp int)
0:234                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:234                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234                    Constant:
0:234                      0 (const int)
0:234                  Constant:
0:234                    1 (const int)
0:234                Constant:
0:234                  0 (const int)
0:234              Constant:
0:234                0 (const int)
0:235      move second child to first child ( temp 2-component vector of int)
0:235        vector swizzle ( temp 2-component vector of int)
0:235          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:235            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235              'invocation' ( temp uint)
0:235            Constant:
0:235              1 (const int)
0:235          Sequence
0:235            Constant:
0:235              0 (const int)
0:235            Constant:
0:235              1 (const int)
0:235        Convert bool to int ( temp 2-component vector of int)
0:235          subgroupInclusiveAnd ( global 2-component vector of bool)
0:235            Compare Less Than ( global 2-component vector of bool)
0:235              vector swizzle ( temp 2-component vector of int)
0:235                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:235                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235                    Constant:
0:235                      1 (const int)
0:235                  Constant:
0:235                    1 (const int)
0:235                Sequence
0:235                  Constant:
0:235                    0 (const int)
0:235                  Constant:
0:235                    1 (const int)
0:235              Constant:
0:235                0 (const int)
0:235                0 (const int)
0:236      move second child to first child ( temp 3-component vector of int)
0:236        vector swizzle ( temp 3-component vector of int)
0:236          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:236            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236              'invocation' ( temp uint)
0:236            Constant:
0:236              1 (const int)
0:236          Sequence
0:236            Constant:
0:236              0 (const int)
0:236            Constant:
0:236              1 (const int)
0:236            Constant:
0:236              2 (const int)
0:236        Convert bool to int ( temp 3-component vector of int)
0:236          subgroupInclusiveAnd ( global 3-component vector of bool)
0:236            Compare Less Than ( global 3-component vector of bool)
0:236              vector swizzle ( temp 3-component vector of int)
0:236                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:236                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236                    Constant:
0:236                      1 (const int)
0:236                  Constant:
0:236                    1 (const int)
0:236                Sequence
0:236                  Constant:
0:236                    0 (const int)
0:236                  Constant:
0:236                    1 (const int)
0:236                  Constant:
0:236                    2 (const int)
0:236              Constant:
0:236                0 (const int)
0:236                0 (const int)
0:236                0 (const int)
0:237      move second child to first child ( temp 4-component vector of int)
0:237        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:237          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237            'invocation' ( temp uint)
0:237          Constant:
0:237            1 (const int)
0:237        Convert bool to int ( temp 4-component vector of int)
0:237          subgroupInclusiveAnd ( global 4-component vector of bool)
0:237            Compare Less Than ( global 4-component vector of bool)
0:237              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:237                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237                  Constant:
0:237                    1 (const int)
0:237                Constant:
0:237                  1 (const int)
0:237              Constant:
0:237                0 (const int)
0:237                0 (const int)
0:237                0 (const int)
0:237                0 (const int)
0:239      move second child to first child ( temp int)
0:239        direct index ( temp int)
0:239          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:239            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239              'invocation' ( temp uint)
0:239            Constant:
0:239              1 (const int)
0:239          Constant:
0:239            0 (const int)
0:239        subgroupInclusiveOr ( global int)
0:239          direct index ( temp int)
0:239            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:239              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239                Constant:
0:239                  0 (const int)
0:239              Constant:
0:239                1 (const int)
0:239            Constant:
0:239              0 (const int)
0:240      move second child to first child ( temp 2-component vector of int)
0:240        vector swizzle ( temp 2-component vector of int)
0:240          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:240            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240              'invocation' ( temp uint)
0:240            Constant:
0:240              1 (const int)
0:240          Sequence
0:240            Constant:
0:240              0 (const int)
0:240            Constant:
0:240              1 (const int)
0:240        subgroupInclusiveOr ( global 2-component vector of int)
0:240          vector swizzle ( temp 2-component vector of int)
0:240            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:240              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240                Constant:
0:240                  1 (const int)
0:240              Constant:
0:240                1 (const int)
0:240            Sequence
0:240              Constant:
0:240                0 (const int)
0:240              Constant:
0:240                1 (const int)
0:241      move second child to first child ( temp 3-component vector of int)
0:241        vector swizzle ( temp 3-component vector of int)
0:241          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:241            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241              'invocation' ( temp uint)
0:241            Constant:
0:241              1 (const int)
0:241          Sequence
0:241            Constant:
0:241              0 (const int)
0:241            Constant:
0:241              1 (const int)
0:241            Constant:
0:241              2 (const int)
0:241        subgroupInclusiveOr ( global 3-component vector of int)
0:241          vector swizzle ( temp 3-component vector of int)
0:241            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:241              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241                Constant:
0:241                  2 (const int)
0:241              Constant:
0:241                1 (const int)
0:241            Sequence
0:241              Constant:
0:241                0 (const int)
0:241              Constant:
0:241                1 (const int)
0:241              Constant:
0:241                2 (const int)
0:242      move second child to first child ( temp 4-component vector of int)
0:242        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:242          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242            'invocation' ( temp uint)
0:242          Constant:
0:242            1 (const int)
0:242        subgroupInclusiveOr ( global 4-component vector of int)
0:242          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:242            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242              Constant:
0:242                3 (const int)
0:242            Constant:
0:242              1 (const int)
0:244      move second child to first child ( temp uint)
0:244        direct index ( temp uint)
0:244          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:244            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244              'invocation' ( temp uint)
0:244            Constant:
0:244              2 (const int)
0:244          Constant:
0:244            0 (const int)
0:244        subgroupInclusiveOr ( global uint)
0:244          direct index ( temp uint)
0:244            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:244              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244                Constant:
0:244                  0 (const int)
0:244              Constant:
0:244                2 (const int)
0:244            Constant:
0:244              0 (const int)
0:245      move second child to first child ( temp 2-component vector of uint)
0:245        vector swizzle ( temp 2-component vector of uint)
0:245          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:245            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245              'invocation' ( temp uint)
0:245            Constant:
0:245              2 (const int)
0:245          Sequence
0:245            Constant:
0:245              0 (const int)
0:245            Constant:
0:245              1 (const int)
0:245        subgroupInclusiveOr ( global 2-component vector of uint)
0:245          vector swizzle ( temp 2-component vector of uint)
0:245            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:245              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245                Constant:
0:245                  1 (const int)
0:245              Constant:
0:245                2 (const int)
0:245            Sequence
0:245              Constant:
0:245                0 (const int)
0:245              Constant:
0:245                1 (const int)
0:246      move second child to first child ( temp 3-component vector of uint)
0:246        vector swizzle ( temp 3-component vector of uint)
0:246          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:246            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246              'invocation' ( temp uint)
0:246            Constant:
0:246              2 (const int)
0:246          Sequence
0:246            Constant:
0:246              0 (const int)
0:246            Constant:
0:246              1 (const int)
0:246            Constant:
0:246              2 (const int)
0:246        subgroupInclusiveOr ( global 3-component vector of uint)
0:246          vector swizzle ( temp 3-component vector of uint)
0:246            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:246              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246                Constant:
0:246                  2 (const int)
0:246              Constant:
0:246                2 (const int)
0:246            Sequence
0:246              Constant:
0:246                0 (const int)
0:246              Constant:
0:246                1 (const int)
0:246              Constant:
0:246                2 (const int)
0:247      move second child to first child ( temp 4-component vector of uint)
0:247        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:247          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247            'invocation' ( temp uint)
0:247          Constant:
0:247            2 (const int)
0:247        subgroupInclusiveOr ( global 4-component vector of uint)
0:247          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:247            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247              Constant:
0:247                3 (const int)
0:247            Constant:
0:247              2 (const int)
0:249      move second child to first child ( temp int)
0:249        direct index ( temp int)
0:249          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:249            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249              'invocation' ( temp uint)
0:249            Constant:
0:249              1 (const int)
0:249          Constant:
0:249            0 (const int)
0:249        Convert bool to int ( temp int)
0:249          subgroupInclusiveOr ( global bool)
0:249            Compare Less Than ( temp bool)
0:249              direct index ( temp int)
0:249                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:249                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249                    Constant:
0:249                      0 (const int)
0:249                  Constant:
0:249                    1 (const int)
0:249                Constant:
0:249                  0 (const int)
0:249              Constant:
0:249                0 (const int)
0:250      move second child to first child ( temp 2-component vector of int)
0:250        vector swizzle ( temp 2-component vector of int)
0:250          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:250            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250              'invocation' ( temp uint)
0:250            Constant:
0:250              1 (const int)
0:250          Sequence
0:250            Constant:
0:250              0 (const int)
0:250            Constant:
0:250              1 (const int)
0:250        Convert bool to int ( temp 2-component vector of int)
0:250          subgroupInclusiveOr ( global 2-component vector of bool)
0:250            Compare Less Than ( global 2-component vector of bool)
0:250              vector swizzle ( temp 2-component vector of int)
0:250                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:250                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250                    Constant:
0:250                      1 (const int)
0:250                  Constant:
0:250                    1 (const int)
0:250                Sequence
0:250                  Constant:
0:250                    0 (const int)
0:250                  Constant:
0:250                    1 (const int)
0:250              Constant:
0:250                0 (const int)
0:250                0 (const int)
0:251      move second child to first child ( temp 3-component vector of int)
0:251        vector swizzle ( temp 3-component vector of int)
0:251          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:251            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251              'invocation' ( temp uint)
0:251            Constant:
0:251              1 (const int)
0:251          Sequence
0:251            Constant:
0:251              0 (const int)
0:251            Constant:
0:251              1 (const int)
0:251            Constant:
0:251              2 (const int)
0:251        Convert bool to int ( temp 3-component vector of int)
0:251          subgroupInclusiveOr ( global 3-component vector of bool)
0:251            Compare Less Than ( global 3-component vector of bool)
0:251              vector swizzle ( temp 3-component vector of int)
0:251                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:251                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251                    Constant:
0:251                      1 (const int)
0:251                  Constant:
0:251                    1 (const int)
0:251                Sequence
0:251                  Constant:
0:251                    0 (const int)
0:251                  Constant:
0:251                    1 (const int)
0:251                  Constant:
0:251                    2 (const int)
0:251              Constant:
0:251                0 (const int)
0:251                0 (const int)
0:251                0 (const int)
0:252      move second child to first child ( temp 4-component vector of int)
0:252        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:252          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252            'invocation' ( temp uint)
0:252          Constant:
0:252            1 (const int)
0:252        Convert bool to int ( temp 4-component vector of int)
0:252          subgroupInclusiveOr ( global 4-component vector of bool)
0:252            Compare Less Than ( global 4-component vector of bool)
0:252              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:252                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252                  Constant:
0:252                    1 (const int)
0:252                Constant:
0:252                  1 (const int)
0:252              Constant:
0:252                0 (const int)
0:252                0 (const int)
0:252                0 (const int)
0:252                0 (const int)
0:254      move second child to first child ( temp int)
0:254        direct index ( temp int)
0:254          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:254            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254              'invocation' ( temp uint)
0:254            Constant:
0:254              1 (const int)
0:254          Constant:
0:254            0 (const int)
0:254        subgroupInclusiveXor ( global int)
0:254          direct index ( temp int)
0:254            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:254              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254                Constant:
0:254                  0 (const int)
0:254              Constant:
0:254                1 (const int)
0:254            Constant:
0:254              0 (const int)
0:255      move second child to first child ( temp 2-component vector of int)
0:255        vector swizzle ( temp 2-component vector of int)
0:255          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:255            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255              'invocation' ( temp uint)
0:255            Constant:
0:255              1 (const int)
0:255          Sequence
0:255            Constant:
0:255              0 (const int)
0:255            Constant:
0:255              1 (const int)
0:255        subgroupInclusiveXor ( global 2-component vector of int)
0:255          vector swizzle ( temp 2-component vector of int)
0:255            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:255              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255                Constant:
0:255                  1 (const int)
0:255              Constant:
0:255                1 (const int)
0:255            Sequence
0:255              Constant:
0:255                0 (const int)
0:255              Constant:
0:255                1 (const int)
0:256      move second child to first child ( temp 3-component vector of int)
0:256        vector swizzle ( temp 3-component vector of int)
0:256          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:256            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256              'invocation' ( temp uint)
0:256            Constant:
0:256              1 (const int)
0:256          Sequence
0:256            Constant:
0:256              0 (const int)
0:256            Constant:
0:256              1 (const int)
0:256            Constant:
0:256              2 (const int)
0:256        subgroupInclusiveXor ( global 3-component vector of int)
0:256          vector swizzle ( temp 3-component vector of int)
0:256            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:256              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256                Constant:
0:256                  2 (const int)
0:256              Constant:
0:256                1 (const int)
0:256            Sequence
0:256              Constant:
0:256                0 (const int)
0:256              Constant:
0:256                1 (const int)
0:256              Constant:
0:256                2 (const int)
0:257      move second child to first child ( temp 4-component vector of int)
0:257        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:257          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257            'invocation' ( temp uint)
0:257          Constant:
0:257            1 (const int)
0:257        subgroupInclusiveXor ( global 4-component vector of int)
0:257          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:257            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257              Constant:
0:257                3 (const int)
0:257            Constant:
0:257              1 (const int)
0:259      move second child to first child ( temp uint)
0:259        direct index ( temp uint)
0:259          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:259            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259              'invocation' ( temp uint)
0:259            Constant:
0:259              2 (const int)
0:259          Constant:
0:259            0 (const int)
0:259        subgroupInclusiveXor ( global uint)
0:259          direct index ( temp uint)
0:259            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:259              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259                Constant:
0:259                  0 (const int)
0:259              Constant:
0:259                2 (const int)
0:259            Constant:
0:259              0 (const int)
0:260      move second child to first child ( temp 2-component vector of uint)
0:260        vector swizzle ( temp 2-component vector of uint)
0:260          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:260            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260              'invocation' ( temp uint)
0:260            Constant:
0:260              2 (const int)
0:260          Sequence
0:260            Constant:
0:260              0 (const int)
0:260            Constant:
0:260              1 (const int)
0:260        subgroupInclusiveXor ( global 2-component vector of uint)
0:260          vector swizzle ( temp 2-component vector of uint)
0:260            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:260              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260                Constant:
0:260                  1 (const int)
0:260              Constant:
0:260                2 (const int)
0:260            Sequence
0:260              Constant:
0:260                0 (const int)
0:260              Constant:
0:260                1 (const int)
0:261      move second child to first child ( temp 3-component vector of uint)
0:261        vector swizzle ( temp 3-component vector of uint)
0:261          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:261            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261              'invocation' ( temp uint)
0:261            Constant:
0:261              2 (const int)
0:261          Sequence
0:261            Constant:
0:261              0 (const int)
0:261            Constant:
0:261              1 (const int)
0:261            Constant:
0:261              2 (const int)
0:261        subgroupInclusiveXor ( global 3-component vector of uint)
0:261          vector swizzle ( temp 3-component vector of uint)
0:261            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:261              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261                Constant:
0:261                  2 (const int)
0:261              Constant:
0:261                2 (const int)
0:261            Sequence
0:261              Constant:
0:261                0 (const int)
0:261              Constant:
0:261                1 (const int)
0:261              Constant:
0:261                2 (const int)
0:262      move second child to first child ( temp 4-component vector of uint)
0:262        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:262          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262            'invocation' ( temp uint)
0:262          Constant:
0:262            2 (const int)
0:262        subgroupInclusiveXor ( global 4-component vector of uint)
0:262          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:262            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262              Constant:
0:262                3 (const int)
0:262            Constant:
0:262              2 (const int)
0:264      move second child to first child ( temp int)
0:264        direct index ( temp int)
0:264          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:264            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264              'invocation' ( temp uint)
0:264            Constant:
0:264              1 (const int)
0:264          Constant:
0:264            0 (const int)
0:264        Convert bool to int ( temp int)
0:264          subgroupInclusiveXor ( global bool)
0:264            Compare Less Than ( temp bool)
0:264              direct index ( temp int)
0:264                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:264                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264                    Constant:
0:264                      0 (const int)
0:264                  Constant:
0:264                    1 (const int)
0:264                Constant:
0:264                  0 (const int)
0:264              Constant:
0:264                0 (const int)
0:265      move second child to first child ( temp 2-component vector of int)
0:265        vector swizzle ( temp 2-component vector of int)
0:265          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:265            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265              'invocation' ( temp uint)
0:265            Constant:
0:265              1 (const int)
0:265          Sequence
0:265            Constant:
0:265              0 (const int)
0:265            Constant:
0:265              1 (const int)
0:265        Convert bool to int ( temp 2-component vector of int)
0:265          subgroupInclusiveXor ( global 2-component vector of bool)
0:265            Compare Less Than ( global 2-component vector of bool)
0:265              vector swizzle ( temp 2-component vector of int)
0:265                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:265                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265                    Constant:
0:265                      1 (const int)
0:265                  Constant:
0:265                    1 (const int)
0:265                Sequence
0:265                  Constant:
0:265                    0 (const int)
0:265                  Constant:
0:265                    1 (const int)
0:265              Constant:
0:265                0 (const int)
0:265                0 (const int)
0:266      move second child to first child ( temp 3-component vector of int)
0:266        vector swizzle ( temp 3-component vector of int)
0:266          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:266            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266              'invocation' ( temp uint)
0:266            Constant:
0:266              1 (const int)
0:266          Sequence
0:266            Constant:
0:266              0 (const int)
0:266            Constant:
0:266              1 (const int)
0:266            Constant:
0:266              2 (const int)
0:266        Convert bool to int ( temp 3-component vector of int)
0:266          subgroupInclusiveXor ( global 3-component vector of bool)
0:266            Compare Less Than ( global 3-component vector of bool)
0:266              vector swizzle ( temp 3-component vector of int)
0:266                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:266                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266                    Constant:
0:266                      1 (const int)
0:266                  Constant:
0:266                    1 (const int)
0:266                Sequence
0:266                  Constant:
0:266                    0 (const int)
0:266                  Constant:
0:266                    1 (const int)
0:266                  Constant:
0:266                    2 (const int)
0:266              Constant:
0:266                0 (const int)
0:266                0 (const int)
0:266                0 (const int)
0:267      move second child to first child ( temp 4-component vector of int)
0:267        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:267          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267            'invocation' ( temp uint)
0:267          Constant:
0:267            1 (const int)
0:267        Convert bool to int ( temp 4-component vector of int)
0:267          subgroupInclusiveXor ( global 4-component vector of bool)
0:267            Compare Less Than ( global 4-component vector of bool)
0:267              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:267                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267                  Constant:
0:267                    1 (const int)
0:267                Constant:
0:267                  1 (const int)
0:267              Constant:
0:267                0 (const int)
0:267                0 (const int)
0:267                0 (const int)
0:267                0 (const int)
0:269      move second child to first child ( temp float)
0:269        direct index ( temp float)
0:269          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:269            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269              'invocation' ( temp uint)
0:269            Constant:
0:269              0 (const int)
0:269          Constant:
0:269            0 (const int)
0:269        subgroupExclusiveAdd ( global float)
0:269          direct index ( temp float)
0:269            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:269              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269                Constant:
0:269                  0 (const int)
0:269              Constant:
0:269                0 (const int)
0:269            Constant:
0:269              0 (const int)
0:270      move second child to first child ( temp 2-component vector of float)
0:270        vector swizzle ( temp 2-component vector of float)
0:270          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:270            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270              'invocation' ( temp uint)
0:270            Constant:
0:270              0 (const int)
0:270          Sequence
0:270            Constant:
0:270              0 (const int)
0:270            Constant:
0:270              1 (const int)
0:270        subgroupExclusiveAdd ( global 2-component vector of float)
0:270          vector swizzle ( temp 2-component vector of float)
0:270            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:270              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270                Constant:
0:270                  1 (const int)
0:270              Constant:
0:270                0 (const int)
0:270            Sequence
0:270              Constant:
0:270                0 (const int)
0:270              Constant:
0:270                1 (const int)
0:271      move second child to first child ( temp 3-component vector of float)
0:271        vector swizzle ( temp 3-component vector of float)
0:271          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:271            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271              'invocation' ( temp uint)
0:271            Constant:
0:271              0 (const int)
0:271          Sequence
0:271            Constant:
0:271              0 (const int)
0:271            Constant:
0:271              1 (const int)
0:271            Constant:
0:271              2 (const int)
0:271        subgroupExclusiveAdd ( global 3-component vector of float)
0:271          vector swizzle ( temp 3-component vector of float)
0:271            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:271              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271                Constant:
0:271                  2 (const int)
0:271              Constant:
0:271                0 (const int)
0:271            Sequence
0:271              Constant:
0:271                0 (const int)
0:271              Constant:
0:271                1 (const int)
0:271              Constant:
0:271                2 (const int)
0:272      move second child to first child ( temp 4-component vector of float)
0:272        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:272          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272            'invocation' ( temp uint)
0:272          Constant:
0:272            0 (const int)
0:272        subgroupExclusiveAdd ( global 4-component vector of float)
0:272          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:272            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272              Constant:
0:272                3 (const int)
0:272            Constant:
0:272              0 (const int)
0:274      move second child to first child ( temp int)
0:274        direct index ( temp int)
0:274          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:274            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274              'invocation' ( temp uint)
0:274            Constant:
0:274              1 (const int)
0:274          Constant:
0:274            0 (const int)
0:274        subgroupExclusiveAdd ( global int)
0:274          direct index ( temp int)
0:274            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:274              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274                Constant:
0:274                  0 (const int)
0:274              Constant:
0:274                1 (const int)
0:274            Constant:
0:274              0 (const int)
0:275      move second child to first child ( temp 2-component vector of int)
0:275        vector swizzle ( temp 2-component vector of int)
0:275          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:275            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275              'invocation' ( temp uint)
0:275            Constant:
0:275              1 (const int)
0:275          Sequence
0:275            Constant:
0:275              0 (const int)
0:275            Constant:
0:275              1 (const int)
0:275        subgroupExclusiveAdd ( global 2-component vector of int)
0:275          vector swizzle ( temp 2-component vector of int)
0:275            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:275              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275                Constant:
0:275                  1 (const int)
0:275              Constant:
0:275                1 (const int)
0:275            Sequence
0:275              Constant:
0:275                0 (const int)
0:275              Constant:
0:275                1 (const int)
0:276      move second child to first child ( temp 3-component vector of int)
0:276        vector swizzle ( temp 3-component vector of int)
0:276          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:276            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276              'invocation' ( temp uint)
0:276            Constant:
0:276              1 (const int)
0:276          Sequence
0:276            Constant:
0:276              0 (const int)
0:276            Constant:
0:276              1 (const int)
0:276            Constant:
0:276              2 (const int)
0:276        subgroupExclusiveAdd ( global 3-component vector of int)
0:276          vector swizzle ( temp 3-component vector of int)
0:276            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:276              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276                Constant:
0:276                  2 (const int)
0:276              Constant:
0:276                1 (const int)
0:276            Sequence
0:276              Constant:
0:276                0 (const int)
0:276              Constant:
0:276                1 (const int)
0:276              Constant:
0:276                2 (const int)
0:277      move second child to first child ( temp 4-component vector of int)
0:277        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:277          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277            'invocation' ( temp uint)
0:277          Constant:
0:277            1 (const int)
0:277        subgroupExclusiveAdd ( global 4-component vector of int)
0:277          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:277            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277              Constant:
0:277                3 (const int)
0:277            Constant:
0:277              1 (const int)
0:279      move second child to first child ( temp uint)
0:279        direct index ( temp uint)
0:279          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:279            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279              'invocation' ( temp uint)
0:279            Constant:
0:279              2 (const int)
0:279          Constant:
0:279            0 (const int)
0:279        subgroupExclusiveAdd ( global uint)
0:279          direct index ( temp uint)
0:279            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:279              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279                Constant:
0:279                  0 (const int)
0:279              Constant:
0:279                2 (const int)
0:279            Constant:
0:279              0 (const int)
0:280      move second child to first child ( temp 2-component vector of uint)
0:280        vector swizzle ( temp 2-component vector of uint)
0:280          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:280            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280              'invocation' ( temp uint)
0:280            Constant:
0:280              2 (const int)
0:280          Sequence
0:280            Constant:
0:280              0 (const int)
0:280            Constant:
0:280              1 (const int)
0:280        subgroupExclusiveAdd ( global 2-component vector of uint)
0:280          vector swizzle ( temp 2-component vector of uint)
0:280            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:280              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280                Constant:
0:280                  1 (const int)
0:280              Constant:
0:280                2 (const int)
0:280            Sequence
0:280              Constant:
0:280                0 (const int)
0:280              Constant:
0:280                1 (const int)
0:281      move second child to first child ( temp 3-component vector of uint)
0:281        vector swizzle ( temp 3-component vector of uint)
0:281          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:281            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281              'invocation' ( temp uint)
0:281            Constant:
0:281              2 (const int)
0:281          Sequence
0:281            Constant:
0:281              0 (const int)
0:281            Constant:
0:281              1 (const int)
0:281            Constant:
0:281              2 (const int)
0:281        subgroupExclusiveAdd ( global 3-component vector of uint)
0:281          vector swizzle ( temp 3-component vector of uint)
0:281            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:281              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281                Constant:
0:281                  2 (const int)
0:281              Constant:
0:281                2 (const int)
0:281            Sequence
0:281              Constant:
0:281                0 (const int)
0:281              Constant:
0:281                1 (const int)
0:281              Constant:
0:281                2 (const int)
0:282      move second child to first child ( temp 4-component vector of uint)
0:282        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:282          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282            'invocation' ( temp uint)
0:282          Constant:
0:282            2 (const int)
0:282        subgroupExclusiveAdd ( global 4-component vector of uint)
0:282          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:282            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282              Constant:
0:282                3 (const int)
0:282            Constant:
0:282              2 (const int)
0:284      move second child to first child ( temp double)
0:284        direct index ( temp double)
0:284          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:284            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284              'invocation' ( temp uint)
0:284            Constant:
0:284              3 (const int)
0:284          Constant:
0:284            0 (const int)
0:284        subgroupExclusiveAdd ( global double)
0:284          direct index ( temp double)
0:284            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:284              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284                Constant:
0:284                  0 (const int)
0:284              Constant:
0:284                3 (const int)
0:284            Constant:
0:284              0 (const int)
0:285      move second child to first child ( temp 2-component vector of double)
0:285        vector swizzle ( temp 2-component vector of double)
0:285          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:285            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285              'invocation' ( temp uint)
0:285            Constant:
0:285              3 (const int)
0:285          Sequence
0:285            Constant:
0:285              0 (const int)
0:285            Constant:
0:285              1 (const int)
0:285        subgroupExclusiveAdd ( global 2-component vector of double)
0:285          vector swizzle ( temp 2-component vector of double)
0:285            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:285              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285                Constant:
0:285                  1 (const int)
0:285              Constant:
0:285                3 (const int)
0:285            Sequence
0:285              Constant:
0:285                0 (const int)
0:285              Constant:
0:285                1 (const int)
0:286      move second child to first child ( temp 3-component vector of double)
0:286        vector swizzle ( temp 3-component vector of double)
0:286          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:286            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286              'invocation' ( temp uint)
0:286            Constant:
0:286              3 (const int)
0:286          Sequence
0:286            Constant:
0:286              0 (const int)
0:286            Constant:
0:286              1 (const int)
0:286            Constant:
0:286              2 (const int)
0:286        subgroupExclusiveAdd ( global 3-component vector of double)
0:286          vector swizzle ( temp 3-component vector of double)
0:286            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:286              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286                Constant:
0:286                  2 (const int)
0:286              Constant:
0:286                3 (const int)
0:286            Sequence
0:286              Constant:
0:286                0 (const int)
0:286              Constant:
0:286                1 (const int)
0:286              Constant:
0:286                2 (const int)
0:287      move second child to first child ( temp 4-component vector of double)
0:287        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:287          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287            'invocation' ( temp uint)
0:287          Constant:
0:287            3 (const int)
0:287        subgroupExclusiveAdd ( global 4-component vector of double)
0:287          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:287            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287              Constant:
0:287                3 (const int)
0:287            Constant:
0:287              3 (const int)
0:289      move second child to first child ( temp float)
0:289        direct index ( temp float)
0:289          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:289            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289              'invocation' ( temp uint)
0:289            Constant:
0:289              0 (const int)
0:289          Constant:
0:289            0 (const int)
0:289        subgroupExclusiveMul ( global float)
0:289          direct index ( temp float)
0:289            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:289              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289                Constant:
0:289                  0 (const int)
0:289              Constant:
0:289                0 (const int)
0:289            Constant:
0:289              0 (const int)
0:290      move second child to first child ( temp 2-component vector of float)
0:290        vector swizzle ( temp 2-component vector of float)
0:290          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:290            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290              'invocation' ( temp uint)
0:290            Constant:
0:290              0 (const int)
0:290          Sequence
0:290            Constant:
0:290              0 (const int)
0:290            Constant:
0:290              1 (const int)
0:290        subgroupExclusiveMul ( global 2-component vector of float)
0:290          vector swizzle ( temp 2-component vector of float)
0:290            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:290              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290                Constant:
0:290                  1 (const int)
0:290              Constant:
0:290                0 (const int)
0:290            Sequence
0:290              Constant:
0:290                0 (const int)
0:290              Constant:
0:290                1 (const int)
0:291      move second child to first child ( temp 3-component vector of float)
0:291        vector swizzle ( temp 3-component vector of float)
0:291          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:291            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291              'invocation' ( temp uint)
0:291            Constant:
0:291              0 (const int)
0:291          Sequence
0:291            Constant:
0:291              0 (const int)
0:291            Constant:
0:291              1 (const int)
0:291            Constant:
0:291              2 (const int)
0:291        subgroupExclusiveMul ( global 3-component vector of float)
0:291          vector swizzle ( temp 3-component vector of float)
0:291            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:291              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291                Constant:
0:291                  2 (const int)
0:291              Constant:
0:291                0 (const int)
0:291            Sequence
0:291              Constant:
0:291                0 (const int)
0:291              Constant:
0:291                1 (const int)
0:291              Constant:
0:291                2 (const int)
0:292      move second child to first child ( temp 4-component vector of float)
0:292        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:292          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292            'invocation' ( temp uint)
0:292          Constant:
0:292            0 (const int)
0:292        subgroupExclusiveMul ( global 4-component vector of float)
0:292          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:292            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292              Constant:
0:292                3 (const int)
0:292            Constant:
0:292              0 (const int)
0:294      move second child to first child ( temp int)
0:294        direct index ( temp int)
0:294          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:294            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294              'invocation' ( temp uint)
0:294            Constant:
0:294              1 (const int)
0:294          Constant:
0:294            0 (const int)
0:294        subgroupExclusiveMul ( global int)
0:294          direct index ( temp int)
0:294            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:294              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294                Constant:
0:294                  0 (const int)
0:294              Constant:
0:294                1 (const int)
0:294            Constant:
0:294              0 (const int)
0:295      move second child to first child ( temp 2-component vector of int)
0:295        vector swizzle ( temp 2-component vector of int)
0:295          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:295            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295              'invocation' ( temp uint)
0:295            Constant:
0:295              1 (const int)
0:295          Sequence
0:295            Constant:
0:295              0 (const int)
0:295            Constant:
0:295              1 (const int)
0:295        subgroupExclusiveMul ( global 2-component vector of int)
0:295          vector swizzle ( temp 2-component vector of int)
0:295            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:295              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295                Constant:
0:295                  1 (const int)
0:295              Constant:
0:295                1 (const int)
0:295            Sequence
0:295              Constant:
0:295                0 (const int)
0:295              Constant:
0:295                1 (const int)
0:296      move second child to first child ( temp 3-component vector of int)
0:296        vector swizzle ( temp 3-component vector of int)
0:296          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:296            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296              'invocation' ( temp uint)
0:296            Constant:
0:296              1 (const int)
0:296          Sequence
0:296            Constant:
0:296              0 (const int)
0:296            Constant:
0:296              1 (const int)
0:296            Constant:
0:296              2 (const int)
0:296        subgroupExclusiveMul ( global 3-component vector of int)
0:296          vector swizzle ( temp 3-component vector of int)
0:296            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:296              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296                Constant:
0:296                  2 (const int)
0:296              Constant:
0:296                1 (const int)
0:296            Sequence
0:296              Constant:
0:296                0 (const int)
0:296              Constant:
0:296                1 (const int)
0:296              Constant:
0:296                2 (const int)
0:297      move second child to first child ( temp 4-component vector of int)
0:297        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:297          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297            'invocation' ( temp uint)
0:297          Constant:
0:297            1 (const int)
0:297        subgroupExclusiveMul ( global 4-component vector of int)
0:297          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:297            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297              Constant:
0:297                3 (const int)
0:297            Constant:
0:297              1 (const int)
0:299      move second child to first child ( temp uint)
0:299        direct index ( temp uint)
0:299          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:299            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299              'invocation' ( temp uint)
0:299            Constant:
0:299              2 (const int)
0:299          Constant:
0:299            0 (const int)
0:299        subgroupExclusiveMul ( global uint)
0:299          direct index ( temp uint)
0:299            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:299              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299                Constant:
0:299                  0 (const int)
0:299              Constant:
0:299                2 (const int)
0:299            Constant:
0:299              0 (const int)
0:300      move second child to first child ( temp 2-component vector of uint)
0:300        vector swizzle ( temp 2-component vector of uint)
0:300          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:300            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300              'invocation' ( temp uint)
0:300            Constant:
0:300              2 (const int)
0:300          Sequence
0:300            Constant:
0:300              0 (const int)
0:300            Constant:
0:300              1 (const int)
0:300        subgroupExclusiveMul ( global 2-component vector of uint)
0:300          vector swizzle ( temp 2-component vector of uint)
0:300            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:300              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300                Constant:
0:300                  1 (const int)
0:300              Constant:
0:300                2 (const int)
0:300            Sequence
0:300              Constant:
0:300                0 (const int)
0:300              Constant:
0:300                1 (const int)
0:301      move second child to first child ( temp 3-component vector of uint)
0:301        vector swizzle ( temp 3-component vector of uint)
0:301          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:301            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301              'invocation' ( temp uint)
0:301            Constant:
0:301              2 (const int)
0:301          Sequence
0:301            Constant:
0:301              0 (const int)
0:301            Constant:
0:301              1 (const int)
0:301            Constant:
0:301              2 (const int)
0:301        subgroupExclusiveMul ( global 3-component vector of uint)
0:301          vector swizzle ( temp 3-component vector of uint)
0:301            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:301              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301                Constant:
0:301                  2 (const int)
0:301              Constant:
0:301                2 (const int)
0:301            Sequence
0:301              Constant:
0:301                0 (const int)
0:301              Constant:
0:301                1 (const int)
0:301              Constant:
0:301                2 (const int)
0:302      move second child to first child ( temp 4-component vector of uint)
0:302        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:302          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302            'invocation' ( temp uint)
0:302          Constant:
0:302            2 (const int)
0:302        subgroupExclusiveMul ( global 4-component vector of uint)
0:302          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:302            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302              Constant:
0:302                3 (const int)
0:302            Constant:
0:302              2 (const int)
0:304      move second child to first child ( temp double)
0:304        direct index ( temp double)
0:304          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:304            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304              'invocation' ( temp uint)
0:304            Constant:
0:304              3 (const int)
0:304          Constant:
0:304            0 (const int)
0:304        subgroupExclusiveMul ( global double)
0:304          direct index ( temp double)
0:304            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:304              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304                Constant:
0:304                  0 (const int)
0:304              Constant:
0:304                3 (const int)
0:304            Constant:
0:304              0 (const int)
0:305      move second child to first child ( temp 2-component vector of double)
0:305        vector swizzle ( temp 2-component vector of double)
0:305          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:305            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305              'invocation' ( temp uint)
0:305            Constant:
0:305              3 (const int)
0:305          Sequence
0:305            Constant:
0:305              0 (const int)
0:305            Constant:
0:305              1 (const int)
0:305        subgroupExclusiveMul ( global 2-component vector of double)
0:305          vector swizzle ( temp 2-component vector of double)
0:305            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:305              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305                Constant:
0:305                  1 (const int)
0:305              Constant:
0:305                3 (const int)
0:305            Sequence
0:305              Constant:
0:305                0 (const int)
0:305              Constant:
0:305                1 (const int)
0:306      move second child to first child ( temp 3-component vector of double)
0:306        vector swizzle ( temp 3-component vector of double)
0:306          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:306            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306              'invocation' ( temp uint)
0:306            Constant:
0:306              3 (const int)
0:306          Sequence
0:306            Constant:
0:306              0 (const int)
0:306            Constant:
0:306              1 (const int)
0:306            Constant:
0:306              2 (const int)
0:306        subgroupExclusiveMul ( global 3-component vector of double)
0:306          vector swizzle ( temp 3-component vector of double)
0:306            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:306              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306                Constant:
0:306                  2 (const int)
0:306              Constant:
0:306                3 (const int)
0:306            Sequence
0:306              Constant:
0:306                0 (const int)
0:306              Constant:
0:306                1 (const int)
0:306              Constant:
0:306                2 (const int)
0:307      move second child to first child ( temp 4-component vector of double)
0:307        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:307          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307            'invocation' ( temp uint)
0:307          Constant:
0:307            3 (const int)
0:307        subgroupExclusiveMul ( global 4-component vector of double)
0:307          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:307            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307              Constant:
0:307                3 (const int)
0:307            Constant:
0:307              3 (const int)
0:309      move second child to first child ( temp float)
0:309        direct index ( temp float)
0:309          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:309            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309              'invocation' ( temp uint)
0:309            Constant:
0:309              0 (const int)
0:309          Constant:
0:309            0 (const int)
0:309        subgroupExclusiveMin ( global float)
0:309          direct index ( temp float)
0:309            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:309              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309                Constant:
0:309                  0 (const int)
0:309              Constant:
0:309                0 (const int)
0:309            Constant:
0:309              0 (const int)
0:310      move second child to first child ( temp 2-component vector of float)
0:310        vector swizzle ( temp 2-component vector of float)
0:310          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:310            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310              'invocation' ( temp uint)
0:310            Constant:
0:310              0 (const int)
0:310          Sequence
0:310            Constant:
0:310              0 (const int)
0:310            Constant:
0:310              1 (const int)
0:310        subgroupExclusiveMin ( global 2-component vector of float)
0:310          vector swizzle ( temp 2-component vector of float)
0:310            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:310              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310                Constant:
0:310                  1 (const int)
0:310              Constant:
0:310                0 (const int)
0:310            Sequence
0:310              Constant:
0:310                0 (const int)
0:310              Constant:
0:310                1 (const int)
0:311      move second child to first child ( temp 3-component vector of float)
0:311        vector swizzle ( temp 3-component vector of float)
0:311          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:311            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311              'invocation' ( temp uint)
0:311            Constant:
0:311              0 (const int)
0:311          Sequence
0:311            Constant:
0:311              0 (const int)
0:311            Constant:
0:311              1 (const int)
0:311            Constant:
0:311              2 (const int)
0:311        subgroupExclusiveMin ( global 3-component vector of float)
0:311          vector swizzle ( temp 3-component vector of float)
0:311            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:311              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311                Constant:
0:311                  2 (const int)
0:311              Constant:
0:311                0 (const int)
0:311            Sequence
0:311              Constant:
0:311                0 (const int)
0:311              Constant:
0:311                1 (const int)
0:311              Constant:
0:311                2 (const int)
0:312      move second child to first child ( temp 4-component vector of float)
0:312        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:312          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312            'invocation' ( temp uint)
0:312          Constant:
0:312            0 (const int)
0:312        subgroupExclusiveMin ( global 4-component vector of float)
0:312          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:312            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312              Constant:
0:312                3 (const int)
0:312            Constant:
0:312              0 (const int)
0:314      move second child to first child ( temp int)
0:314        direct index ( temp int)
0:314          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:314            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314              'invocation' ( temp uint)
0:314            Constant:
0:314              1 (const int)
0:314          Constant:
0:314            0 (const int)
0:314        subgroupExclusiveMin ( global int)
0:314          direct index ( temp int)
0:314            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:314              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314                Constant:
0:314                  0 (const int)
0:314              Constant:
0:314                1 (const int)
0:314            Constant:
0:314              0 (const int)
0:315      move second child to first child ( temp 2-component vector of int)
0:315        vector swizzle ( temp 2-component vector of int)
0:315          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:315            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315              'invocation' ( temp uint)
0:315            Constant:
0:315              1 (const int)
0:315          Sequence
0:315            Constant:
0:315              0 (const int)
0:315            Constant:
0:315              1 (const int)
0:315        subgroupExclusiveMin ( global 2-component vector of int)
0:315          vector swizzle ( temp 2-component vector of int)
0:315            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:315              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315                Constant:
0:315                  1 (const int)
0:315              Constant:
0:315                1 (const int)
0:315            Sequence
0:315              Constant:
0:315                0 (const int)
0:315              Constant:
0:315                1 (const int)
0:316      move second child to first child ( temp 3-component vector of int)
0:316        vector swizzle ( temp 3-component vector of int)
0:316          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:316            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316              'invocation' ( temp uint)
0:316            Constant:
0:316              1 (const int)
0:316          Sequence
0:316            Constant:
0:316              0 (const int)
0:316            Constant:
0:316              1 (const int)
0:316            Constant:
0:316              2 (const int)
0:316        subgroupExclusiveMin ( global 3-component vector of int)
0:316          vector swizzle ( temp 3-component vector of int)
0:316            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:316              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316                Constant:
0:316                  2 (const int)
0:316              Constant:
0:316                1 (const int)
0:316            Sequence
0:316              Constant:
0:316                0 (const int)
0:316              Constant:
0:316                1 (const int)
0:316              Constant:
0:316                2 (const int)
0:317      move second child to first child ( temp 4-component vector of int)
0:317        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:317          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317            'invocation' ( temp uint)
0:317          Constant:
0:317            1 (const int)
0:317        subgroupExclusiveMin ( global 4-component vector of int)
0:317          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:317            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317              Constant:
0:317                3 (const int)
0:317            Constant:
0:317              1 (const int)
0:319      move second child to first child ( temp uint)
0:319        direct index ( temp uint)
0:319          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:319            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319              'invocation' ( temp uint)
0:319            Constant:
0:319              2 (const int)
0:319          Constant:
0:319            0 (const int)
0:319        subgroupExclusiveMin ( global uint)
0:319          direct index ( temp uint)
0:319            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:319              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319                Constant:
0:319                  0 (const int)
0:319              Constant:
0:319                2 (const int)
0:319            Constant:
0:319              0 (const int)
0:320      move second child to first child ( temp 2-component vector of uint)
0:320        vector swizzle ( temp 2-component vector of uint)
0:320          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:320            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320              'invocation' ( temp uint)
0:320            Constant:
0:320              2 (const int)
0:320          Sequence
0:320            Constant:
0:320              0 (const int)
0:320            Constant:
0:320              1 (const int)
0:320        subgroupExclusiveMin ( global 2-component vector of uint)
0:320          vector swizzle ( temp 2-component vector of uint)
0:320            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:320              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320                Constant:
0:320                  1 (const int)
0:320              Constant:
0:320                2 (const int)
0:320            Sequence
0:320              Constant:
0:320                0 (const int)
0:320              Constant:
0:320                1 (const int)
0:321      move second child to first child ( temp 3-component vector of uint)
0:321        vector swizzle ( temp 3-component vector of uint)
0:321          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:321            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321              'invocation' ( temp uint)
0:321            Constant:
0:321              2 (const int)
0:321          Sequence
0:321            Constant:
0:321              0 (const int)
0:321            Constant:
0:321              1 (const int)
0:321            Constant:
0:321              2 (const int)
0:321        subgroupExclusiveMin ( global 3-component vector of uint)
0:321          vector swizzle ( temp 3-component vector of uint)
0:321            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:321              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321                Constant:
0:321                  2 (const int)
0:321              Constant:
0:321                2 (const int)
0:321            Sequence
0:321              Constant:
0:321                0 (const int)
0:321              Constant:
0:321                1 (const int)
0:321              Constant:
0:321                2 (const int)
0:322      move second child to first child ( temp 4-component vector of uint)
0:322        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:322          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322            'invocation' ( temp uint)
0:322          Constant:
0:322            2 (const int)
0:322        subgroupExclusiveMin ( global 4-component vector of uint)
0:322          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:322            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322              Constant:
0:322                3 (const int)
0:322            Constant:
0:322              2 (const int)
0:324      move second child to first child ( temp double)
0:324        direct index ( temp double)
0:324          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:324            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324              'invocation' ( temp uint)
0:324            Constant:
0:324              3 (const int)
0:324          Constant:
0:324            0 (const int)
0:324        subgroupExclusiveMin ( global double)
0:324          direct index ( temp double)
0:324            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:324              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324                Constant:
0:324                  0 (const int)
0:324              Constant:
0:324                3 (const int)
0:324            Constant:
0:324              0 (const int)
0:325      move second child to first child ( temp 2-component vector of double)
0:325        vector swizzle ( temp 2-component vector of double)
0:325          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:325            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325              'invocation' ( temp uint)
0:325            Constant:
0:325              3 (const int)
0:325          Sequence
0:325            Constant:
0:325              0 (const int)
0:325            Constant:
0:325              1 (const int)
0:325        subgroupExclusiveMin ( global 2-component vector of double)
0:325          vector swizzle ( temp 2-component vector of double)
0:325            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:325              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325                Constant:
0:325                  1 (const int)
0:325              Constant:
0:325                3 (const int)
0:325            Sequence
0:325              Constant:
0:325                0 (const int)
0:325              Constant:
0:325                1 (const int)
0:326      move second child to first child ( temp 3-component vector of double)
0:326        vector swizzle ( temp 3-component vector of double)
0:326          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:326            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326              'invocation' ( temp uint)
0:326            Constant:
0:326              3 (const int)
0:326          Sequence
0:326            Constant:
0:326              0 (const int)
0:326            Constant:
0:326              1 (const int)
0:326            Constant:
0:326              2 (const int)
0:326        subgroupExclusiveMin ( global 3-component vector of double)
0:326          vector swizzle ( temp 3-component vector of double)
0:326            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:326              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326                Constant:
0:326                  2 (const int)
0:326              Constant:
0:326                3 (const int)
0:326            Sequence
0:326              Constant:
0:326                0 (const int)
0:326              Constant:
0:326                1 (const int)
0:326              Constant:
0:326                2 (const int)
0:327      move second child to first child ( temp 4-component vector of double)
0:327        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:327          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327            'invocation' ( temp uint)
0:327          Constant:
0:327            3 (const int)
0:327        subgroupExclusiveMin ( global 4-component vector of double)
0:327          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:327            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327              Constant:
0:327                3 (const int)
0:327            Constant:
0:327              3 (const int)
0:329      move second child to first child ( temp float)
0:329        direct index ( temp float)
0:329          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:329            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329              'invocation' ( temp uint)
0:329            Constant:
0:329              0 (const int)
0:329          Constant:
0:329            0 (const int)
0:329        subgroupExclusiveMax ( global float)
0:329          direct index ( temp float)
0:329            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:329              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329                Constant:
0:329                  0 (const int)
0:329              Constant:
0:329                0 (const int)
0:329            Constant:
0:329              0 (const int)
0:330      move second child to first child ( temp 2-component vector of float)
0:330        vector swizzle ( temp 2-component vector of float)
0:330          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:330            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330              'invocation' ( temp uint)
0:330            Constant:
0:330              0 (const int)
0:330          Sequence
0:330            Constant:
0:330              0 (const int)
0:330            Constant:
0:330              1 (const int)
0:330        subgroupExclusiveMax ( global 2-component vector of float)
0:330          vector swizzle ( temp 2-component vector of float)
0:330            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:330              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330                Constant:
0:330                  1 (const int)
0:330              Constant:
0:330                0 (const int)
0:330            Sequence
0:330              Constant:
0:330                0 (const int)
0:330              Constant:
0:330                1 (const int)
0:331      move second child to first child ( temp 3-component vector of float)
0:331        vector swizzle ( temp 3-component vector of float)
0:331          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:331            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331              'invocation' ( temp uint)
0:331            Constant:
0:331              0 (const int)
0:331          Sequence
0:331            Constant:
0:331              0 (const int)
0:331            Constant:
0:331              1 (const int)
0:331            Constant:
0:331              2 (const int)
0:331        subgroupExclusiveMax ( global 3-component vector of float)
0:331          vector swizzle ( temp 3-component vector of float)
0:331            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:331              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331                Constant:
0:331                  2 (const int)
0:331              Constant:
0:331                0 (const int)
0:331            Sequence
0:331              Constant:
0:331                0 (const int)
0:331              Constant:
0:331                1 (const int)
0:331              Constant:
0:331                2 (const int)
0:332      move second child to first child ( temp 4-component vector of float)
0:332        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:332          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332            'invocation' ( temp uint)
0:332          Constant:
0:332            0 (const int)
0:332        subgroupExclusiveMax ( global 4-component vector of float)
0:332          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:332            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332              Constant:
0:332                3 (const int)
0:332            Constant:
0:332              0 (const int)
0:334      move second child to first child ( temp int)
0:334        direct index ( temp int)
0:334          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:334            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334              'invocation' ( temp uint)
0:334            Constant:
0:334              1 (const int)
0:334          Constant:
0:334            0 (const int)
0:334        subgroupExclusiveMax ( global int)
0:334          direct index ( temp int)
0:334            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:334              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334                Constant:
0:334                  0 (const int)
0:334              Constant:
0:334                1 (const int)
0:334            Constant:
0:334              0 (const int)
0:335      move second child to first child ( temp 2-component vector of int)
0:335        vector swizzle ( temp 2-component vector of int)
0:335          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:335            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335              'invocation' ( temp uint)
0:335            Constant:
0:335              1 (const int)
0:335          Sequence
0:335            Constant:
0:335              0 (const int)
0:335            Constant:
0:335              1 (const int)
0:335        subgroupExclusiveMax ( global 2-component vector of int)
0:335          vector swizzle ( temp 2-component vector of int)
0:335            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:335              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335                Constant:
0:335                  1 (const int)
0:335              Constant:
0:335                1 (const int)
0:335            Sequence
0:335              Constant:
0:335                0 (const int)
0:335              Constant:
0:335                1 (const int)
0:336      move second child to first child ( temp 3-component vector of int)
0:336        vector swizzle ( temp 3-component vector of int)
0:336          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:336            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336              'invocation' ( temp uint)
0:336            Constant:
0:336              1 (const int)
0:336          Sequence
0:336            Constant:
0:336              0 (const int)
0:336            Constant:
0:336              1 (const int)
0:336            Constant:
0:336              2 (const int)
0:336        subgroupExclusiveMax ( global 3-component vector of int)
0:336          vector swizzle ( temp 3-component vector of int)
0:336            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:336              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336                Constant:
0:336                  2 (const int)
0:336              Constant:
0:336                1 (const int)
0:336            Sequence
0:336              Constant:
0:336                0 (const int)
0:336              Constant:
0:336                1 (const int)
0:336              Constant:
0:336                2 (const int)
0:337      move second child to first child ( temp 4-component vector of int)
0:337        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:337          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337            'invocation' ( temp uint)
0:337          Constant:
0:337            1 (const int)
0:337        subgroupExclusiveMax ( global 4-component vector of int)
0:337          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:337            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337              Constant:
0:337                3 (const int)
0:337            Constant:
0:337              1 (const int)
0:339      move second child to first child ( temp uint)
0:339        direct index ( temp uint)
0:339          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:339            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339              'invocation' ( temp uint)
0:339            Constant:
0:339              2 (const int)
0:339          Constant:
0:339            0 (const int)
0:339        subgroupExclusiveMax ( global uint)
0:339          direct index ( temp uint)
0:339            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:339              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339                Constant:
0:339                  0 (const int)
0:339              Constant:
0:339                2 (const int)
0:339            Constant:
0:339              0 (const int)
0:340      move second child to first child ( temp 2-component vector of uint)
0:340        vector swizzle ( temp 2-component vector of uint)
0:340          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:340            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340              'invocation' ( temp uint)
0:340            Constant:
0:340              2 (const int)
0:340          Sequence
0:340            Constant:
0:340              0 (const int)
0:340            Constant:
0:340              1 (const int)
0:340        subgroupExclusiveMax ( global 2-component vector of uint)
0:340          vector swizzle ( temp 2-component vector of uint)
0:340            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:340              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340                Constant:
0:340                  1 (const int)
0:340              Constant:
0:340                2 (const int)
0:340            Sequence
0:340              Constant:
0:340                0 (const int)
0:340              Constant:
0:340                1 (const int)
0:341      move second child to first child ( temp 3-component vector of uint)
0:341        vector swizzle ( temp 3-component vector of uint)
0:341          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:341            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341              'invocation' ( temp uint)
0:341            Constant:
0:341              2 (const int)
0:341          Sequence
0:341            Constant:
0:341              0 (const int)
0:341            Constant:
0:341              1 (const int)
0:341            Constant:
0:341              2 (const int)
0:341        subgroupExclusiveMax ( global 3-component vector of uint)
0:341          vector swizzle ( temp 3-component vector of uint)
0:341            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:341              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341                Constant:
0:341                  2 (const int)
0:341              Constant:
0:341                2 (const int)
0:341            Sequence
0:341              Constant:
0:341                0 (const int)
0:341              Constant:
0:341                1 (const int)
0:341              Constant:
0:341                2 (const int)
0:342      move second child to first child ( temp 4-component vector of uint)
0:342        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:342          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342            'invocation' ( temp uint)
0:342          Constant:
0:342            2 (const int)
0:342        subgroupExclusiveMax ( global 4-component vector of uint)
0:342          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:342            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342              Constant:
0:342                3 (const int)
0:342            Constant:
0:342              2 (const int)
0:344      move second child to first child ( temp double)
0:344        direct index ( temp double)
0:344          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:344            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344              'invocation' ( temp uint)
0:344            Constant:
0:344              3 (const int)
0:344          Constant:
0:344            0 (const int)
0:344        subgroupExclusiveMax ( global double)
0:344          direct index ( temp double)
0:344            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:344              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344                Constant:
0:344                  0 (const int)
0:344              Constant:
0:344                3 (const int)
0:344            Constant:
0:344              0 (const int)
0:345      move second child to first child ( temp 2-component vector of double)
0:345        vector swizzle ( temp 2-component vector of double)
0:345          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:345            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345              'invocation' ( temp uint)
0:345            Constant:
0:345              3 (const int)
0:345          Sequence
0:345            Constant:
0:345              0 (const int)
0:345            Constant:
0:345              1 (const int)
0:345        subgroupExclusiveMax ( global 2-component vector of double)
0:345          vector swizzle ( temp 2-component vector of double)
0:345            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:345              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345                Constant:
0:345                  1 (const int)
0:345              Constant:
0:345                3 (const int)
0:345            Sequence
0:345              Constant:
0:345                0 (const int)
0:345              Constant:
0:345                1 (const int)
0:346      move second child to first child ( temp 3-component vector of double)
0:346        vector swizzle ( temp 3-component vector of double)
0:346          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:346            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346              'invocation' ( temp uint)
0:346            Constant:
0:346              3 (const int)
0:346          Sequence
0:346            Constant:
0:346              0 (const int)
0:346            Constant:
0:346              1 (const int)
0:346            Constant:
0:346              2 (const int)
0:346        subgroupExclusiveMax ( global 3-component vector of double)
0:346          vector swizzle ( temp 3-component vector of double)
0:346            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:346              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346                Constant:
0:346                  2 (const int)
0:346              Constant:
0:346                3 (const int)
0:346            Sequence
0:346              Constant:
0:346                0 (const int)
0:346              Constant:
0:346                1 (const int)
0:346              Constant:
0:346                2 (const int)
0:347      move second child to first child ( temp 4-component vector of double)
0:347        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:347          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347            'invocation' ( temp uint)
0:347          Constant:
0:347            3 (const int)
0:347        subgroupExclusiveMax ( global 4-component vector of double)
0:347          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:347            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347              Constant:
0:347                3 (const int)
0:347            Constant:
0:347              3 (const int)
0:349      move second child to first child ( temp int)
0:349        direct index ( temp int)
0:349          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:349            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349              'invocation' ( temp uint)
0:349            Constant:
0:349              1 (const int)
0:349          Constant:
0:349            0 (const int)
0:349        subgroupExclusiveAnd ( global int)
0:349          direct index ( temp int)
0:349            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:349              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349                Constant:
0:349                  0 (const int)
0:349              Constant:
0:349                1 (const int)
0:349            Constant:
0:349              0 (const int)
0:350      move second child to first child ( temp 2-component vector of int)
0:350        vector swizzle ( temp 2-component vector of int)
0:350          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:350            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350              'invocation' ( temp uint)
0:350            Constant:
0:350              1 (const int)
0:350          Sequence
0:350            Constant:
0:350              0 (const int)
0:350            Constant:
0:350              1 (const int)
0:350        subgroupExclusiveAnd ( global 2-component vector of int)
0:350          vector swizzle ( temp 2-component vector of int)
0:350            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:350              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350                Constant:
0:350                  1 (const int)
0:350              Constant:
0:350                1 (const int)
0:350            Sequence
0:350              Constant:
0:350                0 (const int)
0:350              Constant:
0:350                1 (const int)
0:351      move second child to first child ( temp 3-component vector of int)
0:351        vector swizzle ( temp 3-component vector of int)
0:351          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:351            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351              'invocation' ( temp uint)
0:351            Constant:
0:351              1 (const int)
0:351          Sequence
0:351            Constant:
0:351              0 (const int)
0:351            Constant:
0:351              1 (const int)
0:351            Constant:
0:351              2 (const int)
0:351        subgroupExclusiveAnd ( global 3-component vector of int)
0:351          vector swizzle ( temp 3-component vector of int)
0:351            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:351              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351                Constant:
0:351                  2 (const int)
0:351              Constant:
0:351                1 (const int)
0:351            Sequence
0:351              Constant:
0:351                0 (const int)
0:351              Constant:
0:351                1 (const int)
0:351              Constant:
0:351                2 (const int)
0:352      move second child to first child ( temp 4-component vector of int)
0:352        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:352          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352            'invocation' ( temp uint)
0:352          Constant:
0:352            1 (const int)
0:352        subgroupExclusiveAnd ( global 4-component vector of int)
0:352          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:352            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352              Constant:
0:352                3 (const int)
0:352            Constant:
0:352              1 (const int)
0:354      move second child to first child ( temp uint)
0:354        direct index ( temp uint)
0:354          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:354            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354              'invocation' ( temp uint)
0:354            Constant:
0:354              2 (const int)
0:354          Constant:
0:354            0 (const int)
0:354        subgroupExclusiveAnd ( global uint)
0:354          direct index ( temp uint)
0:354            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:354              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354                Constant:
0:354                  0 (const int)
0:354              Constant:
0:354                2 (const int)
0:354            Constant:
0:354              0 (const int)
0:355      move second child to first child ( temp 2-component vector of uint)
0:355        vector swizzle ( temp 2-component vector of uint)
0:355          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:355            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355              'invocation' ( temp uint)
0:355            Constant:
0:355              2 (const int)
0:355          Sequence
0:355            Constant:
0:355              0 (const int)
0:355            Constant:
0:355              1 (const int)
0:355        subgroupExclusiveAnd ( global 2-component vector of uint)
0:355          vector swizzle ( temp 2-component vector of uint)
0:355            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:355              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355                Constant:
0:355                  1 (const int)
0:355              Constant:
0:355                2 (const int)
0:355            Sequence
0:355              Constant:
0:355                0 (const int)
0:355              Constant:
0:355                1 (const int)
0:356      move second child to first child ( temp 3-component vector of uint)
0:356        vector swizzle ( temp 3-component vector of uint)
0:356          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:356            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356              'invocation' ( temp uint)
0:356            Constant:
0:356              2 (const int)
0:356          Sequence
0:356            Constant:
0:356              0 (const int)
0:356            Constant:
0:356              1 (const int)
0:356            Constant:
0:356              2 (const int)
0:356        subgroupExclusiveAnd ( global 3-component vector of uint)
0:356          vector swizzle ( temp 3-component vector of uint)
0:356            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:356              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356                Constant:
0:356                  2 (const int)
0:356              Constant:
0:356                2 (const int)
0:356            Sequence
0:356              Constant:
0:356                0 (const int)
0:356              Constant:
0:356                1 (const int)
0:356              Constant:
0:356                2 (const int)
0:357      move second child to first child ( temp 4-component vector of uint)
0:357        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:357          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357            'invocation' ( temp uint)
0:357          Constant:
0:357            2 (const int)
0:357        subgroupExclusiveAnd ( global 4-component vector of uint)
0:357          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:357            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357              Constant:
0:357                3 (const int)
0:357            Constant:
0:357              2 (const int)
0:359      move second child to first child ( temp int)
0:359        direct index ( temp int)
0:359          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:359            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359              'invocation' ( temp uint)
0:359            Constant:
0:359              1 (const int)
0:359          Constant:
0:359            0 (const int)
0:359        Convert bool to int ( temp int)
0:359          subgroupExclusiveAnd ( global bool)
0:359            Compare Less Than ( temp bool)
0:359              direct index ( temp int)
0:359                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:359                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359                    Constant:
0:359                      0 (const int)
0:359                  Constant:
0:359                    1 (const int)
0:359                Constant:
0:359                  0 (const int)
0:359              Constant:
0:359                0 (const int)
0:360      move second child to first child ( temp 2-component vector of int)
0:360        vector swizzle ( temp 2-component vector of int)
0:360          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:360            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360              'invocation' ( temp uint)
0:360            Constant:
0:360              1 (const int)
0:360          Sequence
0:360            Constant:
0:360              0 (const int)
0:360            Constant:
0:360              1 (const int)
0:360        Convert bool to int ( temp 2-component vector of int)
0:360          subgroupExclusiveAnd ( global 2-component vector of bool)
0:360            Compare Less Than ( global 2-component vector of bool)
0:360              vector swizzle ( temp 2-component vector of int)
0:360                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:360                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360                    Constant:
0:360                      1 (const int)
0:360                  Constant:
0:360                    1 (const int)
0:360                Sequence
0:360                  Constant:
0:360                    0 (const int)
0:360                  Constant:
0:360                    1 (const int)
0:360              Constant:
0:360                0 (const int)
0:360                0 (const int)
0:361      move second child to first child ( temp 3-component vector of int)
0:361        vector swizzle ( temp 3-component vector of int)
0:361          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:361            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361              'invocation' ( temp uint)
0:361            Constant:
0:361              1 (const int)
0:361          Sequence
0:361            Constant:
0:361              0 (const int)
0:361            Constant:
0:361              1 (const int)
0:361            Constant:
0:361              2 (const int)
0:361        Convert bool to int ( temp 3-component vector of int)
0:361          subgroupExclusiveAnd ( global 3-component vector of bool)
0:361            Compare Less Than ( global 3-component vector of bool)
0:361              vector swizzle ( temp 3-component vector of int)
0:361                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:361                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361                    Constant:
0:361                      1 (const int)
0:361                  Constant:
0:361                    1 (const int)
0:361                Sequence
0:361                  Constant:
0:361                    0 (const int)
0:361                  Constant:
0:361                    1 (const int)
0:361                  Constant:
0:361                    2 (const int)
0:361              Constant:
0:361                0 (const int)
0:361                0 (const int)
0:361                0 (const int)
0:362      move second child to first child ( temp 4-component vector of int)
0:362        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:362          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362            'invocation' ( temp uint)
0:362          Constant:
0:362            1 (const int)
0:362        Convert bool to int ( temp 4-component vector of int)
0:362          subgroupExclusiveAnd ( global 4-component vector of bool)
0:362            Compare Less Than ( global 4-component vector of bool)
0:362              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:362                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362                  Constant:
0:362                    1 (const int)
0:362                Constant:
0:362                  1 (const int)
0:362              Constant:
0:362                0 (const int)
0:362                0 (const int)
0:362                0 (const int)
0:362                0 (const int)
0:364      move second child to first child ( temp int)
0:364        direct index ( temp int)
0:364          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:364            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364              'invocation' ( temp uint)
0:364            Constant:
0:364              1 (const int)
0:364          Constant:
0:364            0 (const int)
0:364        subgroupExclusiveOr ( global int)
0:364          direct index ( temp int)
0:364            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:364              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364                Constant:
0:364                  0 (const int)
0:364              Constant:
0:364                1 (const int)
0:364            Constant:
0:364              0 (const int)
0:365      move second child to first child ( temp 2-component vector of int)
0:365        vector swizzle ( temp 2-component vector of int)
0:365          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:365            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365              'invocation' ( temp uint)
0:365            Constant:
0:365              1 (const int)
0:365          Sequence
0:365            Constant:
0:365              0 (const int)
0:365            Constant:
0:365              1 (const int)
0:365        subgroupExclusiveOr ( global 2-component vector of int)
0:365          vector swizzle ( temp 2-component vector of int)
0:365            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:365              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365                Constant:
0:365                  1 (const int)
0:365              Constant:
0:365                1 (const int)
0:365            Sequence
0:365              Constant:
0:365                0 (const int)
0:365              Constant:
0:365                1 (const int)
0:366      move second child to first child ( temp 3-component vector of int)
0:366        vector swizzle ( temp 3-component vector of int)
0:366          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:366            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366              'invocation' ( temp uint)
0:366            Constant:
0:366              1 (const int)
0:366          Sequence
0:366            Constant:
0:366              0 (const int)
0:366            Constant:
0:366              1 (const int)
0:366            Constant:
0:366              2 (const int)
0:366        subgroupExclusiveOr ( global 3-component vector of int)
0:366          vector swizzle ( temp 3-component vector of int)
0:366            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:366              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366                Constant:
0:366                  2 (const int)
0:366              Constant:
0:366                1 (const int)
0:366            Sequence
0:366              Constant:
0:366                0 (const int)
0:366              Constant:
0:366                1 (const int)
0:366              Constant:
0:366                2 (const int)
0:367      move second child to first child ( temp 4-component vector of int)
0:367        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:367          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367            'invocation' ( temp uint)
0:367          Constant:
0:367            1 (const int)
0:367        subgroupExclusiveOr ( global 4-component vector of int)
0:367          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:367            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367              Constant:
0:367                3 (const int)
0:367            Constant:
0:367              1 (const int)
0:369      move second child to first child ( temp uint)
0:369        direct index ( temp uint)
0:369          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:369            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369              'invocation' ( temp uint)
0:369            Constant:
0:369              2 (const int)
0:369          Constant:
0:369            0 (const int)
0:369        subgroupExclusiveOr ( global uint)
0:369          direct index ( temp uint)
0:369            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:369              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369                Constant:
0:369                  0 (const int)
0:369              Constant:
0:369                2 (const int)
0:369            Constant:
0:369              0 (const int)
0:370      move second child to first child ( temp 2-component vector of uint)
0:370        vector swizzle ( temp 2-component vector of uint)
0:370          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:370            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370              'invocation' ( temp uint)
0:370            Constant:
0:370              2 (const int)
0:370          Sequence
0:370            Constant:
0:370              0 (const int)
0:370            Constant:
0:370              1 (const int)
0:370        subgroupExclusiveOr ( global 2-component vector of uint)
0:370          vector swizzle ( temp 2-component vector of uint)
0:370            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:370              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370                Constant:
0:370                  1 (const int)
0:370              Constant:
0:370                2 (const int)
0:370            Sequence
0:370              Constant:
0:370                0 (const int)
0:370              Constant:
0:370                1 (const int)
0:371      move second child to first child ( temp 3-component vector of uint)
0:371        vector swizzle ( temp 3-component vector of uint)
0:371          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:371            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371              'invocation' ( temp uint)
0:371            Constant:
0:371              2 (const int)
0:371          Sequence
0:371            Constant:
0:371              0 (const int)
0:371            Constant:
0:371              1 (const int)
0:371            Constant:
0:371              2 (const int)
0:371        subgroupExclusiveOr ( global 3-component vector of uint)
0:371          vector swizzle ( temp 3-component vector of uint)
0:371            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:371              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371                Constant:
0:371                  2 (const int)
0:371              Constant:
0:371                2 (const int)
0:371            Sequence
0:371              Constant:
0:371                0 (const int)
0:371              Constant:
0:371                1 (const int)
0:371              Constant:
0:371                2 (const int)
0:372      move second child to first child ( temp 4-component vector of uint)
0:372        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:372          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372            'invocation' ( temp uint)
0:372          Constant:
0:372            2 (const int)
0:372        subgroupExclusiveOr ( global 4-component vector of uint)
0:372          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:372            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372              Constant:
0:372                3 (const int)
0:372            Constant:
0:372              2 (const int)
0:374      move second child to first child ( temp int)
0:374        direct index ( temp int)
0:374          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:374            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374              'invocation' ( temp uint)
0:374            Constant:
0:374              1 (const int)
0:374          Constant:
0:374            0 (const int)
0:374        Convert bool to int ( temp int)
0:374          subgroupExclusiveOr ( global bool)
0:374            Compare Less Than ( temp bool)
0:374              direct index ( temp int)
0:374                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:374                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374                    Constant:
0:374                      0 (const int)
0:374                  Constant:
0:374                    1 (const int)
0:374                Constant:
0:374                  0 (const int)
0:374              Constant:
0:374                0 (const int)
0:375      move second child to first child ( temp 2-component vector of int)
0:375        vector swizzle ( temp 2-component vector of int)
0:375          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:375            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375              'invocation' ( temp uint)
0:375            Constant:
0:375              1 (const int)
0:375          Sequence
0:375            Constant:
0:375              0 (const int)
0:375            Constant:
0:375              1 (const int)
0:375        Convert bool to int ( temp 2-component vector of int)
0:375          subgroupExclusiveOr ( global 2-component vector of bool)
0:375            Compare Less Than ( global 2-component vector of bool)
0:375              vector swizzle ( temp 2-component vector of int)
0:375                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:375                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375                    Constant:
0:375                      1 (const int)
0:375                  Constant:
0:375                    1 (const int)
0:375                Sequence
0:375                  Constant:
0:375                    0 (const int)
0:375                  Constant:
0:375                    1 (const int)
0:375              Constant:
0:375                0 (const int)
0:375                0 (const int)
0:376      move second child to first child ( temp 3-component vector of int)
0:376        vector swizzle ( temp 3-component vector of int)
0:376          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:376            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376              'invocation' ( temp uint)
0:376            Constant:
0:376              1 (const int)
0:376          Sequence
0:376            Constant:
0:376              0 (const int)
0:376            Constant:
0:376              1 (const int)
0:376            Constant:
0:376              2 (const int)
0:376        Convert bool to int ( temp 3-component vector of int)
0:376          subgroupExclusiveOr ( global 3-component vector of bool)
0:376            Compare Less Than ( global 3-component vector of bool)
0:376              vector swizzle ( temp 3-component vector of int)
0:376                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:376                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376                    Constant:
0:376                      1 (const int)
0:376                  Constant:
0:376                    1 (const int)
0:376                Sequence
0:376                  Constant:
0:376                    0 (const int)
0:376                  Constant:
0:376                    1 (const int)
0:376                  Constant:
0:376                    2 (const int)
0:376              Constant:
0:376                0 (const int)
0:376                0 (const int)
0:376                0 (const int)
0:377      move second child to first child ( temp 4-component vector of int)
0:377        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:377          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377            'invocation' ( temp uint)
0:377          Constant:
0:377            1 (const int)
0:377        Convert bool to int ( temp 4-component vector of int)
0:377          subgroupExclusiveOr ( global 4-component vector of bool)
0:377            Compare Less Than ( global 4-component vector of bool)
0:377              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:377                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377                  Constant:
0:377                    1 (const int)
0:377                Constant:
0:377                  1 (const int)
0:377              Constant:
0:377                0 (const int)
0:377                0 (const int)
0:377                0 (const int)
0:377                0 (const int)
0:379      move second child to first child ( temp int)
0:379        direct index ( temp int)
0:379          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:379            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379              'invocation' ( temp uint)
0:379            Constant:
0:379              1 (const int)
0:379          Constant:
0:379            0 (const int)
0:379        subgroupExclusiveXor ( global int)
0:379          direct index ( temp int)
0:379            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:379              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379                Constant:
0:379                  0 (const int)
0:379              Constant:
0:379                1 (const int)
0:379            Constant:
0:379              0 (const int)
0:380      move second child to first child ( temp 2-component vector of int)
0:380        vector swizzle ( temp 2-component vector of int)
0:380          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:380            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380              'invocation' ( temp uint)
0:380            Constant:
0:380              1 (const int)
0:380          Sequence
0:380            Constant:
0:380              0 (const int)
0:380            Constant:
0:380              1 (const int)
0:380        subgroupExclusiveXor ( global 2-component vector of int)
0:380          vector swizzle ( temp 2-component vector of int)
0:380            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:380              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380                Constant:
0:380                  1 (const int)
0:380              Constant:
0:380                1 (const int)
0:380            Sequence
0:380              Constant:
0:380                0 (const int)
0:380              Constant:
0:380                1 (const int)
0:381      move second child to first child ( temp 3-component vector of int)
0:381        vector swizzle ( temp 3-component vector of int)
0:381          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:381            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381              'invocation' ( temp uint)
0:381            Constant:
0:381              1 (const int)
0:381          Sequence
0:381            Constant:
0:381              0 (const int)
0:381            Constant:
0:381              1 (const int)
0:381            Constant:
0:381              2 (const int)
0:381        subgroupExclusiveXor ( global 3-component vector of int)
0:381          vector swizzle ( temp 3-component vector of int)
0:381            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:381              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381                Constant:
0:381                  2 (const int)
0:381              Constant:
0:381                1 (const int)
0:381            Sequence
0:381              Constant:
0:381                0 (const int)
0:381              Constant:
0:381                1 (const int)
0:381              Constant:
0:381                2 (const int)
0:382      move second child to first child ( temp 4-component vector of int)
0:382        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:382          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382            'invocation' ( temp uint)
0:382          Constant:
0:382            1 (const int)
0:382        subgroupExclusiveXor ( global 4-component vector of int)
0:382          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:382            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382              Constant:
0:382                3 (const int)
0:382            Constant:
0:382              1 (const int)
0:384      move second child to first child ( temp uint)
0:384        direct index ( temp uint)
0:384          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:384            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384              'invocation' ( temp uint)
0:384            Constant:
0:384              2 (const int)
0:384          Constant:
0:384            0 (const int)
0:384        subgroupExclusiveXor ( global uint)
0:384          direct index ( temp uint)
0:384            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:384              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384                Constant:
0:384                  0 (const int)
0:384              Constant:
0:384                2 (const int)
0:384            Constant:
0:384              0 (const int)
0:385      move second child to first child ( temp 2-component vector of uint)
0:385        vector swizzle ( temp 2-component vector of uint)
0:385          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:385            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385              'invocation' ( temp uint)
0:385            Constant:
0:385              2 (const int)
0:385          Sequence
0:385            Constant:
0:385              0 (const int)
0:385            Constant:
0:385              1 (const int)
0:385        subgroupExclusiveXor ( global 2-component vector of uint)
0:385          vector swizzle ( temp 2-component vector of uint)
0:385            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:385              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385                Constant:
0:385                  1 (const int)
0:385              Constant:
0:385                2 (const int)
0:385            Sequence
0:385              Constant:
0:385                0 (const int)
0:385              Constant:
0:385                1 (const int)
0:386      move second child to first child ( temp 3-component vector of uint)
0:386        vector swizzle ( temp 3-component vector of uint)
0:386          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:386            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386              'invocation' ( temp uint)
0:386            Constant:
0:386              2 (const int)
0:386          Sequence
0:386            Constant:
0:386              0 (const int)
0:386            Constant:
0:386              1 (const int)
0:386            Constant:
0:386              2 (const int)
0:386        subgroupExclusiveXor ( global 3-component vector of uint)
0:386          vector swizzle ( temp 3-component vector of uint)
0:386            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:386              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386                Constant:
0:386                  2 (const int)
0:386              Constant:
0:386                2 (const int)
0:386            Sequence
0:386              Constant:
0:386                0 (const int)
0:386              Constant:
0:386                1 (const int)
0:386              Constant:
0:386                2 (const int)
0:387      move second child to first child ( temp 4-component vector of uint)
0:387        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:387          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387            'invocation' ( temp uint)
0:387          Constant:
0:387            2 (const int)
0:387        subgroupExclusiveXor ( global 4-component vector of uint)
0:387          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:387            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387              Constant:
0:387                3 (const int)
0:387            Constant:
0:387              2 (const int)
0:389      move second child to first child ( temp int)
0:389        direct index ( temp int)
0:389          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:389            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389              'invocation' ( temp uint)
0:389            Constant:
0:389              1 (const int)
0:389          Constant:
0:389            0 (const int)
0:389        Convert bool to int ( temp int)
0:389          subgroupExclusiveXor ( global bool)
0:389            Compare Less Than ( temp bool)
0:389              direct index ( temp int)
0:389                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:389                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389                    Constant:
0:389                      0 (const int)
0:389                  Constant:
0:389                    1 (const int)
0:389                Constant:
0:389                  0 (const int)
0:389              Constant:
0:389                0 (const int)
0:390      move second child to first child ( temp 2-component vector of int)
0:390        vector swizzle ( temp 2-component vector of int)
0:390          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:390            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390              'invocation' ( temp uint)
0:390            Constant:
0:390              1 (const int)
0:390          Sequence
0:390            Constant:
0:390              0 (const int)
0:390            Constant:
0:390              1 (const int)
0:390        Convert bool to int ( temp 2-component vector of int)
0:390          subgroupExclusiveXor ( global 2-component vector of bool)
0:390            Compare Less Than ( global 2-component vector of bool)
0:390              vector swizzle ( temp 2-component vector of int)
0:390                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:390                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390                    Constant:
0:390                      1 (const int)
0:390                  Constant:
0:390                    1 (const int)
0:390                Sequence
0:390                  Constant:
0:390                    0 (const int)
0:390                  Constant:
0:390                    1 (const int)
0:390              Constant:
0:390                0 (const int)
0:390                0 (const int)
0:391      move second child to first child ( temp 3-component vector of int)
0:391        vector swizzle ( temp 3-component vector of int)
0:391          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:391            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391              'invocation' ( temp uint)
0:391            Constant:
0:391              1 (const int)
0:391          Sequence
0:391            Constant:
0:391              0 (const int)
0:391            Constant:
0:391              1 (const int)
0:391            Constant:
0:391              2 (const int)
0:391        Convert bool to int ( temp 3-component vector of int)
0:391          subgroupExclusiveXor ( global 3-component vector of bool)
0:391            Compare Less Than ( global 3-component vector of bool)
0:391              vector swizzle ( temp 3-component vector of int)
0:391                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:391                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391                    Constant:
0:391                      1 (const int)
0:391                  Constant:
0:391                    1 (const int)
0:391                Sequence
0:391                  Constant:
0:391                    0 (const int)
0:391                  Constant:
0:391                    1 (const int)
0:391                  Constant:
0:391                    2 (const int)
0:391              Constant:
0:391                0 (const int)
0:391                0 (const int)
0:391                0 (const int)
0:392      move second child to first child ( temp 4-component vector of int)
0:392        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:392          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392            'invocation' ( temp uint)
0:392          Constant:
0:392            1 (const int)
0:392        Convert bool to int ( temp 4-component vector of int)
0:392          subgroupExclusiveXor ( global 4-component vector of bool)
0:392            Compare Less Than ( global 4-component vector of bool)
0:392              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:392                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392                  Constant:
0:392                    1 (const int)
0:392                Constant:
0:392                  1 (const int)
0:392              Constant:
0:392                0 (const int)
0:392                0 (const int)
0:392                0 (const int)
0:392                0 (const int)
0:?   Linker Objects
0:?     'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
0:?       8 (const uint)
0:?       1 (const uint)
0:?       1 (const uint)
0:?     'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})


Linked compute stage:


Shader version: 450
Requested GL_KHR_shader_subgroup_arithmetic
Requested GL_KHR_shader_subgroup_basic
local_size = (8, 1, 1)
0:? Sequence
0:15  Function Definition: main( ( global void)
0:15    Function Parameters: 
0:17    Sequence
0:17      Sequence
0:17        move second child to first child ( temp uint)
0:17          'invocation' ( temp uint)
0:17          mod ( temp uint)
0:17            add ( temp uint)
0:17              'gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
0:17              'gl_SubgroupSize' ( in uint SubgroupSize)
0:17            Constant:
0:17              4 (const uint)
0:19      move second child to first child ( temp float)
0:19        direct index ( temp float)
0:19          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:19            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19              'invocation' ( temp uint)
0:19            Constant:
0:19              0 (const int)
0:19          Constant:
0:19            0 (const int)
0:19        subgroupAdd ( global float)
0:19          direct index ( temp float)
0:19            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:19              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:19                Constant:
0:19                  0 (const int)
0:19              Constant:
0:19                0 (const int)
0:19            Constant:
0:19              0 (const int)
0:20      move second child to first child ( temp 2-component vector of float)
0:20        vector swizzle ( temp 2-component vector of float)
0:20          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:20            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20              'invocation' ( temp uint)
0:20            Constant:
0:20              0 (const int)
0:20          Sequence
0:20            Constant:
0:20              0 (const int)
0:20            Constant:
0:20              1 (const int)
0:20        subgroupAdd ( global 2-component vector of float)
0:20          vector swizzle ( temp 2-component vector of float)
0:20            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:20              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:20                Constant:
0:20                  1 (const int)
0:20              Constant:
0:20                0 (const int)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:21      move second child to first child ( temp 3-component vector of float)
0:21        vector swizzle ( temp 3-component vector of float)
0:21          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:21            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21              'invocation' ( temp uint)
0:21            Constant:
0:21              0 (const int)
0:21          Sequence
0:21            Constant:
0:21              0 (const int)
0:21            Constant:
0:21              1 (const int)
0:21            Constant:
0:21              2 (const int)
0:21        subgroupAdd ( global 3-component vector of float)
0:21          vector swizzle ( temp 3-component vector of float)
0:21            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:21              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:21                Constant:
0:21                  2 (const int)
0:21              Constant:
0:21                0 (const int)
0:21            Sequence
0:21              Constant:
0:21                0 (const int)
0:21              Constant:
0:21                1 (const int)
0:21              Constant:
0:21                2 (const int)
0:22      move second child to first child ( temp 4-component vector of float)
0:22        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:22          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22            'invocation' ( temp uint)
0:22          Constant:
0:22            0 (const int)
0:22        subgroupAdd ( global 4-component vector of float)
0:22          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:22            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:22              Constant:
0:22                3 (const int)
0:22            Constant:
0:22              0 (const int)
0:24      move second child to first child ( temp int)
0:24        direct index ( temp int)
0:24          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:24            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24              'invocation' ( temp uint)
0:24            Constant:
0:24              1 (const int)
0:24          Constant:
0:24            0 (const int)
0:24        subgroupAdd ( global int)
0:24          direct index ( temp int)
0:24            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:24              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:24                Constant:
0:24                  0 (const int)
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              0 (const int)
0:25      move second child to first child ( temp 2-component vector of int)
0:25        vector swizzle ( temp 2-component vector of int)
0:25          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:25            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25              'invocation' ( temp uint)
0:25            Constant:
0:25              1 (const int)
0:25          Sequence
0:25            Constant:
0:25              0 (const int)
0:25            Constant:
0:25              1 (const int)
0:25        subgroupAdd ( global 2-component vector of int)
0:25          vector swizzle ( temp 2-component vector of int)
0:25            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:25              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:25                Constant:
0:25                  1 (const int)
0:25              Constant:
0:25                1 (const int)
0:25            Sequence
0:25              Constant:
0:25                0 (const int)
0:25              Constant:
0:25                1 (const int)
0:26      move second child to first child ( temp 3-component vector of int)
0:26        vector swizzle ( temp 3-component vector of int)
0:26          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:26            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26              'invocation' ( temp uint)
0:26            Constant:
0:26              1 (const int)
0:26          Sequence
0:26            Constant:
0:26              0 (const int)
0:26            Constant:
0:26              1 (const int)
0:26            Constant:
0:26              2 (const int)
0:26        subgroupAdd ( global 3-component vector of int)
0:26          vector swizzle ( temp 3-component vector of int)
0:26            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:26              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:26                Constant:
0:26                  2 (const int)
0:26              Constant:
0:26                1 (const int)
0:26            Sequence
0:26              Constant:
0:26                0 (const int)
0:26              Constant:
0:26                1 (const int)
0:26              Constant:
0:26                2 (const int)
0:27      move second child to first child ( temp 4-component vector of int)
0:27        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:27          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27            'invocation' ( temp uint)
0:27          Constant:
0:27            1 (const int)
0:27        subgroupAdd ( global 4-component vector of int)
0:27          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:27            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:27              Constant:
0:27                3 (const int)
0:27            Constant:
0:27              1 (const int)
0:29      move second child to first child ( temp uint)
0:29        direct index ( temp uint)
0:29          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:29            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29              'invocation' ( temp uint)
0:29            Constant:
0:29              2 (const int)
0:29          Constant:
0:29            0 (const int)
0:29        subgroupAdd ( global uint)
0:29          direct index ( temp uint)
0:29            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:29              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:29                Constant:
0:29                  0 (const int)
0:29              Constant:
0:29                2 (const int)
0:29            Constant:
0:29              0 (const int)
0:30      move second child to first child ( temp 2-component vector of uint)
0:30        vector swizzle ( temp 2-component vector of uint)
0:30          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:30            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30              'invocation' ( temp uint)
0:30            Constant:
0:30              2 (const int)
0:30          Sequence
0:30            Constant:
0:30              0 (const int)
0:30            Constant:
0:30              1 (const int)
0:30        subgroupAdd ( global 2-component vector of uint)
0:30          vector swizzle ( temp 2-component vector of uint)
0:30            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:30              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:30                Constant:
0:30                  1 (const int)
0:30              Constant:
0:30                2 (const int)
0:30            Sequence
0:30              Constant:
0:30                0 (const int)
0:30              Constant:
0:30                1 (const int)
0:31      move second child to first child ( temp 3-component vector of uint)
0:31        vector swizzle ( temp 3-component vector of uint)
0:31          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:31            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31              'invocation' ( temp uint)
0:31            Constant:
0:31              2 (const int)
0:31          Sequence
0:31            Constant:
0:31              0 (const int)
0:31            Constant:
0:31              1 (const int)
0:31            Constant:
0:31              2 (const int)
0:31        subgroupAdd ( global 3-component vector of uint)
0:31          vector swizzle ( temp 3-component vector of uint)
0:31            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:31              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:31                Constant:
0:31                  2 (const int)
0:31              Constant:
0:31                2 (const int)
0:31            Sequence
0:31              Constant:
0:31                0 (const int)
0:31              Constant:
0:31                1 (const int)
0:31              Constant:
0:31                2 (const int)
0:32      move second child to first child ( temp 4-component vector of uint)
0:32        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:32          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32            'invocation' ( temp uint)
0:32          Constant:
0:32            2 (const int)
0:32        subgroupAdd ( global 4-component vector of uint)
0:32          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:32            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:32              Constant:
0:32                3 (const int)
0:32            Constant:
0:32              2 (const int)
0:34      move second child to first child ( temp double)
0:34        direct index ( temp double)
0:34          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:34            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34              'invocation' ( temp uint)
0:34            Constant:
0:34              3 (const int)
0:34          Constant:
0:34            0 (const int)
0:34        subgroupAdd ( global double)
0:34          direct index ( temp double)
0:34            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:34              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:34                Constant:
0:34                  0 (const int)
0:34              Constant:
0:34                3 (const int)
0:34            Constant:
0:34              0 (const int)
0:35      move second child to first child ( temp 2-component vector of double)
0:35        vector swizzle ( temp 2-component vector of double)
0:35          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:35            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35              'invocation' ( temp uint)
0:35            Constant:
0:35              3 (const int)
0:35          Sequence
0:35            Constant:
0:35              0 (const int)
0:35            Constant:
0:35              1 (const int)
0:35        subgroupAdd ( global 2-component vector of double)
0:35          vector swizzle ( temp 2-component vector of double)
0:35            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:35              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:35                Constant:
0:35                  1 (const int)
0:35              Constant:
0:35                3 (const int)
0:35            Sequence
0:35              Constant:
0:35                0 (const int)
0:35              Constant:
0:35                1 (const int)
0:36      move second child to first child ( temp 3-component vector of double)
0:36        vector swizzle ( temp 3-component vector of double)
0:36          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:36            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36              'invocation' ( temp uint)
0:36            Constant:
0:36              3 (const int)
0:36          Sequence
0:36            Constant:
0:36              0 (const int)
0:36            Constant:
0:36              1 (const int)
0:36            Constant:
0:36              2 (const int)
0:36        subgroupAdd ( global 3-component vector of double)
0:36          vector swizzle ( temp 3-component vector of double)
0:36            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:36              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:36                Constant:
0:36                  2 (const int)
0:36              Constant:
0:36                3 (const int)
0:36            Sequence
0:36              Constant:
0:36                0 (const int)
0:36              Constant:
0:36                1 (const int)
0:36              Constant:
0:36                2 (const int)
0:37      move second child to first child ( temp 4-component vector of double)
0:37        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:37          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37            'invocation' ( temp uint)
0:37          Constant:
0:37            3 (const int)
0:37        subgroupAdd ( global 4-component vector of double)
0:37          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:37            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:37              Constant:
0:37                3 (const int)
0:37            Constant:
0:37              3 (const int)
0:39      move second child to first child ( temp float)
0:39        direct index ( temp float)
0:39          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:39            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39              'invocation' ( temp uint)
0:39            Constant:
0:39              0 (const int)
0:39          Constant:
0:39            0 (const int)
0:39        subgroupMul ( global float)
0:39          direct index ( temp float)
0:39            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:39              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:39                Constant:
0:39                  0 (const int)
0:39              Constant:
0:39                0 (const int)
0:39            Constant:
0:39              0 (const int)
0:40      move second child to first child ( temp 2-component vector of float)
0:40        vector swizzle ( temp 2-component vector of float)
0:40          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:40            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40              'invocation' ( temp uint)
0:40            Constant:
0:40              0 (const int)
0:40          Sequence
0:40            Constant:
0:40              0 (const int)
0:40            Constant:
0:40              1 (const int)
0:40        subgroupMul ( global 2-component vector of float)
0:40          vector swizzle ( temp 2-component vector of float)
0:40            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:40              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:40                Constant:
0:40                  1 (const int)
0:40              Constant:
0:40                0 (const int)
0:40            Sequence
0:40              Constant:
0:40                0 (const int)
0:40              Constant:
0:40                1 (const int)
0:41      move second child to first child ( temp 3-component vector of float)
0:41        vector swizzle ( temp 3-component vector of float)
0:41          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:41            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41              'invocation' ( temp uint)
0:41            Constant:
0:41              0 (const int)
0:41          Sequence
0:41            Constant:
0:41              0 (const int)
0:41            Constant:
0:41              1 (const int)
0:41            Constant:
0:41              2 (const int)
0:41        subgroupMul ( global 3-component vector of float)
0:41          vector swizzle ( temp 3-component vector of float)
0:41            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:41              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:41                Constant:
0:41                  2 (const int)
0:41              Constant:
0:41                0 (const int)
0:41            Sequence
0:41              Constant:
0:41                0 (const int)
0:41              Constant:
0:41                1 (const int)
0:41              Constant:
0:41                2 (const int)
0:42      move second child to first child ( temp 4-component vector of float)
0:42        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:42          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42            'invocation' ( temp uint)
0:42          Constant:
0:42            0 (const int)
0:42        subgroupMul ( global 4-component vector of float)
0:42          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:42            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:42              Constant:
0:42                3 (const int)
0:42            Constant:
0:42              0 (const int)
0:44      move second child to first child ( temp int)
0:44        direct index ( temp int)
0:44          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:44            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44              'invocation' ( temp uint)
0:44            Constant:
0:44              1 (const int)
0:44          Constant:
0:44            0 (const int)
0:44        subgroupMul ( global int)
0:44          direct index ( temp int)
0:44            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:44              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:44                Constant:
0:44                  0 (const int)
0:44              Constant:
0:44                1 (const int)
0:44            Constant:
0:44              0 (const int)
0:45      move second child to first child ( temp 2-component vector of int)
0:45        vector swizzle ( temp 2-component vector of int)
0:45          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:45            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45              'invocation' ( temp uint)
0:45            Constant:
0:45              1 (const int)
0:45          Sequence
0:45            Constant:
0:45              0 (const int)
0:45            Constant:
0:45              1 (const int)
0:45        subgroupMul ( global 2-component vector of int)
0:45          vector swizzle ( temp 2-component vector of int)
0:45            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:45              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:45                Constant:
0:45                  1 (const int)
0:45              Constant:
0:45                1 (const int)
0:45            Sequence
0:45              Constant:
0:45                0 (const int)
0:45              Constant:
0:45                1 (const int)
0:46      move second child to first child ( temp 3-component vector of int)
0:46        vector swizzle ( temp 3-component vector of int)
0:46          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:46            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46              'invocation' ( temp uint)
0:46            Constant:
0:46              1 (const int)
0:46          Sequence
0:46            Constant:
0:46              0 (const int)
0:46            Constant:
0:46              1 (const int)
0:46            Constant:
0:46              2 (const int)
0:46        subgroupMul ( global 3-component vector of int)
0:46          vector swizzle ( temp 3-component vector of int)
0:46            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:46              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:46                Constant:
0:46                  2 (const int)
0:46              Constant:
0:46                1 (const int)
0:46            Sequence
0:46              Constant:
0:46                0 (const int)
0:46              Constant:
0:46                1 (const int)
0:46              Constant:
0:46                2 (const int)
0:47      move second child to first child ( temp 4-component vector of int)
0:47        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:47          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47            'invocation' ( temp uint)
0:47          Constant:
0:47            1 (const int)
0:47        subgroupMul ( global 4-component vector of int)
0:47          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:47            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:47              Constant:
0:47                3 (const int)
0:47            Constant:
0:47              1 (const int)
0:49      move second child to first child ( temp uint)
0:49        direct index ( temp uint)
0:49          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:49            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49              'invocation' ( temp uint)
0:49            Constant:
0:49              2 (const int)
0:49          Constant:
0:49            0 (const int)
0:49        subgroupMul ( global uint)
0:49          direct index ( temp uint)
0:49            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:49              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:49                Constant:
0:49                  0 (const int)
0:49              Constant:
0:49                2 (const int)
0:49            Constant:
0:49              0 (const int)
0:50      move second child to first child ( temp 2-component vector of uint)
0:50        vector swizzle ( temp 2-component vector of uint)
0:50          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:50            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50              'invocation' ( temp uint)
0:50            Constant:
0:50              2 (const int)
0:50          Sequence
0:50            Constant:
0:50              0 (const int)
0:50            Constant:
0:50              1 (const int)
0:50        subgroupMul ( global 2-component vector of uint)
0:50          vector swizzle ( temp 2-component vector of uint)
0:50            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:50              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:50                Constant:
0:50                  1 (const int)
0:50              Constant:
0:50                2 (const int)
0:50            Sequence
0:50              Constant:
0:50                0 (const int)
0:50              Constant:
0:50                1 (const int)
0:51      move second child to first child ( temp 3-component vector of uint)
0:51        vector swizzle ( temp 3-component vector of uint)
0:51          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:51            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51              'invocation' ( temp uint)
0:51            Constant:
0:51              2 (const int)
0:51          Sequence
0:51            Constant:
0:51              0 (const int)
0:51            Constant:
0:51              1 (const int)
0:51            Constant:
0:51              2 (const int)
0:51        subgroupMul ( global 3-component vector of uint)
0:51          vector swizzle ( temp 3-component vector of uint)
0:51            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:51              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:51                Constant:
0:51                  2 (const int)
0:51              Constant:
0:51                2 (const int)
0:51            Sequence
0:51              Constant:
0:51                0 (const int)
0:51              Constant:
0:51                1 (const int)
0:51              Constant:
0:51                2 (const int)
0:52      move second child to first child ( temp 4-component vector of uint)
0:52        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:52          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52            'invocation' ( temp uint)
0:52          Constant:
0:52            2 (const int)
0:52        subgroupMul ( global 4-component vector of uint)
0:52          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:52            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:52              Constant:
0:52                3 (const int)
0:52            Constant:
0:52              2 (const int)
0:54      move second child to first child ( temp double)
0:54        direct index ( temp double)
0:54          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:54            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54              'invocation' ( temp uint)
0:54            Constant:
0:54              3 (const int)
0:54          Constant:
0:54            0 (const int)
0:54        subgroupMul ( global double)
0:54          direct index ( temp double)
0:54            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:54              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:54                Constant:
0:54                  0 (const int)
0:54              Constant:
0:54                3 (const int)
0:54            Constant:
0:54              0 (const int)
0:55      move second child to first child ( temp 2-component vector of double)
0:55        vector swizzle ( temp 2-component vector of double)
0:55          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:55            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55              'invocation' ( temp uint)
0:55            Constant:
0:55              3 (const int)
0:55          Sequence
0:55            Constant:
0:55              0 (const int)
0:55            Constant:
0:55              1 (const int)
0:55        subgroupMul ( global 2-component vector of double)
0:55          vector swizzle ( temp 2-component vector of double)
0:55            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:55              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:55                Constant:
0:55                  1 (const int)
0:55              Constant:
0:55                3 (const int)
0:55            Sequence
0:55              Constant:
0:55                0 (const int)
0:55              Constant:
0:55                1 (const int)
0:56      move second child to first child ( temp 3-component vector of double)
0:56        vector swizzle ( temp 3-component vector of double)
0:56          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:56            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56              'invocation' ( temp uint)
0:56            Constant:
0:56              3 (const int)
0:56          Sequence
0:56            Constant:
0:56              0 (const int)
0:56            Constant:
0:56              1 (const int)
0:56            Constant:
0:56              2 (const int)
0:56        subgroupMul ( global 3-component vector of double)
0:56          vector swizzle ( temp 3-component vector of double)
0:56            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:56              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:56                Constant:
0:56                  2 (const int)
0:56              Constant:
0:56                3 (const int)
0:56            Sequence
0:56              Constant:
0:56                0 (const int)
0:56              Constant:
0:56                1 (const int)
0:56              Constant:
0:56                2 (const int)
0:57      move second child to first child ( temp 4-component vector of double)
0:57        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:57          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57            'invocation' ( temp uint)
0:57          Constant:
0:57            3 (const int)
0:57        subgroupMul ( global 4-component vector of double)
0:57          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:57            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:57              Constant:
0:57                3 (const int)
0:57            Constant:
0:57              3 (const int)
0:59      move second child to first child ( temp float)
0:59        direct index ( temp float)
0:59          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:59            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59              'invocation' ( temp uint)
0:59            Constant:
0:59              0 (const int)
0:59          Constant:
0:59            0 (const int)
0:59        subgroupMin ( global float)
0:59          direct index ( temp float)
0:59            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:59              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:59                Constant:
0:59                  0 (const int)
0:59              Constant:
0:59                0 (const int)
0:59            Constant:
0:59              0 (const int)
0:60      move second child to first child ( temp 2-component vector of float)
0:60        vector swizzle ( temp 2-component vector of float)
0:60          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:60            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60              'invocation' ( temp uint)
0:60            Constant:
0:60              0 (const int)
0:60          Sequence
0:60            Constant:
0:60              0 (const int)
0:60            Constant:
0:60              1 (const int)
0:60        subgroupMin ( global 2-component vector of float)
0:60          vector swizzle ( temp 2-component vector of float)
0:60            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:60              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:60                Constant:
0:60                  1 (const int)
0:60              Constant:
0:60                0 (const int)
0:60            Sequence
0:60              Constant:
0:60                0 (const int)
0:60              Constant:
0:60                1 (const int)
0:61      move second child to first child ( temp 3-component vector of float)
0:61        vector swizzle ( temp 3-component vector of float)
0:61          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:61            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61              'invocation' ( temp uint)
0:61            Constant:
0:61              0 (const int)
0:61          Sequence
0:61            Constant:
0:61              0 (const int)
0:61            Constant:
0:61              1 (const int)
0:61            Constant:
0:61              2 (const int)
0:61        subgroupMin ( global 3-component vector of float)
0:61          vector swizzle ( temp 3-component vector of float)
0:61            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:61              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:61                Constant:
0:61                  2 (const int)
0:61              Constant:
0:61                0 (const int)
0:61            Sequence
0:61              Constant:
0:61                0 (const int)
0:61              Constant:
0:61                1 (const int)
0:61              Constant:
0:61                2 (const int)
0:62      move second child to first child ( temp 4-component vector of float)
0:62        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:62          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62            'invocation' ( temp uint)
0:62          Constant:
0:62            0 (const int)
0:62        subgroupMin ( global 4-component vector of float)
0:62          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:62            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:62              Constant:
0:62                3 (const int)
0:62            Constant:
0:62              0 (const int)
0:64      move second child to first child ( temp int)
0:64        direct index ( temp int)
0:64          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:64            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64              'invocation' ( temp uint)
0:64            Constant:
0:64              1 (const int)
0:64          Constant:
0:64            0 (const int)
0:64        subgroupMin ( global int)
0:64          direct index ( temp int)
0:64            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:64              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:64                Constant:
0:64                  0 (const int)
0:64              Constant:
0:64                1 (const int)
0:64            Constant:
0:64              0 (const int)
0:65      move second child to first child ( temp 2-component vector of int)
0:65        vector swizzle ( temp 2-component vector of int)
0:65          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:65            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65              'invocation' ( temp uint)
0:65            Constant:
0:65              1 (const int)
0:65          Sequence
0:65            Constant:
0:65              0 (const int)
0:65            Constant:
0:65              1 (const int)
0:65        subgroupMin ( global 2-component vector of int)
0:65          vector swizzle ( temp 2-component vector of int)
0:65            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:65              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:65                Constant:
0:65                  1 (const int)
0:65              Constant:
0:65                1 (const int)
0:65            Sequence
0:65              Constant:
0:65                0 (const int)
0:65              Constant:
0:65                1 (const int)
0:66      move second child to first child ( temp 3-component vector of int)
0:66        vector swizzle ( temp 3-component vector of int)
0:66          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:66            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66              'invocation' ( temp uint)
0:66            Constant:
0:66              1 (const int)
0:66          Sequence
0:66            Constant:
0:66              0 (const int)
0:66            Constant:
0:66              1 (const int)
0:66            Constant:
0:66              2 (const int)
0:66        subgroupMin ( global 3-component vector of int)
0:66          vector swizzle ( temp 3-component vector of int)
0:66            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:66              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:66                Constant:
0:66                  2 (const int)
0:66              Constant:
0:66                1 (const int)
0:66            Sequence
0:66              Constant:
0:66                0 (const int)
0:66              Constant:
0:66                1 (const int)
0:66              Constant:
0:66                2 (const int)
0:67      move second child to first child ( temp 4-component vector of int)
0:67        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:67          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67            'invocation' ( temp uint)
0:67          Constant:
0:67            1 (const int)
0:67        subgroupMin ( global 4-component vector of int)
0:67          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:67            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:67              Constant:
0:67                3 (const int)
0:67            Constant:
0:67              1 (const int)
0:69      move second child to first child ( temp uint)
0:69        direct index ( temp uint)
0:69          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:69            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69              'invocation' ( temp uint)
0:69            Constant:
0:69              2 (const int)
0:69          Constant:
0:69            0 (const int)
0:69        subgroupMin ( global uint)
0:69          direct index ( temp uint)
0:69            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:69              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:69                Constant:
0:69                  0 (const int)
0:69              Constant:
0:69                2 (const int)
0:69            Constant:
0:69              0 (const int)
0:70      move second child to first child ( temp 2-component vector of uint)
0:70        vector swizzle ( temp 2-component vector of uint)
0:70          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:70            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70              'invocation' ( temp uint)
0:70            Constant:
0:70              2 (const int)
0:70          Sequence
0:70            Constant:
0:70              0 (const int)
0:70            Constant:
0:70              1 (const int)
0:70        subgroupMin ( global 2-component vector of uint)
0:70          vector swizzle ( temp 2-component vector of uint)
0:70            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:70              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:70                Constant:
0:70                  1 (const int)
0:70              Constant:
0:70                2 (const int)
0:70            Sequence
0:70              Constant:
0:70                0 (const int)
0:70              Constant:
0:70                1 (const int)
0:71      move second child to first child ( temp 3-component vector of uint)
0:71        vector swizzle ( temp 3-component vector of uint)
0:71          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:71            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71              'invocation' ( temp uint)
0:71            Constant:
0:71              2 (const int)
0:71          Sequence
0:71            Constant:
0:71              0 (const int)
0:71            Constant:
0:71              1 (const int)
0:71            Constant:
0:71              2 (const int)
0:71        subgroupMin ( global 3-component vector of uint)
0:71          vector swizzle ( temp 3-component vector of uint)
0:71            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:71              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:71                Constant:
0:71                  2 (const int)
0:71              Constant:
0:71                2 (const int)
0:71            Sequence
0:71              Constant:
0:71                0 (const int)
0:71              Constant:
0:71                1 (const int)
0:71              Constant:
0:71                2 (const int)
0:72      move second child to first child ( temp 4-component vector of uint)
0:72        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:72          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72            'invocation' ( temp uint)
0:72          Constant:
0:72            2 (const int)
0:72        subgroupMin ( global 4-component vector of uint)
0:72          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:72            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:72              Constant:
0:72                3 (const int)
0:72            Constant:
0:72              2 (const int)
0:74      move second child to first child ( temp double)
0:74        direct index ( temp double)
0:74          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:74            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74              'invocation' ( temp uint)
0:74            Constant:
0:74              3 (const int)
0:74          Constant:
0:74            0 (const int)
0:74        subgroupMin ( global double)
0:74          direct index ( temp double)
0:74            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:74              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:74                Constant:
0:74                  0 (const int)
0:74              Constant:
0:74                3 (const int)
0:74            Constant:
0:74              0 (const int)
0:75      move second child to first child ( temp 2-component vector of double)
0:75        vector swizzle ( temp 2-component vector of double)
0:75          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:75            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75              'invocation' ( temp uint)
0:75            Constant:
0:75              3 (const int)
0:75          Sequence
0:75            Constant:
0:75              0 (const int)
0:75            Constant:
0:75              1 (const int)
0:75        subgroupMin ( global 2-component vector of double)
0:75          vector swizzle ( temp 2-component vector of double)
0:75            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:75              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:75                Constant:
0:75                  1 (const int)
0:75              Constant:
0:75                3 (const int)
0:75            Sequence
0:75              Constant:
0:75                0 (const int)
0:75              Constant:
0:75                1 (const int)
0:76      move second child to first child ( temp 3-component vector of double)
0:76        vector swizzle ( temp 3-component vector of double)
0:76          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:76            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76              'invocation' ( temp uint)
0:76            Constant:
0:76              3 (const int)
0:76          Sequence
0:76            Constant:
0:76              0 (const int)
0:76            Constant:
0:76              1 (const int)
0:76            Constant:
0:76              2 (const int)
0:76        subgroupMin ( global 3-component vector of double)
0:76          vector swizzle ( temp 3-component vector of double)
0:76            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:76              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:76                Constant:
0:76                  2 (const int)
0:76              Constant:
0:76                3 (const int)
0:76            Sequence
0:76              Constant:
0:76                0 (const int)
0:76              Constant:
0:76                1 (const int)
0:76              Constant:
0:76                2 (const int)
0:77      move second child to first child ( temp 4-component vector of double)
0:77        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:77          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77            'invocation' ( temp uint)
0:77          Constant:
0:77            3 (const int)
0:77        subgroupMin ( global 4-component vector of double)
0:77          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:77            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:77              Constant:
0:77                3 (const int)
0:77            Constant:
0:77              3 (const int)
0:79      move second child to first child ( temp float)
0:79        direct index ( temp float)
0:79          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:79            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79              'invocation' ( temp uint)
0:79            Constant:
0:79              0 (const int)
0:79          Constant:
0:79            0 (const int)
0:79        subgroupMax ( global float)
0:79          direct index ( temp float)
0:79            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:79              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:79                Constant:
0:79                  0 (const int)
0:79              Constant:
0:79                0 (const int)
0:79            Constant:
0:79              0 (const int)
0:80      move second child to first child ( temp 2-component vector of float)
0:80        vector swizzle ( temp 2-component vector of float)
0:80          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:80            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80              'invocation' ( temp uint)
0:80            Constant:
0:80              0 (const int)
0:80          Sequence
0:80            Constant:
0:80              0 (const int)
0:80            Constant:
0:80              1 (const int)
0:80        subgroupMax ( global 2-component vector of float)
0:80          vector swizzle ( temp 2-component vector of float)
0:80            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:80              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:80                Constant:
0:80                  1 (const int)
0:80              Constant:
0:80                0 (const int)
0:80            Sequence
0:80              Constant:
0:80                0 (const int)
0:80              Constant:
0:80                1 (const int)
0:81      move second child to first child ( temp 3-component vector of float)
0:81        vector swizzle ( temp 3-component vector of float)
0:81          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:81            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81              'invocation' ( temp uint)
0:81            Constant:
0:81              0 (const int)
0:81          Sequence
0:81            Constant:
0:81              0 (const int)
0:81            Constant:
0:81              1 (const int)
0:81            Constant:
0:81              2 (const int)
0:81        subgroupMax ( global 3-component vector of float)
0:81          vector swizzle ( temp 3-component vector of float)
0:81            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:81              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:81                Constant:
0:81                  2 (const int)
0:81              Constant:
0:81                0 (const int)
0:81            Sequence
0:81              Constant:
0:81                0 (const int)
0:81              Constant:
0:81                1 (const int)
0:81              Constant:
0:81                2 (const int)
0:82      move second child to first child ( temp 4-component vector of float)
0:82        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:82          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82            'invocation' ( temp uint)
0:82          Constant:
0:82            0 (const int)
0:82        subgroupMax ( global 4-component vector of float)
0:82          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:82            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:82              Constant:
0:82                3 (const int)
0:82            Constant:
0:82              0 (const int)
0:84      move second child to first child ( temp int)
0:84        direct index ( temp int)
0:84          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:84            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84              'invocation' ( temp uint)
0:84            Constant:
0:84              1 (const int)
0:84          Constant:
0:84            0 (const int)
0:84        subgroupMax ( global int)
0:84          direct index ( temp int)
0:84            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:84              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:84                Constant:
0:84                  0 (const int)
0:84              Constant:
0:84                1 (const int)
0:84            Constant:
0:84              0 (const int)
0:85      move second child to first child ( temp 2-component vector of int)
0:85        vector swizzle ( temp 2-component vector of int)
0:85          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:85            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85              'invocation' ( temp uint)
0:85            Constant:
0:85              1 (const int)
0:85          Sequence
0:85            Constant:
0:85              0 (const int)
0:85            Constant:
0:85              1 (const int)
0:85        subgroupMax ( global 2-component vector of int)
0:85          vector swizzle ( temp 2-component vector of int)
0:85            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:85              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:85                Constant:
0:85                  1 (const int)
0:85              Constant:
0:85                1 (const int)
0:85            Sequence
0:85              Constant:
0:85                0 (const int)
0:85              Constant:
0:85                1 (const int)
0:86      move second child to first child ( temp 3-component vector of int)
0:86        vector swizzle ( temp 3-component vector of int)
0:86          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:86            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86              'invocation' ( temp uint)
0:86            Constant:
0:86              1 (const int)
0:86          Sequence
0:86            Constant:
0:86              0 (const int)
0:86            Constant:
0:86              1 (const int)
0:86            Constant:
0:86              2 (const int)
0:86        subgroupMax ( global 3-component vector of int)
0:86          vector swizzle ( temp 3-component vector of int)
0:86            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:86              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:86                Constant:
0:86                  2 (const int)
0:86              Constant:
0:86                1 (const int)
0:86            Sequence
0:86              Constant:
0:86                0 (const int)
0:86              Constant:
0:86                1 (const int)
0:86              Constant:
0:86                2 (const int)
0:87      move second child to first child ( temp 4-component vector of int)
0:87        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:87          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87            'invocation' ( temp uint)
0:87          Constant:
0:87            1 (const int)
0:87        subgroupMax ( global 4-component vector of int)
0:87          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:87            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:87              Constant:
0:87                3 (const int)
0:87            Constant:
0:87              1 (const int)
0:89      move second child to first child ( temp uint)
0:89        direct index ( temp uint)
0:89          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:89            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89              'invocation' ( temp uint)
0:89            Constant:
0:89              2 (const int)
0:89          Constant:
0:89            0 (const int)
0:89        subgroupMax ( global uint)
0:89          direct index ( temp uint)
0:89            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:89              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:89                Constant:
0:89                  0 (const int)
0:89              Constant:
0:89                2 (const int)
0:89            Constant:
0:89              0 (const int)
0:90      move second child to first child ( temp 2-component vector of uint)
0:90        vector swizzle ( temp 2-component vector of uint)
0:90          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:90            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90              'invocation' ( temp uint)
0:90            Constant:
0:90              2 (const int)
0:90          Sequence
0:90            Constant:
0:90              0 (const int)
0:90            Constant:
0:90              1 (const int)
0:90        subgroupMax ( global 2-component vector of uint)
0:90          vector swizzle ( temp 2-component vector of uint)
0:90            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:90              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:90                Constant:
0:90                  1 (const int)
0:90              Constant:
0:90                2 (const int)
0:90            Sequence
0:90              Constant:
0:90                0 (const int)
0:90              Constant:
0:90                1 (const int)
0:91      move second child to first child ( temp 3-component vector of uint)
0:91        vector swizzle ( temp 3-component vector of uint)
0:91          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:91            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91              'invocation' ( temp uint)
0:91            Constant:
0:91              2 (const int)
0:91          Sequence
0:91            Constant:
0:91              0 (const int)
0:91            Constant:
0:91              1 (const int)
0:91            Constant:
0:91              2 (const int)
0:91        subgroupMax ( global 3-component vector of uint)
0:91          vector swizzle ( temp 3-component vector of uint)
0:91            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:91              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:91                Constant:
0:91                  2 (const int)
0:91              Constant:
0:91                2 (const int)
0:91            Sequence
0:91              Constant:
0:91                0 (const int)
0:91              Constant:
0:91                1 (const int)
0:91              Constant:
0:91                2 (const int)
0:92      move second child to first child ( temp 4-component vector of uint)
0:92        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:92          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92            'invocation' ( temp uint)
0:92          Constant:
0:92            2 (const int)
0:92        subgroupMax ( global 4-component vector of uint)
0:92          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:92            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:92              Constant:
0:92                3 (const int)
0:92            Constant:
0:92              2 (const int)
0:94      move second child to first child ( temp double)
0:94        direct index ( temp double)
0:94          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:94            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94              'invocation' ( temp uint)
0:94            Constant:
0:94              3 (const int)
0:94          Constant:
0:94            0 (const int)
0:94        subgroupMax ( global double)
0:94          direct index ( temp double)
0:94            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:94              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:94                Constant:
0:94                  0 (const int)
0:94              Constant:
0:94                3 (const int)
0:94            Constant:
0:94              0 (const int)
0:95      move second child to first child ( temp 2-component vector of double)
0:95        vector swizzle ( temp 2-component vector of double)
0:95          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:95            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95              'invocation' ( temp uint)
0:95            Constant:
0:95              3 (const int)
0:95          Sequence
0:95            Constant:
0:95              0 (const int)
0:95            Constant:
0:95              1 (const int)
0:95        subgroupMax ( global 2-component vector of double)
0:95          vector swizzle ( temp 2-component vector of double)
0:95            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:95              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:95                Constant:
0:95                  1 (const int)
0:95              Constant:
0:95                3 (const int)
0:95            Sequence
0:95              Constant:
0:95                0 (const int)
0:95              Constant:
0:95                1 (const int)
0:96      move second child to first child ( temp 3-component vector of double)
0:96        vector swizzle ( temp 3-component vector of double)
0:96          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:96            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96              'invocation' ( temp uint)
0:96            Constant:
0:96              3 (const int)
0:96          Sequence
0:96            Constant:
0:96              0 (const int)
0:96            Constant:
0:96              1 (const int)
0:96            Constant:
0:96              2 (const int)
0:96        subgroupMax ( global 3-component vector of double)
0:96          vector swizzle ( temp 3-component vector of double)
0:96            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:96              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:96                Constant:
0:96                  2 (const int)
0:96              Constant:
0:96                3 (const int)
0:96            Sequence
0:96              Constant:
0:96                0 (const int)
0:96              Constant:
0:96                1 (const int)
0:96              Constant:
0:96                2 (const int)
0:97      move second child to first child ( temp 4-component vector of double)
0:97        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:97          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97            'invocation' ( temp uint)
0:97          Constant:
0:97            3 (const int)
0:97        subgroupMax ( global 4-component vector of double)
0:97          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:97            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:97              Constant:
0:97                3 (const int)
0:97            Constant:
0:97              3 (const int)
0:99      move second child to first child ( temp int)
0:99        direct index ( temp int)
0:99          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:99            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99              'invocation' ( temp uint)
0:99            Constant:
0:99              1 (const int)
0:99          Constant:
0:99            0 (const int)
0:99        subgroupAnd ( global int)
0:99          direct index ( temp int)
0:99            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:99              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:99                Constant:
0:99                  0 (const int)
0:99              Constant:
0:99                1 (const int)
0:99            Constant:
0:99              0 (const int)
0:100      move second child to first child ( temp 2-component vector of int)
0:100        vector swizzle ( temp 2-component vector of int)
0:100          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:100            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100              'invocation' ( temp uint)
0:100            Constant:
0:100              1 (const int)
0:100          Sequence
0:100            Constant:
0:100              0 (const int)
0:100            Constant:
0:100              1 (const int)
0:100        subgroupAnd ( global 2-component vector of int)
0:100          vector swizzle ( temp 2-component vector of int)
0:100            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:100              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:100                Constant:
0:100                  1 (const int)
0:100              Constant:
0:100                1 (const int)
0:100            Sequence
0:100              Constant:
0:100                0 (const int)
0:100              Constant:
0:100                1 (const int)
0:101      move second child to first child ( temp 3-component vector of int)
0:101        vector swizzle ( temp 3-component vector of int)
0:101          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:101            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101              'invocation' ( temp uint)
0:101            Constant:
0:101              1 (const int)
0:101          Sequence
0:101            Constant:
0:101              0 (const int)
0:101            Constant:
0:101              1 (const int)
0:101            Constant:
0:101              2 (const int)
0:101        subgroupAnd ( global 3-component vector of int)
0:101          vector swizzle ( temp 3-component vector of int)
0:101            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:101              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:101                Constant:
0:101                  2 (const int)
0:101              Constant:
0:101                1 (const int)
0:101            Sequence
0:101              Constant:
0:101                0 (const int)
0:101              Constant:
0:101                1 (const int)
0:101              Constant:
0:101                2 (const int)
0:102      move second child to first child ( temp 4-component vector of int)
0:102        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:102          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102            'invocation' ( temp uint)
0:102          Constant:
0:102            1 (const int)
0:102        subgroupAnd ( global 4-component vector of int)
0:102          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:102            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:102              Constant:
0:102                3 (const int)
0:102            Constant:
0:102              1 (const int)
0:104      move second child to first child ( temp uint)
0:104        direct index ( temp uint)
0:104          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:104            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104              'invocation' ( temp uint)
0:104            Constant:
0:104              2 (const int)
0:104          Constant:
0:104            0 (const int)
0:104        subgroupAnd ( global uint)
0:104          direct index ( temp uint)
0:104            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:104              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:104                Constant:
0:104                  0 (const int)
0:104              Constant:
0:104                2 (const int)
0:104            Constant:
0:104              0 (const int)
0:105      move second child to first child ( temp 2-component vector of uint)
0:105        vector swizzle ( temp 2-component vector of uint)
0:105          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:105            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105              'invocation' ( temp uint)
0:105            Constant:
0:105              2 (const int)
0:105          Sequence
0:105            Constant:
0:105              0 (const int)
0:105            Constant:
0:105              1 (const int)
0:105        subgroupAnd ( global 2-component vector of uint)
0:105          vector swizzle ( temp 2-component vector of uint)
0:105            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:105              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:105                Constant:
0:105                  1 (const int)
0:105              Constant:
0:105                2 (const int)
0:105            Sequence
0:105              Constant:
0:105                0 (const int)
0:105              Constant:
0:105                1 (const int)
0:106      move second child to first child ( temp 3-component vector of uint)
0:106        vector swizzle ( temp 3-component vector of uint)
0:106          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:106            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106              'invocation' ( temp uint)
0:106            Constant:
0:106              2 (const int)
0:106          Sequence
0:106            Constant:
0:106              0 (const int)
0:106            Constant:
0:106              1 (const int)
0:106            Constant:
0:106              2 (const int)
0:106        subgroupAnd ( global 3-component vector of uint)
0:106          vector swizzle ( temp 3-component vector of uint)
0:106            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:106              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:106                Constant:
0:106                  2 (const int)
0:106              Constant:
0:106                2 (const int)
0:106            Sequence
0:106              Constant:
0:106                0 (const int)
0:106              Constant:
0:106                1 (const int)
0:106              Constant:
0:106                2 (const int)
0:107      move second child to first child ( temp 4-component vector of uint)
0:107        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:107          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107            'invocation' ( temp uint)
0:107          Constant:
0:107            2 (const int)
0:107        subgroupAnd ( global 4-component vector of uint)
0:107          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:107            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:107              Constant:
0:107                3 (const int)
0:107            Constant:
0:107              2 (const int)
0:109      move second child to first child ( temp int)
0:109        direct index ( temp int)
0:109          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:109            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109              'invocation' ( temp uint)
0:109            Constant:
0:109              1 (const int)
0:109          Constant:
0:109            0 (const int)
0:109        Convert bool to int ( temp int)
0:109          subgroupAnd ( global bool)
0:109            Compare Less Than ( temp bool)
0:109              direct index ( temp int)
0:109                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:109                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:109                    Constant:
0:109                      0 (const int)
0:109                  Constant:
0:109                    1 (const int)
0:109                Constant:
0:109                  0 (const int)
0:109              Constant:
0:109                0 (const int)
0:110      move second child to first child ( temp 2-component vector of int)
0:110        vector swizzle ( temp 2-component vector of int)
0:110          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:110            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110              'invocation' ( temp uint)
0:110            Constant:
0:110              1 (const int)
0:110          Sequence
0:110            Constant:
0:110              0 (const int)
0:110            Constant:
0:110              1 (const int)
0:110        Convert bool to int ( temp 2-component vector of int)
0:110          subgroupAnd ( global 2-component vector of bool)
0:110            Compare Less Than ( global 2-component vector of bool)
0:110              vector swizzle ( temp 2-component vector of int)
0:110                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:110                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:110                    Constant:
0:110                      1 (const int)
0:110                  Constant:
0:110                    1 (const int)
0:110                Sequence
0:110                  Constant:
0:110                    0 (const int)
0:110                  Constant:
0:110                    1 (const int)
0:110              Constant:
0:110                0 (const int)
0:110                0 (const int)
0:111      move second child to first child ( temp 3-component vector of int)
0:111        vector swizzle ( temp 3-component vector of int)
0:111          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:111            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111              'invocation' ( temp uint)
0:111            Constant:
0:111              1 (const int)
0:111          Sequence
0:111            Constant:
0:111              0 (const int)
0:111            Constant:
0:111              1 (const int)
0:111            Constant:
0:111              2 (const int)
0:111        Convert bool to int ( temp 3-component vector of int)
0:111          subgroupAnd ( global 3-component vector of bool)
0:111            Compare Less Than ( global 3-component vector of bool)
0:111              vector swizzle ( temp 3-component vector of int)
0:111                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:111                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:111                    Constant:
0:111                      1 (const int)
0:111                  Constant:
0:111                    1 (const int)
0:111                Sequence
0:111                  Constant:
0:111                    0 (const int)
0:111                  Constant:
0:111                    1 (const int)
0:111                  Constant:
0:111                    2 (const int)
0:111              Constant:
0:111                0 (const int)
0:111                0 (const int)
0:111                0 (const int)
0:112      move second child to first child ( temp 4-component vector of int)
0:112        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:112          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112            'invocation' ( temp uint)
0:112          Constant:
0:112            1 (const int)
0:112        Convert bool to int ( temp 4-component vector of int)
0:112          subgroupAnd ( global 4-component vector of bool)
0:112            Compare Less Than ( global 4-component vector of bool)
0:112              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:112                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:112                  Constant:
0:112                    1 (const int)
0:112                Constant:
0:112                  1 (const int)
0:112              Constant:
0:112                0 (const int)
0:112                0 (const int)
0:112                0 (const int)
0:112                0 (const int)
0:114      move second child to first child ( temp int)
0:114        direct index ( temp int)
0:114          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:114            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114              'invocation' ( temp uint)
0:114            Constant:
0:114              1 (const int)
0:114          Constant:
0:114            0 (const int)
0:114        subgroupOr ( global int)
0:114          direct index ( temp int)
0:114            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:114              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:114                Constant:
0:114                  0 (const int)
0:114              Constant:
0:114                1 (const int)
0:114            Constant:
0:114              0 (const int)
0:115      move second child to first child ( temp 2-component vector of int)
0:115        vector swizzle ( temp 2-component vector of int)
0:115          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:115            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115              'invocation' ( temp uint)
0:115            Constant:
0:115              1 (const int)
0:115          Sequence
0:115            Constant:
0:115              0 (const int)
0:115            Constant:
0:115              1 (const int)
0:115        subgroupOr ( global 2-component vector of int)
0:115          vector swizzle ( temp 2-component vector of int)
0:115            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:115              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:115                Constant:
0:115                  1 (const int)
0:115              Constant:
0:115                1 (const int)
0:115            Sequence
0:115              Constant:
0:115                0 (const int)
0:115              Constant:
0:115                1 (const int)
0:116      move second child to first child ( temp 3-component vector of int)
0:116        vector swizzle ( temp 3-component vector of int)
0:116          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:116            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116              'invocation' ( temp uint)
0:116            Constant:
0:116              1 (const int)
0:116          Sequence
0:116            Constant:
0:116              0 (const int)
0:116            Constant:
0:116              1 (const int)
0:116            Constant:
0:116              2 (const int)
0:116        subgroupOr ( global 3-component vector of int)
0:116          vector swizzle ( temp 3-component vector of int)
0:116            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:116              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:116                Constant:
0:116                  2 (const int)
0:116              Constant:
0:116                1 (const int)
0:116            Sequence
0:116              Constant:
0:116                0 (const int)
0:116              Constant:
0:116                1 (const int)
0:116              Constant:
0:116                2 (const int)
0:117      move second child to first child ( temp 4-component vector of int)
0:117        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:117          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117            'invocation' ( temp uint)
0:117          Constant:
0:117            1 (const int)
0:117        subgroupOr ( global 4-component vector of int)
0:117          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:117            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:117              Constant:
0:117                3 (const int)
0:117            Constant:
0:117              1 (const int)
0:119      move second child to first child ( temp uint)
0:119        direct index ( temp uint)
0:119          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:119            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119              'invocation' ( temp uint)
0:119            Constant:
0:119              2 (const int)
0:119          Constant:
0:119            0 (const int)
0:119        subgroupOr ( global uint)
0:119          direct index ( temp uint)
0:119            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:119              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:119                Constant:
0:119                  0 (const int)
0:119              Constant:
0:119                2 (const int)
0:119            Constant:
0:119              0 (const int)
0:120      move second child to first child ( temp 2-component vector of uint)
0:120        vector swizzle ( temp 2-component vector of uint)
0:120          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:120            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120              'invocation' ( temp uint)
0:120            Constant:
0:120              2 (const int)
0:120          Sequence
0:120            Constant:
0:120              0 (const int)
0:120            Constant:
0:120              1 (const int)
0:120        subgroupOr ( global 2-component vector of uint)
0:120          vector swizzle ( temp 2-component vector of uint)
0:120            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:120              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:120                Constant:
0:120                  1 (const int)
0:120              Constant:
0:120                2 (const int)
0:120            Sequence
0:120              Constant:
0:120                0 (const int)
0:120              Constant:
0:120                1 (const int)
0:121      move second child to first child ( temp 3-component vector of uint)
0:121        vector swizzle ( temp 3-component vector of uint)
0:121          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:121            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121              'invocation' ( temp uint)
0:121            Constant:
0:121              2 (const int)
0:121          Sequence
0:121            Constant:
0:121              0 (const int)
0:121            Constant:
0:121              1 (const int)
0:121            Constant:
0:121              2 (const int)
0:121        subgroupOr ( global 3-component vector of uint)
0:121          vector swizzle ( temp 3-component vector of uint)
0:121            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:121              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:121                Constant:
0:121                  2 (const int)
0:121              Constant:
0:121                2 (const int)
0:121            Sequence
0:121              Constant:
0:121                0 (const int)
0:121              Constant:
0:121                1 (const int)
0:121              Constant:
0:121                2 (const int)
0:122      move second child to first child ( temp 4-component vector of uint)
0:122        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:122          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122            'invocation' ( temp uint)
0:122          Constant:
0:122            2 (const int)
0:122        subgroupOr ( global 4-component vector of uint)
0:122          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:122            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:122              Constant:
0:122                3 (const int)
0:122            Constant:
0:122              2 (const int)
0:124      move second child to first child ( temp int)
0:124        direct index ( temp int)
0:124          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:124            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124              'invocation' ( temp uint)
0:124            Constant:
0:124              1 (const int)
0:124          Constant:
0:124            0 (const int)
0:124        Convert bool to int ( temp int)
0:124          subgroupOr ( global bool)
0:124            Compare Less Than ( temp bool)
0:124              direct index ( temp int)
0:124                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:124                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:124                    Constant:
0:124                      0 (const int)
0:124                  Constant:
0:124                    1 (const int)
0:124                Constant:
0:124                  0 (const int)
0:124              Constant:
0:124                0 (const int)
0:125      move second child to first child ( temp 2-component vector of int)
0:125        vector swizzle ( temp 2-component vector of int)
0:125          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:125            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125              'invocation' ( temp uint)
0:125            Constant:
0:125              1 (const int)
0:125          Sequence
0:125            Constant:
0:125              0 (const int)
0:125            Constant:
0:125              1 (const int)
0:125        Convert bool to int ( temp 2-component vector of int)
0:125          subgroupOr ( global 2-component vector of bool)
0:125            Compare Less Than ( global 2-component vector of bool)
0:125              vector swizzle ( temp 2-component vector of int)
0:125                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:125                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:125                    Constant:
0:125                      1 (const int)
0:125                  Constant:
0:125                    1 (const int)
0:125                Sequence
0:125                  Constant:
0:125                    0 (const int)
0:125                  Constant:
0:125                    1 (const int)
0:125              Constant:
0:125                0 (const int)
0:125                0 (const int)
0:126      move second child to first child ( temp 3-component vector of int)
0:126        vector swizzle ( temp 3-component vector of int)
0:126          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:126            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126              'invocation' ( temp uint)
0:126            Constant:
0:126              1 (const int)
0:126          Sequence
0:126            Constant:
0:126              0 (const int)
0:126            Constant:
0:126              1 (const int)
0:126            Constant:
0:126              2 (const int)
0:126        Convert bool to int ( temp 3-component vector of int)
0:126          subgroupOr ( global 3-component vector of bool)
0:126            Compare Less Than ( global 3-component vector of bool)
0:126              vector swizzle ( temp 3-component vector of int)
0:126                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:126                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:126                    Constant:
0:126                      1 (const int)
0:126                  Constant:
0:126                    1 (const int)
0:126                Sequence
0:126                  Constant:
0:126                    0 (const int)
0:126                  Constant:
0:126                    1 (const int)
0:126                  Constant:
0:126                    2 (const int)
0:126              Constant:
0:126                0 (const int)
0:126                0 (const int)
0:126                0 (const int)
0:127      move second child to first child ( temp 4-component vector of int)
0:127        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:127          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127            'invocation' ( temp uint)
0:127          Constant:
0:127            1 (const int)
0:127        Convert bool to int ( temp 4-component vector of int)
0:127          subgroupOr ( global 4-component vector of bool)
0:127            Compare Less Than ( global 4-component vector of bool)
0:127              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:127                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:127                  Constant:
0:127                    1 (const int)
0:127                Constant:
0:127                  1 (const int)
0:127              Constant:
0:127                0 (const int)
0:127                0 (const int)
0:127                0 (const int)
0:127                0 (const int)
0:129      move second child to first child ( temp int)
0:129        direct index ( temp int)
0:129          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:129            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129              'invocation' ( temp uint)
0:129            Constant:
0:129              1 (const int)
0:129          Constant:
0:129            0 (const int)
0:129        subgroupXor ( global int)
0:129          direct index ( temp int)
0:129            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:129              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:129                Constant:
0:129                  0 (const int)
0:129              Constant:
0:129                1 (const int)
0:129            Constant:
0:129              0 (const int)
0:130      move second child to first child ( temp 2-component vector of int)
0:130        vector swizzle ( temp 2-component vector of int)
0:130          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:130            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130              'invocation' ( temp uint)
0:130            Constant:
0:130              1 (const int)
0:130          Sequence
0:130            Constant:
0:130              0 (const int)
0:130            Constant:
0:130              1 (const int)
0:130        subgroupXor ( global 2-component vector of int)
0:130          vector swizzle ( temp 2-component vector of int)
0:130            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:130              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:130                Constant:
0:130                  1 (const int)
0:130              Constant:
0:130                1 (const int)
0:130            Sequence
0:130              Constant:
0:130                0 (const int)
0:130              Constant:
0:130                1 (const int)
0:131      move second child to first child ( temp 3-component vector of int)
0:131        vector swizzle ( temp 3-component vector of int)
0:131          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:131            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131              'invocation' ( temp uint)
0:131            Constant:
0:131              1 (const int)
0:131          Sequence
0:131            Constant:
0:131              0 (const int)
0:131            Constant:
0:131              1 (const int)
0:131            Constant:
0:131              2 (const int)
0:131        subgroupXor ( global 3-component vector of int)
0:131          vector swizzle ( temp 3-component vector of int)
0:131            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:131              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:131                Constant:
0:131                  2 (const int)
0:131              Constant:
0:131                1 (const int)
0:131            Sequence
0:131              Constant:
0:131                0 (const int)
0:131              Constant:
0:131                1 (const int)
0:131              Constant:
0:131                2 (const int)
0:132      move second child to first child ( temp 4-component vector of int)
0:132        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:132          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132            'invocation' ( temp uint)
0:132          Constant:
0:132            1 (const int)
0:132        subgroupXor ( global 4-component vector of int)
0:132          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:132            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:132              Constant:
0:132                3 (const int)
0:132            Constant:
0:132              1 (const int)
0:134      move second child to first child ( temp uint)
0:134        direct index ( temp uint)
0:134          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:134            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134              'invocation' ( temp uint)
0:134            Constant:
0:134              2 (const int)
0:134          Constant:
0:134            0 (const int)
0:134        subgroupXor ( global uint)
0:134          direct index ( temp uint)
0:134            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:134              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:134                Constant:
0:134                  0 (const int)
0:134              Constant:
0:134                2 (const int)
0:134            Constant:
0:134              0 (const int)
0:135      move second child to first child ( temp 2-component vector of uint)
0:135        vector swizzle ( temp 2-component vector of uint)
0:135          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:135            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135              'invocation' ( temp uint)
0:135            Constant:
0:135              2 (const int)
0:135          Sequence
0:135            Constant:
0:135              0 (const int)
0:135            Constant:
0:135              1 (const int)
0:135        subgroupXor ( global 2-component vector of uint)
0:135          vector swizzle ( temp 2-component vector of uint)
0:135            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:135              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:135                Constant:
0:135                  1 (const int)
0:135              Constant:
0:135                2 (const int)
0:135            Sequence
0:135              Constant:
0:135                0 (const int)
0:135              Constant:
0:135                1 (const int)
0:136      move second child to first child ( temp 3-component vector of uint)
0:136        vector swizzle ( temp 3-component vector of uint)
0:136          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:136            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136              'invocation' ( temp uint)
0:136            Constant:
0:136              2 (const int)
0:136          Sequence
0:136            Constant:
0:136              0 (const int)
0:136            Constant:
0:136              1 (const int)
0:136            Constant:
0:136              2 (const int)
0:136        subgroupXor ( global 3-component vector of uint)
0:136          vector swizzle ( temp 3-component vector of uint)
0:136            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:136              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:136                Constant:
0:136                  2 (const int)
0:136              Constant:
0:136                2 (const int)
0:136            Sequence
0:136              Constant:
0:136                0 (const int)
0:136              Constant:
0:136                1 (const int)
0:136              Constant:
0:136                2 (const int)
0:137      move second child to first child ( temp 4-component vector of uint)
0:137        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:137          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137            'invocation' ( temp uint)
0:137          Constant:
0:137            2 (const int)
0:137        subgroupXor ( global 4-component vector of uint)
0:137          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:137            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:137              Constant:
0:137                3 (const int)
0:137            Constant:
0:137              2 (const int)
0:139      move second child to first child ( temp int)
0:139        direct index ( temp int)
0:139          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:139            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139              'invocation' ( temp uint)
0:139            Constant:
0:139              1 (const int)
0:139          Constant:
0:139            0 (const int)
0:139        Convert bool to int ( temp int)
0:139          subgroupXor ( global bool)
0:139            Compare Less Than ( temp bool)
0:139              direct index ( temp int)
0:139                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:139                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:139                    Constant:
0:139                      0 (const int)
0:139                  Constant:
0:139                    1 (const int)
0:139                Constant:
0:139                  0 (const int)
0:139              Constant:
0:139                0 (const int)
0:140      move second child to first child ( temp 2-component vector of int)
0:140        vector swizzle ( temp 2-component vector of int)
0:140          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:140            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140              'invocation' ( temp uint)
0:140            Constant:
0:140              1 (const int)
0:140          Sequence
0:140            Constant:
0:140              0 (const int)
0:140            Constant:
0:140              1 (const int)
0:140        Convert bool to int ( temp 2-component vector of int)
0:140          subgroupXor ( global 2-component vector of bool)
0:140            Compare Less Than ( global 2-component vector of bool)
0:140              vector swizzle ( temp 2-component vector of int)
0:140                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:140                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:140                    Constant:
0:140                      1 (const int)
0:140                  Constant:
0:140                    1 (const int)
0:140                Sequence
0:140                  Constant:
0:140                    0 (const int)
0:140                  Constant:
0:140                    1 (const int)
0:140              Constant:
0:140                0 (const int)
0:140                0 (const int)
0:141      move second child to first child ( temp 3-component vector of int)
0:141        vector swizzle ( temp 3-component vector of int)
0:141          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:141            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141              'invocation' ( temp uint)
0:141            Constant:
0:141              1 (const int)
0:141          Sequence
0:141            Constant:
0:141              0 (const int)
0:141            Constant:
0:141              1 (const int)
0:141            Constant:
0:141              2 (const int)
0:141        Convert bool to int ( temp 3-component vector of int)
0:141          subgroupXor ( global 3-component vector of bool)
0:141            Compare Less Than ( global 3-component vector of bool)
0:141              vector swizzle ( temp 3-component vector of int)
0:141                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:141                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:141                    Constant:
0:141                      1 (const int)
0:141                  Constant:
0:141                    1 (const int)
0:141                Sequence
0:141                  Constant:
0:141                    0 (const int)
0:141                  Constant:
0:141                    1 (const int)
0:141                  Constant:
0:141                    2 (const int)
0:141              Constant:
0:141                0 (const int)
0:141                0 (const int)
0:141                0 (const int)
0:142      move second child to first child ( temp 4-component vector of int)
0:142        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:142          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142            'invocation' ( temp uint)
0:142          Constant:
0:142            1 (const int)
0:142        Convert bool to int ( temp 4-component vector of int)
0:142          subgroupXor ( global 4-component vector of bool)
0:142            Compare Less Than ( global 4-component vector of bool)
0:142              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:142                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:142                  Constant:
0:142                    1 (const int)
0:142                Constant:
0:142                  1 (const int)
0:142              Constant:
0:142                0 (const int)
0:142                0 (const int)
0:142                0 (const int)
0:142                0 (const int)
0:144      move second child to first child ( temp float)
0:144        direct index ( temp float)
0:144          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:144            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144              'invocation' ( temp uint)
0:144            Constant:
0:144              0 (const int)
0:144          Constant:
0:144            0 (const int)
0:144        subgroupInclusiveAdd ( global float)
0:144          direct index ( temp float)
0:144            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:144              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:144                Constant:
0:144                  0 (const int)
0:144              Constant:
0:144                0 (const int)
0:144            Constant:
0:144              0 (const int)
0:145      move second child to first child ( temp 2-component vector of float)
0:145        vector swizzle ( temp 2-component vector of float)
0:145          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:145            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145              'invocation' ( temp uint)
0:145            Constant:
0:145              0 (const int)
0:145          Sequence
0:145            Constant:
0:145              0 (const int)
0:145            Constant:
0:145              1 (const int)
0:145        subgroupInclusiveAdd ( global 2-component vector of float)
0:145          vector swizzle ( temp 2-component vector of float)
0:145            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:145              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:145                Constant:
0:145                  1 (const int)
0:145              Constant:
0:145                0 (const int)
0:145            Sequence
0:145              Constant:
0:145                0 (const int)
0:145              Constant:
0:145                1 (const int)
0:146      move second child to first child ( temp 3-component vector of float)
0:146        vector swizzle ( temp 3-component vector of float)
0:146          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:146            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146              'invocation' ( temp uint)
0:146            Constant:
0:146              0 (const int)
0:146          Sequence
0:146            Constant:
0:146              0 (const int)
0:146            Constant:
0:146              1 (const int)
0:146            Constant:
0:146              2 (const int)
0:146        subgroupInclusiveAdd ( global 3-component vector of float)
0:146          vector swizzle ( temp 3-component vector of float)
0:146            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:146              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:146                Constant:
0:146                  2 (const int)
0:146              Constant:
0:146                0 (const int)
0:146            Sequence
0:146              Constant:
0:146                0 (const int)
0:146              Constant:
0:146                1 (const int)
0:146              Constant:
0:146                2 (const int)
0:147      move second child to first child ( temp 4-component vector of float)
0:147        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:147          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147            'invocation' ( temp uint)
0:147          Constant:
0:147            0 (const int)
0:147        subgroupInclusiveAdd ( global 4-component vector of float)
0:147          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:147            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:147              Constant:
0:147                3 (const int)
0:147            Constant:
0:147              0 (const int)
0:149      move second child to first child ( temp int)
0:149        direct index ( temp int)
0:149          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:149            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149              'invocation' ( temp uint)
0:149            Constant:
0:149              1 (const int)
0:149          Constant:
0:149            0 (const int)
0:149        subgroupInclusiveAdd ( global int)
0:149          direct index ( temp int)
0:149            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:149              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:149                Constant:
0:149                  0 (const int)
0:149              Constant:
0:149                1 (const int)
0:149            Constant:
0:149              0 (const int)
0:150      move second child to first child ( temp 2-component vector of int)
0:150        vector swizzle ( temp 2-component vector of int)
0:150          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:150            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150              'invocation' ( temp uint)
0:150            Constant:
0:150              1 (const int)
0:150          Sequence
0:150            Constant:
0:150              0 (const int)
0:150            Constant:
0:150              1 (const int)
0:150        subgroupInclusiveAdd ( global 2-component vector of int)
0:150          vector swizzle ( temp 2-component vector of int)
0:150            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:150              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:150                Constant:
0:150                  1 (const int)
0:150              Constant:
0:150                1 (const int)
0:150            Sequence
0:150              Constant:
0:150                0 (const int)
0:150              Constant:
0:150                1 (const int)
0:151      move second child to first child ( temp 3-component vector of int)
0:151        vector swizzle ( temp 3-component vector of int)
0:151          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:151            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151              'invocation' ( temp uint)
0:151            Constant:
0:151              1 (const int)
0:151          Sequence
0:151            Constant:
0:151              0 (const int)
0:151            Constant:
0:151              1 (const int)
0:151            Constant:
0:151              2 (const int)
0:151        subgroupInclusiveAdd ( global 3-component vector of int)
0:151          vector swizzle ( temp 3-component vector of int)
0:151            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:151              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:151                Constant:
0:151                  2 (const int)
0:151              Constant:
0:151                1 (const int)
0:151            Sequence
0:151              Constant:
0:151                0 (const int)
0:151              Constant:
0:151                1 (const int)
0:151              Constant:
0:151                2 (const int)
0:152      move second child to first child ( temp 4-component vector of int)
0:152        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:152          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152            'invocation' ( temp uint)
0:152          Constant:
0:152            1 (const int)
0:152        subgroupInclusiveAdd ( global 4-component vector of int)
0:152          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:152            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:152              Constant:
0:152                3 (const int)
0:152            Constant:
0:152              1 (const int)
0:154      move second child to first child ( temp uint)
0:154        direct index ( temp uint)
0:154          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:154            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154              'invocation' ( temp uint)
0:154            Constant:
0:154              2 (const int)
0:154          Constant:
0:154            0 (const int)
0:154        subgroupInclusiveAdd ( global uint)
0:154          direct index ( temp uint)
0:154            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:154              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:154                Constant:
0:154                  0 (const int)
0:154              Constant:
0:154                2 (const int)
0:154            Constant:
0:154              0 (const int)
0:155      move second child to first child ( temp 2-component vector of uint)
0:155        vector swizzle ( temp 2-component vector of uint)
0:155          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:155            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155              'invocation' ( temp uint)
0:155            Constant:
0:155              2 (const int)
0:155          Sequence
0:155            Constant:
0:155              0 (const int)
0:155            Constant:
0:155              1 (const int)
0:155        subgroupInclusiveAdd ( global 2-component vector of uint)
0:155          vector swizzle ( temp 2-component vector of uint)
0:155            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:155              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:155                Constant:
0:155                  1 (const int)
0:155              Constant:
0:155                2 (const int)
0:155            Sequence
0:155              Constant:
0:155                0 (const int)
0:155              Constant:
0:155                1 (const int)
0:156      move second child to first child ( temp 3-component vector of uint)
0:156        vector swizzle ( temp 3-component vector of uint)
0:156          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:156            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156              'invocation' ( temp uint)
0:156            Constant:
0:156              2 (const int)
0:156          Sequence
0:156            Constant:
0:156              0 (const int)
0:156            Constant:
0:156              1 (const int)
0:156            Constant:
0:156              2 (const int)
0:156        subgroupInclusiveAdd ( global 3-component vector of uint)
0:156          vector swizzle ( temp 3-component vector of uint)
0:156            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:156              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:156                Constant:
0:156                  2 (const int)
0:156              Constant:
0:156                2 (const int)
0:156            Sequence
0:156              Constant:
0:156                0 (const int)
0:156              Constant:
0:156                1 (const int)
0:156              Constant:
0:156                2 (const int)
0:157      move second child to first child ( temp 4-component vector of uint)
0:157        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:157          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157            'invocation' ( temp uint)
0:157          Constant:
0:157            2 (const int)
0:157        subgroupInclusiveAdd ( global 4-component vector of uint)
0:157          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:157            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:157              Constant:
0:157                3 (const int)
0:157            Constant:
0:157              2 (const int)
0:159      move second child to first child ( temp double)
0:159        direct index ( temp double)
0:159          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:159            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159              'invocation' ( temp uint)
0:159            Constant:
0:159              3 (const int)
0:159          Constant:
0:159            0 (const int)
0:159        subgroupInclusiveAdd ( global double)
0:159          direct index ( temp double)
0:159            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:159              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:159                Constant:
0:159                  0 (const int)
0:159              Constant:
0:159                3 (const int)
0:159            Constant:
0:159              0 (const int)
0:160      move second child to first child ( temp 2-component vector of double)
0:160        vector swizzle ( temp 2-component vector of double)
0:160          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:160            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160              'invocation' ( temp uint)
0:160            Constant:
0:160              3 (const int)
0:160          Sequence
0:160            Constant:
0:160              0 (const int)
0:160            Constant:
0:160              1 (const int)
0:160        subgroupInclusiveAdd ( global 2-component vector of double)
0:160          vector swizzle ( temp 2-component vector of double)
0:160            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:160              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:160                Constant:
0:160                  1 (const int)
0:160              Constant:
0:160                3 (const int)
0:160            Sequence
0:160              Constant:
0:160                0 (const int)
0:160              Constant:
0:160                1 (const int)
0:161      move second child to first child ( temp 3-component vector of double)
0:161        vector swizzle ( temp 3-component vector of double)
0:161          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:161            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161              'invocation' ( temp uint)
0:161            Constant:
0:161              3 (const int)
0:161          Sequence
0:161            Constant:
0:161              0 (const int)
0:161            Constant:
0:161              1 (const int)
0:161            Constant:
0:161              2 (const int)
0:161        subgroupInclusiveAdd ( global 3-component vector of double)
0:161          vector swizzle ( temp 3-component vector of double)
0:161            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:161              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:161                Constant:
0:161                  2 (const int)
0:161              Constant:
0:161                3 (const int)
0:161            Sequence
0:161              Constant:
0:161                0 (const int)
0:161              Constant:
0:161                1 (const int)
0:161              Constant:
0:161                2 (const int)
0:162      move second child to first child ( temp 4-component vector of double)
0:162        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:162          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162            'invocation' ( temp uint)
0:162          Constant:
0:162            3 (const int)
0:162        subgroupInclusiveAdd ( global 4-component vector of double)
0:162          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:162            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:162              Constant:
0:162                3 (const int)
0:162            Constant:
0:162              3 (const int)
0:164      move second child to first child ( temp float)
0:164        direct index ( temp float)
0:164          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:164            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164              'invocation' ( temp uint)
0:164            Constant:
0:164              0 (const int)
0:164          Constant:
0:164            0 (const int)
0:164        subgroupInclusiveMul ( global float)
0:164          direct index ( temp float)
0:164            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:164              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:164                Constant:
0:164                  0 (const int)
0:164              Constant:
0:164                0 (const int)
0:164            Constant:
0:164              0 (const int)
0:165      move second child to first child ( temp 2-component vector of float)
0:165        vector swizzle ( temp 2-component vector of float)
0:165          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:165            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165              'invocation' ( temp uint)
0:165            Constant:
0:165              0 (const int)
0:165          Sequence
0:165            Constant:
0:165              0 (const int)
0:165            Constant:
0:165              1 (const int)
0:165        subgroupInclusiveMul ( global 2-component vector of float)
0:165          vector swizzle ( temp 2-component vector of float)
0:165            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:165              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:165                Constant:
0:165                  1 (const int)
0:165              Constant:
0:165                0 (const int)
0:165            Sequence
0:165              Constant:
0:165                0 (const int)
0:165              Constant:
0:165                1 (const int)
0:166      move second child to first child ( temp 3-component vector of float)
0:166        vector swizzle ( temp 3-component vector of float)
0:166          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:166            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166              'invocation' ( temp uint)
0:166            Constant:
0:166              0 (const int)
0:166          Sequence
0:166            Constant:
0:166              0 (const int)
0:166            Constant:
0:166              1 (const int)
0:166            Constant:
0:166              2 (const int)
0:166        subgroupInclusiveMul ( global 3-component vector of float)
0:166          vector swizzle ( temp 3-component vector of float)
0:166            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:166              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:166                Constant:
0:166                  2 (const int)
0:166              Constant:
0:166                0 (const int)
0:166            Sequence
0:166              Constant:
0:166                0 (const int)
0:166              Constant:
0:166                1 (const int)
0:166              Constant:
0:166                2 (const int)
0:167      move second child to first child ( temp 4-component vector of float)
0:167        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:167          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167            'invocation' ( temp uint)
0:167          Constant:
0:167            0 (const int)
0:167        subgroupInclusiveMul ( global 4-component vector of float)
0:167          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:167            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:167              Constant:
0:167                3 (const int)
0:167            Constant:
0:167              0 (const int)
0:169      move second child to first child ( temp int)
0:169        direct index ( temp int)
0:169          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:169            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169              'invocation' ( temp uint)
0:169            Constant:
0:169              1 (const int)
0:169          Constant:
0:169            0 (const int)
0:169        subgroupInclusiveMul ( global int)
0:169          direct index ( temp int)
0:169            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:169              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:169                Constant:
0:169                  0 (const int)
0:169              Constant:
0:169                1 (const int)
0:169            Constant:
0:169              0 (const int)
0:170      move second child to first child ( temp 2-component vector of int)
0:170        vector swizzle ( temp 2-component vector of int)
0:170          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:170            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170              'invocation' ( temp uint)
0:170            Constant:
0:170              1 (const int)
0:170          Sequence
0:170            Constant:
0:170              0 (const int)
0:170            Constant:
0:170              1 (const int)
0:170        subgroupInclusiveMul ( global 2-component vector of int)
0:170          vector swizzle ( temp 2-component vector of int)
0:170            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:170              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:170                Constant:
0:170                  1 (const int)
0:170              Constant:
0:170                1 (const int)
0:170            Sequence
0:170              Constant:
0:170                0 (const int)
0:170              Constant:
0:170                1 (const int)
0:171      move second child to first child ( temp 3-component vector of int)
0:171        vector swizzle ( temp 3-component vector of int)
0:171          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:171            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171              'invocation' ( temp uint)
0:171            Constant:
0:171              1 (const int)
0:171          Sequence
0:171            Constant:
0:171              0 (const int)
0:171            Constant:
0:171              1 (const int)
0:171            Constant:
0:171              2 (const int)
0:171        subgroupInclusiveMul ( global 3-component vector of int)
0:171          vector swizzle ( temp 3-component vector of int)
0:171            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:171              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:171                Constant:
0:171                  2 (const int)
0:171              Constant:
0:171                1 (const int)
0:171            Sequence
0:171              Constant:
0:171                0 (const int)
0:171              Constant:
0:171                1 (const int)
0:171              Constant:
0:171                2 (const int)
0:172      move second child to first child ( temp 4-component vector of int)
0:172        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:172          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172            'invocation' ( temp uint)
0:172          Constant:
0:172            1 (const int)
0:172        subgroupInclusiveMul ( global 4-component vector of int)
0:172          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:172            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:172              Constant:
0:172                3 (const int)
0:172            Constant:
0:172              1 (const int)
0:174      move second child to first child ( temp uint)
0:174        direct index ( temp uint)
0:174          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:174            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174              'invocation' ( temp uint)
0:174            Constant:
0:174              2 (const int)
0:174          Constant:
0:174            0 (const int)
0:174        subgroupInclusiveMul ( global uint)
0:174          direct index ( temp uint)
0:174            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:174              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:174                Constant:
0:174                  0 (const int)
0:174              Constant:
0:174                2 (const int)
0:174            Constant:
0:174              0 (const int)
0:175      move second child to first child ( temp 2-component vector of uint)
0:175        vector swizzle ( temp 2-component vector of uint)
0:175          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:175            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175              'invocation' ( temp uint)
0:175            Constant:
0:175              2 (const int)
0:175          Sequence
0:175            Constant:
0:175              0 (const int)
0:175            Constant:
0:175              1 (const int)
0:175        subgroupInclusiveMul ( global 2-component vector of uint)
0:175          vector swizzle ( temp 2-component vector of uint)
0:175            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:175              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:175                Constant:
0:175                  1 (const int)
0:175              Constant:
0:175                2 (const int)
0:175            Sequence
0:175              Constant:
0:175                0 (const int)
0:175              Constant:
0:175                1 (const int)
0:176      move second child to first child ( temp 3-component vector of uint)
0:176        vector swizzle ( temp 3-component vector of uint)
0:176          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:176            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176              'invocation' ( temp uint)
0:176            Constant:
0:176              2 (const int)
0:176          Sequence
0:176            Constant:
0:176              0 (const int)
0:176            Constant:
0:176              1 (const int)
0:176            Constant:
0:176              2 (const int)
0:176        subgroupInclusiveMul ( global 3-component vector of uint)
0:176          vector swizzle ( temp 3-component vector of uint)
0:176            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:176              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:176                Constant:
0:176                  2 (const int)
0:176              Constant:
0:176                2 (const int)
0:176            Sequence
0:176              Constant:
0:176                0 (const int)
0:176              Constant:
0:176                1 (const int)
0:176              Constant:
0:176                2 (const int)
0:177      move second child to first child ( temp 4-component vector of uint)
0:177        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:177          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177            'invocation' ( temp uint)
0:177          Constant:
0:177            2 (const int)
0:177        subgroupInclusiveMul ( global 4-component vector of uint)
0:177          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:177            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:177              Constant:
0:177                3 (const int)
0:177            Constant:
0:177              2 (const int)
0:179      move second child to first child ( temp double)
0:179        direct index ( temp double)
0:179          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:179            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179              'invocation' ( temp uint)
0:179            Constant:
0:179              3 (const int)
0:179          Constant:
0:179            0 (const int)
0:179        subgroupInclusiveMul ( global double)
0:179          direct index ( temp double)
0:179            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:179              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:179                Constant:
0:179                  0 (const int)
0:179              Constant:
0:179                3 (const int)
0:179            Constant:
0:179              0 (const int)
0:180      move second child to first child ( temp 2-component vector of double)
0:180        vector swizzle ( temp 2-component vector of double)
0:180          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:180            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180              'invocation' ( temp uint)
0:180            Constant:
0:180              3 (const int)
0:180          Sequence
0:180            Constant:
0:180              0 (const int)
0:180            Constant:
0:180              1 (const int)
0:180        subgroupInclusiveMul ( global 2-component vector of double)
0:180          vector swizzle ( temp 2-component vector of double)
0:180            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:180              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:180                Constant:
0:180                  1 (const int)
0:180              Constant:
0:180                3 (const int)
0:180            Sequence
0:180              Constant:
0:180                0 (const int)
0:180              Constant:
0:180                1 (const int)
0:181      move second child to first child ( temp 3-component vector of double)
0:181        vector swizzle ( temp 3-component vector of double)
0:181          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:181            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181              'invocation' ( temp uint)
0:181            Constant:
0:181              3 (const int)
0:181          Sequence
0:181            Constant:
0:181              0 (const int)
0:181            Constant:
0:181              1 (const int)
0:181            Constant:
0:181              2 (const int)
0:181        subgroupInclusiveMul ( global 3-component vector of double)
0:181          vector swizzle ( temp 3-component vector of double)
0:181            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:181              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:181                Constant:
0:181                  2 (const int)
0:181              Constant:
0:181                3 (const int)
0:181            Sequence
0:181              Constant:
0:181                0 (const int)
0:181              Constant:
0:181                1 (const int)
0:181              Constant:
0:181                2 (const int)
0:182      move second child to first child ( temp 4-component vector of double)
0:182        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:182          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182            'invocation' ( temp uint)
0:182          Constant:
0:182            3 (const int)
0:182        subgroupInclusiveMul ( global 4-component vector of double)
0:182          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:182            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:182              Constant:
0:182                3 (const int)
0:182            Constant:
0:182              3 (const int)
0:184      move second child to first child ( temp float)
0:184        direct index ( temp float)
0:184          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:184            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184              'invocation' ( temp uint)
0:184            Constant:
0:184              0 (const int)
0:184          Constant:
0:184            0 (const int)
0:184        subgroupInclusiveMin ( global float)
0:184          direct index ( temp float)
0:184            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:184              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:184                Constant:
0:184                  0 (const int)
0:184              Constant:
0:184                0 (const int)
0:184            Constant:
0:184              0 (const int)
0:185      move second child to first child ( temp 2-component vector of float)
0:185        vector swizzle ( temp 2-component vector of float)
0:185          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:185            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185              'invocation' ( temp uint)
0:185            Constant:
0:185              0 (const int)
0:185          Sequence
0:185            Constant:
0:185              0 (const int)
0:185            Constant:
0:185              1 (const int)
0:185        subgroupInclusiveMin ( global 2-component vector of float)
0:185          vector swizzle ( temp 2-component vector of float)
0:185            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:185              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:185                Constant:
0:185                  1 (const int)
0:185              Constant:
0:185                0 (const int)
0:185            Sequence
0:185              Constant:
0:185                0 (const int)
0:185              Constant:
0:185                1 (const int)
0:186      move second child to first child ( temp 3-component vector of float)
0:186        vector swizzle ( temp 3-component vector of float)
0:186          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:186            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186              'invocation' ( temp uint)
0:186            Constant:
0:186              0 (const int)
0:186          Sequence
0:186            Constant:
0:186              0 (const int)
0:186            Constant:
0:186              1 (const int)
0:186            Constant:
0:186              2 (const int)
0:186        subgroupInclusiveMin ( global 3-component vector of float)
0:186          vector swizzle ( temp 3-component vector of float)
0:186            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:186              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:186                Constant:
0:186                  2 (const int)
0:186              Constant:
0:186                0 (const int)
0:186            Sequence
0:186              Constant:
0:186                0 (const int)
0:186              Constant:
0:186                1 (const int)
0:186              Constant:
0:186                2 (const int)
0:187      move second child to first child ( temp 4-component vector of float)
0:187        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:187          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187            'invocation' ( temp uint)
0:187          Constant:
0:187            0 (const int)
0:187        subgroupInclusiveMin ( global 4-component vector of float)
0:187          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:187            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:187              Constant:
0:187                3 (const int)
0:187            Constant:
0:187              0 (const int)
0:189      move second child to first child ( temp int)
0:189        direct index ( temp int)
0:189          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:189            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189              'invocation' ( temp uint)
0:189            Constant:
0:189              1 (const int)
0:189          Constant:
0:189            0 (const int)
0:189        subgroupInclusiveMin ( global int)
0:189          direct index ( temp int)
0:189            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:189              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:189                Constant:
0:189                  0 (const int)
0:189              Constant:
0:189                1 (const int)
0:189            Constant:
0:189              0 (const int)
0:190      move second child to first child ( temp 2-component vector of int)
0:190        vector swizzle ( temp 2-component vector of int)
0:190          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:190            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190              'invocation' ( temp uint)
0:190            Constant:
0:190              1 (const int)
0:190          Sequence
0:190            Constant:
0:190              0 (const int)
0:190            Constant:
0:190              1 (const int)
0:190        subgroupInclusiveMin ( global 2-component vector of int)
0:190          vector swizzle ( temp 2-component vector of int)
0:190            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:190              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:190                Constant:
0:190                  1 (const int)
0:190              Constant:
0:190                1 (const int)
0:190            Sequence
0:190              Constant:
0:190                0 (const int)
0:190              Constant:
0:190                1 (const int)
0:191      move second child to first child ( temp 3-component vector of int)
0:191        vector swizzle ( temp 3-component vector of int)
0:191          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:191            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191              'invocation' ( temp uint)
0:191            Constant:
0:191              1 (const int)
0:191          Sequence
0:191            Constant:
0:191              0 (const int)
0:191            Constant:
0:191              1 (const int)
0:191            Constant:
0:191              2 (const int)
0:191        subgroupInclusiveMin ( global 3-component vector of int)
0:191          vector swizzle ( temp 3-component vector of int)
0:191            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:191              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:191                Constant:
0:191                  2 (const int)
0:191              Constant:
0:191                1 (const int)
0:191            Sequence
0:191              Constant:
0:191                0 (const int)
0:191              Constant:
0:191                1 (const int)
0:191              Constant:
0:191                2 (const int)
0:192      move second child to first child ( temp 4-component vector of int)
0:192        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:192          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192            'invocation' ( temp uint)
0:192          Constant:
0:192            1 (const int)
0:192        subgroupInclusiveMin ( global 4-component vector of int)
0:192          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:192            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:192              Constant:
0:192                3 (const int)
0:192            Constant:
0:192              1 (const int)
0:194      move second child to first child ( temp uint)
0:194        direct index ( temp uint)
0:194          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:194            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194              'invocation' ( temp uint)
0:194            Constant:
0:194              2 (const int)
0:194          Constant:
0:194            0 (const int)
0:194        subgroupInclusiveMin ( global uint)
0:194          direct index ( temp uint)
0:194            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:194              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:194                Constant:
0:194                  0 (const int)
0:194              Constant:
0:194                2 (const int)
0:194            Constant:
0:194              0 (const int)
0:195      move second child to first child ( temp 2-component vector of uint)
0:195        vector swizzle ( temp 2-component vector of uint)
0:195          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:195            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195              'invocation' ( temp uint)
0:195            Constant:
0:195              2 (const int)
0:195          Sequence
0:195            Constant:
0:195              0 (const int)
0:195            Constant:
0:195              1 (const int)
0:195        subgroupInclusiveMin ( global 2-component vector of uint)
0:195          vector swizzle ( temp 2-component vector of uint)
0:195            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:195              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:195                Constant:
0:195                  1 (const int)
0:195              Constant:
0:195                2 (const int)
0:195            Sequence
0:195              Constant:
0:195                0 (const int)
0:195              Constant:
0:195                1 (const int)
0:196      move second child to first child ( temp 3-component vector of uint)
0:196        vector swizzle ( temp 3-component vector of uint)
0:196          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:196            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196              'invocation' ( temp uint)
0:196            Constant:
0:196              2 (const int)
0:196          Sequence
0:196            Constant:
0:196              0 (const int)
0:196            Constant:
0:196              1 (const int)
0:196            Constant:
0:196              2 (const int)
0:196        subgroupInclusiveMin ( global 3-component vector of uint)
0:196          vector swizzle ( temp 3-component vector of uint)
0:196            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:196              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:196                Constant:
0:196                  2 (const int)
0:196              Constant:
0:196                2 (const int)
0:196            Sequence
0:196              Constant:
0:196                0 (const int)
0:196              Constant:
0:196                1 (const int)
0:196              Constant:
0:196                2 (const int)
0:197      move second child to first child ( temp 4-component vector of uint)
0:197        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:197          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197            'invocation' ( temp uint)
0:197          Constant:
0:197            2 (const int)
0:197        subgroupInclusiveMin ( global 4-component vector of uint)
0:197          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:197            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:197              Constant:
0:197                3 (const int)
0:197            Constant:
0:197              2 (const int)
0:199      move second child to first child ( temp double)
0:199        direct index ( temp double)
0:199          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:199            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199              'invocation' ( temp uint)
0:199            Constant:
0:199              3 (const int)
0:199          Constant:
0:199            0 (const int)
0:199        subgroupInclusiveMin ( global double)
0:199          direct index ( temp double)
0:199            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:199              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:199                Constant:
0:199                  0 (const int)
0:199              Constant:
0:199                3 (const int)
0:199            Constant:
0:199              0 (const int)
0:200      move second child to first child ( temp 2-component vector of double)
0:200        vector swizzle ( temp 2-component vector of double)
0:200          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:200            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200              'invocation' ( temp uint)
0:200            Constant:
0:200              3 (const int)
0:200          Sequence
0:200            Constant:
0:200              0 (const int)
0:200            Constant:
0:200              1 (const int)
0:200        subgroupInclusiveMin ( global 2-component vector of double)
0:200          vector swizzle ( temp 2-component vector of double)
0:200            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:200              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:200                Constant:
0:200                  1 (const int)
0:200              Constant:
0:200                3 (const int)
0:200            Sequence
0:200              Constant:
0:200                0 (const int)
0:200              Constant:
0:200                1 (const int)
0:201      move second child to first child ( temp 3-component vector of double)
0:201        vector swizzle ( temp 3-component vector of double)
0:201          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:201            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201              'invocation' ( temp uint)
0:201            Constant:
0:201              3 (const int)
0:201          Sequence
0:201            Constant:
0:201              0 (const int)
0:201            Constant:
0:201              1 (const int)
0:201            Constant:
0:201              2 (const int)
0:201        subgroupInclusiveMin ( global 3-component vector of double)
0:201          vector swizzle ( temp 3-component vector of double)
0:201            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:201              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:201                Constant:
0:201                  2 (const int)
0:201              Constant:
0:201                3 (const int)
0:201            Sequence
0:201              Constant:
0:201                0 (const int)
0:201              Constant:
0:201                1 (const int)
0:201              Constant:
0:201                2 (const int)
0:202      move second child to first child ( temp 4-component vector of double)
0:202        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:202          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202            'invocation' ( temp uint)
0:202          Constant:
0:202            3 (const int)
0:202        subgroupInclusiveMin ( global 4-component vector of double)
0:202          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:202            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:202              Constant:
0:202                3 (const int)
0:202            Constant:
0:202              3 (const int)
0:204      move second child to first child ( temp float)
0:204        direct index ( temp float)
0:204          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:204            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204              'invocation' ( temp uint)
0:204            Constant:
0:204              0 (const int)
0:204          Constant:
0:204            0 (const int)
0:204        subgroupInclusiveMax ( global float)
0:204          direct index ( temp float)
0:204            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:204              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:204                Constant:
0:204                  0 (const int)
0:204              Constant:
0:204                0 (const int)
0:204            Constant:
0:204              0 (const int)
0:205      move second child to first child ( temp 2-component vector of float)
0:205        vector swizzle ( temp 2-component vector of float)
0:205          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:205            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205              'invocation' ( temp uint)
0:205            Constant:
0:205              0 (const int)
0:205          Sequence
0:205            Constant:
0:205              0 (const int)
0:205            Constant:
0:205              1 (const int)
0:205        subgroupInclusiveMax ( global 2-component vector of float)
0:205          vector swizzle ( temp 2-component vector of float)
0:205            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:205              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:205                Constant:
0:205                  1 (const int)
0:205              Constant:
0:205                0 (const int)
0:205            Sequence
0:205              Constant:
0:205                0 (const int)
0:205              Constant:
0:205                1 (const int)
0:206      move second child to first child ( temp 3-component vector of float)
0:206        vector swizzle ( temp 3-component vector of float)
0:206          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:206            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206              'invocation' ( temp uint)
0:206            Constant:
0:206              0 (const int)
0:206          Sequence
0:206            Constant:
0:206              0 (const int)
0:206            Constant:
0:206              1 (const int)
0:206            Constant:
0:206              2 (const int)
0:206        subgroupInclusiveMax ( global 3-component vector of float)
0:206          vector swizzle ( temp 3-component vector of float)
0:206            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:206              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:206                Constant:
0:206                  2 (const int)
0:206              Constant:
0:206                0 (const int)
0:206            Sequence
0:206              Constant:
0:206                0 (const int)
0:206              Constant:
0:206                1 (const int)
0:206              Constant:
0:206                2 (const int)
0:207      move second child to first child ( temp 4-component vector of float)
0:207        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:207          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207            'invocation' ( temp uint)
0:207          Constant:
0:207            0 (const int)
0:207        subgroupInclusiveMax ( global 4-component vector of float)
0:207          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:207            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:207              Constant:
0:207                3 (const int)
0:207            Constant:
0:207              0 (const int)
0:209      move second child to first child ( temp int)
0:209        direct index ( temp int)
0:209          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:209            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209              'invocation' ( temp uint)
0:209            Constant:
0:209              1 (const int)
0:209          Constant:
0:209            0 (const int)
0:209        subgroupInclusiveMax ( global int)
0:209          direct index ( temp int)
0:209            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:209              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:209                Constant:
0:209                  0 (const int)
0:209              Constant:
0:209                1 (const int)
0:209            Constant:
0:209              0 (const int)
0:210      move second child to first child ( temp 2-component vector of int)
0:210        vector swizzle ( temp 2-component vector of int)
0:210          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:210            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210              'invocation' ( temp uint)
0:210            Constant:
0:210              1 (const int)
0:210          Sequence
0:210            Constant:
0:210              0 (const int)
0:210            Constant:
0:210              1 (const int)
0:210        subgroupInclusiveMax ( global 2-component vector of int)
0:210          vector swizzle ( temp 2-component vector of int)
0:210            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:210              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:210                Constant:
0:210                  1 (const int)
0:210              Constant:
0:210                1 (const int)
0:210            Sequence
0:210              Constant:
0:210                0 (const int)
0:210              Constant:
0:210                1 (const int)
0:211      move second child to first child ( temp 3-component vector of int)
0:211        vector swizzle ( temp 3-component vector of int)
0:211          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:211            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211              'invocation' ( temp uint)
0:211            Constant:
0:211              1 (const int)
0:211          Sequence
0:211            Constant:
0:211              0 (const int)
0:211            Constant:
0:211              1 (const int)
0:211            Constant:
0:211              2 (const int)
0:211        subgroupInclusiveMax ( global 3-component vector of int)
0:211          vector swizzle ( temp 3-component vector of int)
0:211            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:211              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:211                Constant:
0:211                  2 (const int)
0:211              Constant:
0:211                1 (const int)
0:211            Sequence
0:211              Constant:
0:211                0 (const int)
0:211              Constant:
0:211                1 (const int)
0:211              Constant:
0:211                2 (const int)
0:212      move second child to first child ( temp 4-component vector of int)
0:212        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:212          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212            'invocation' ( temp uint)
0:212          Constant:
0:212            1 (const int)
0:212        subgroupInclusiveMax ( global 4-component vector of int)
0:212          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:212            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:212              Constant:
0:212                3 (const int)
0:212            Constant:
0:212              1 (const int)
0:214      move second child to first child ( temp uint)
0:214        direct index ( temp uint)
0:214          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:214            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214              'invocation' ( temp uint)
0:214            Constant:
0:214              2 (const int)
0:214          Constant:
0:214            0 (const int)
0:214        subgroupInclusiveMax ( global uint)
0:214          direct index ( temp uint)
0:214            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:214              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:214                Constant:
0:214                  0 (const int)
0:214              Constant:
0:214                2 (const int)
0:214            Constant:
0:214              0 (const int)
0:215      move second child to first child ( temp 2-component vector of uint)
0:215        vector swizzle ( temp 2-component vector of uint)
0:215          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:215            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215              'invocation' ( temp uint)
0:215            Constant:
0:215              2 (const int)
0:215          Sequence
0:215            Constant:
0:215              0 (const int)
0:215            Constant:
0:215              1 (const int)
0:215        subgroupInclusiveMax ( global 2-component vector of uint)
0:215          vector swizzle ( temp 2-component vector of uint)
0:215            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:215              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:215                Constant:
0:215                  1 (const int)
0:215              Constant:
0:215                2 (const int)
0:215            Sequence
0:215              Constant:
0:215                0 (const int)
0:215              Constant:
0:215                1 (const int)
0:216      move second child to first child ( temp 3-component vector of uint)
0:216        vector swizzle ( temp 3-component vector of uint)
0:216          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:216            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216              'invocation' ( temp uint)
0:216            Constant:
0:216              2 (const int)
0:216          Sequence
0:216            Constant:
0:216              0 (const int)
0:216            Constant:
0:216              1 (const int)
0:216            Constant:
0:216              2 (const int)
0:216        subgroupInclusiveMax ( global 3-component vector of uint)
0:216          vector swizzle ( temp 3-component vector of uint)
0:216            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:216              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:216                Constant:
0:216                  2 (const int)
0:216              Constant:
0:216                2 (const int)
0:216            Sequence
0:216              Constant:
0:216                0 (const int)
0:216              Constant:
0:216                1 (const int)
0:216              Constant:
0:216                2 (const int)
0:217      move second child to first child ( temp 4-component vector of uint)
0:217        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:217          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217            'invocation' ( temp uint)
0:217          Constant:
0:217            2 (const int)
0:217        subgroupInclusiveMax ( global 4-component vector of uint)
0:217          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:217            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:217              Constant:
0:217                3 (const int)
0:217            Constant:
0:217              2 (const int)
0:219      move second child to first child ( temp double)
0:219        direct index ( temp double)
0:219          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:219            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219              'invocation' ( temp uint)
0:219            Constant:
0:219              3 (const int)
0:219          Constant:
0:219            0 (const int)
0:219        subgroupInclusiveMax ( global double)
0:219          direct index ( temp double)
0:219            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:219              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:219                Constant:
0:219                  0 (const int)
0:219              Constant:
0:219                3 (const int)
0:219            Constant:
0:219              0 (const int)
0:220      move second child to first child ( temp 2-component vector of double)
0:220        vector swizzle ( temp 2-component vector of double)
0:220          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:220            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220              'invocation' ( temp uint)
0:220            Constant:
0:220              3 (const int)
0:220          Sequence
0:220            Constant:
0:220              0 (const int)
0:220            Constant:
0:220              1 (const int)
0:220        subgroupInclusiveMax ( global 2-component vector of double)
0:220          vector swizzle ( temp 2-component vector of double)
0:220            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:220              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:220                Constant:
0:220                  1 (const int)
0:220              Constant:
0:220                3 (const int)
0:220            Sequence
0:220              Constant:
0:220                0 (const int)
0:220              Constant:
0:220                1 (const int)
0:221      move second child to first child ( temp 3-component vector of double)
0:221        vector swizzle ( temp 3-component vector of double)
0:221          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:221            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221              'invocation' ( temp uint)
0:221            Constant:
0:221              3 (const int)
0:221          Sequence
0:221            Constant:
0:221              0 (const int)
0:221            Constant:
0:221              1 (const int)
0:221            Constant:
0:221              2 (const int)
0:221        subgroupInclusiveMax ( global 3-component vector of double)
0:221          vector swizzle ( temp 3-component vector of double)
0:221            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:221              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:221                Constant:
0:221                  2 (const int)
0:221              Constant:
0:221                3 (const int)
0:221            Sequence
0:221              Constant:
0:221                0 (const int)
0:221              Constant:
0:221                1 (const int)
0:221              Constant:
0:221                2 (const int)
0:222      move second child to first child ( temp 4-component vector of double)
0:222        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:222          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222            'invocation' ( temp uint)
0:222          Constant:
0:222            3 (const int)
0:222        subgroupInclusiveMax ( global 4-component vector of double)
0:222          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:222            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:222              Constant:
0:222                3 (const int)
0:222            Constant:
0:222              3 (const int)
0:224      move second child to first child ( temp int)
0:224        direct index ( temp int)
0:224          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:224            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224              'invocation' ( temp uint)
0:224            Constant:
0:224              1 (const int)
0:224          Constant:
0:224            0 (const int)
0:224        subgroupInclusiveAnd ( global int)
0:224          direct index ( temp int)
0:224            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:224              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:224                Constant:
0:224                  0 (const int)
0:224              Constant:
0:224                1 (const int)
0:224            Constant:
0:224              0 (const int)
0:225      move second child to first child ( temp 2-component vector of int)
0:225        vector swizzle ( temp 2-component vector of int)
0:225          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:225            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225              'invocation' ( temp uint)
0:225            Constant:
0:225              1 (const int)
0:225          Sequence
0:225            Constant:
0:225              0 (const int)
0:225            Constant:
0:225              1 (const int)
0:225        subgroupInclusiveAnd ( global 2-component vector of int)
0:225          vector swizzle ( temp 2-component vector of int)
0:225            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:225              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:225                Constant:
0:225                  1 (const int)
0:225              Constant:
0:225                1 (const int)
0:225            Sequence
0:225              Constant:
0:225                0 (const int)
0:225              Constant:
0:225                1 (const int)
0:226      move second child to first child ( temp 3-component vector of int)
0:226        vector swizzle ( temp 3-component vector of int)
0:226          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:226            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226              'invocation' ( temp uint)
0:226            Constant:
0:226              1 (const int)
0:226          Sequence
0:226            Constant:
0:226              0 (const int)
0:226            Constant:
0:226              1 (const int)
0:226            Constant:
0:226              2 (const int)
0:226        subgroupInclusiveAnd ( global 3-component vector of int)
0:226          vector swizzle ( temp 3-component vector of int)
0:226            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:226              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:226                Constant:
0:226                  2 (const int)
0:226              Constant:
0:226                1 (const int)
0:226            Sequence
0:226              Constant:
0:226                0 (const int)
0:226              Constant:
0:226                1 (const int)
0:226              Constant:
0:226                2 (const int)
0:227      move second child to first child ( temp 4-component vector of int)
0:227        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:227          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227            'invocation' ( temp uint)
0:227          Constant:
0:227            1 (const int)
0:227        subgroupInclusiveAnd ( global 4-component vector of int)
0:227          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:227            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:227              Constant:
0:227                3 (const int)
0:227            Constant:
0:227              1 (const int)
0:229      move second child to first child ( temp uint)
0:229        direct index ( temp uint)
0:229          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:229            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229              'invocation' ( temp uint)
0:229            Constant:
0:229              2 (const int)
0:229          Constant:
0:229            0 (const int)
0:229        subgroupInclusiveAnd ( global uint)
0:229          direct index ( temp uint)
0:229            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:229              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:229                Constant:
0:229                  0 (const int)
0:229              Constant:
0:229                2 (const int)
0:229            Constant:
0:229              0 (const int)
0:230      move second child to first child ( temp 2-component vector of uint)
0:230        vector swizzle ( temp 2-component vector of uint)
0:230          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:230            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230              'invocation' ( temp uint)
0:230            Constant:
0:230              2 (const int)
0:230          Sequence
0:230            Constant:
0:230              0 (const int)
0:230            Constant:
0:230              1 (const int)
0:230        subgroupInclusiveAnd ( global 2-component vector of uint)
0:230          vector swizzle ( temp 2-component vector of uint)
0:230            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:230              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:230                Constant:
0:230                  1 (const int)
0:230              Constant:
0:230                2 (const int)
0:230            Sequence
0:230              Constant:
0:230                0 (const int)
0:230              Constant:
0:230                1 (const int)
0:231      move second child to first child ( temp 3-component vector of uint)
0:231        vector swizzle ( temp 3-component vector of uint)
0:231          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:231            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231              'invocation' ( temp uint)
0:231            Constant:
0:231              2 (const int)
0:231          Sequence
0:231            Constant:
0:231              0 (const int)
0:231            Constant:
0:231              1 (const int)
0:231            Constant:
0:231              2 (const int)
0:231        subgroupInclusiveAnd ( global 3-component vector of uint)
0:231          vector swizzle ( temp 3-component vector of uint)
0:231            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:231              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:231                Constant:
0:231                  2 (const int)
0:231              Constant:
0:231                2 (const int)
0:231            Sequence
0:231              Constant:
0:231                0 (const int)
0:231              Constant:
0:231                1 (const int)
0:231              Constant:
0:231                2 (const int)
0:232      move second child to first child ( temp 4-component vector of uint)
0:232        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:232          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232            'invocation' ( temp uint)
0:232          Constant:
0:232            2 (const int)
0:232        subgroupInclusiveAnd ( global 4-component vector of uint)
0:232          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:232            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:232              Constant:
0:232                3 (const int)
0:232            Constant:
0:232              2 (const int)
0:234      move second child to first child ( temp int)
0:234        direct index ( temp int)
0:234          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:234            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234              'invocation' ( temp uint)
0:234            Constant:
0:234              1 (const int)
0:234          Constant:
0:234            0 (const int)
0:234        Convert bool to int ( temp int)
0:234          subgroupInclusiveAnd ( global bool)
0:234            Compare Less Than ( temp bool)
0:234              direct index ( temp int)
0:234                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:234                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:234                    Constant:
0:234                      0 (const int)
0:234                  Constant:
0:234                    1 (const int)
0:234                Constant:
0:234                  0 (const int)
0:234              Constant:
0:234                0 (const int)
0:235      move second child to first child ( temp 2-component vector of int)
0:235        vector swizzle ( temp 2-component vector of int)
0:235          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:235            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235              'invocation' ( temp uint)
0:235            Constant:
0:235              1 (const int)
0:235          Sequence
0:235            Constant:
0:235              0 (const int)
0:235            Constant:
0:235              1 (const int)
0:235        Convert bool to int ( temp 2-component vector of int)
0:235          subgroupInclusiveAnd ( global 2-component vector of bool)
0:235            Compare Less Than ( global 2-component vector of bool)
0:235              vector swizzle ( temp 2-component vector of int)
0:235                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:235                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:235                    Constant:
0:235                      1 (const int)
0:235                  Constant:
0:235                    1 (const int)
0:235                Sequence
0:235                  Constant:
0:235                    0 (const int)
0:235                  Constant:
0:235                    1 (const int)
0:235              Constant:
0:235                0 (const int)
0:235                0 (const int)
0:236      move second child to first child ( temp 3-component vector of int)
0:236        vector swizzle ( temp 3-component vector of int)
0:236          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:236            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236              'invocation' ( temp uint)
0:236            Constant:
0:236              1 (const int)
0:236          Sequence
0:236            Constant:
0:236              0 (const int)
0:236            Constant:
0:236              1 (const int)
0:236            Constant:
0:236              2 (const int)
0:236        Convert bool to int ( temp 3-component vector of int)
0:236          subgroupInclusiveAnd ( global 3-component vector of bool)
0:236            Compare Less Than ( global 3-component vector of bool)
0:236              vector swizzle ( temp 3-component vector of int)
0:236                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:236                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:236                    Constant:
0:236                      1 (const int)
0:236                  Constant:
0:236                    1 (const int)
0:236                Sequence
0:236                  Constant:
0:236                    0 (const int)
0:236                  Constant:
0:236                    1 (const int)
0:236                  Constant:
0:236                    2 (const int)
0:236              Constant:
0:236                0 (const int)
0:236                0 (const int)
0:236                0 (const int)
0:237      move second child to first child ( temp 4-component vector of int)
0:237        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:237          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237            'invocation' ( temp uint)
0:237          Constant:
0:237            1 (const int)
0:237        Convert bool to int ( temp 4-component vector of int)
0:237          subgroupInclusiveAnd ( global 4-component vector of bool)
0:237            Compare Less Than ( global 4-component vector of bool)
0:237              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:237                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:237                  Constant:
0:237                    1 (const int)
0:237                Constant:
0:237                  1 (const int)
0:237              Constant:
0:237                0 (const int)
0:237                0 (const int)
0:237                0 (const int)
0:237                0 (const int)
0:239      move second child to first child ( temp int)
0:239        direct index ( temp int)
0:239          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:239            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239              'invocation' ( temp uint)
0:239            Constant:
0:239              1 (const int)
0:239          Constant:
0:239            0 (const int)
0:239        subgroupInclusiveOr ( global int)
0:239          direct index ( temp int)
0:239            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:239              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:239                Constant:
0:239                  0 (const int)
0:239              Constant:
0:239                1 (const int)
0:239            Constant:
0:239              0 (const int)
0:240      move second child to first child ( temp 2-component vector of int)
0:240        vector swizzle ( temp 2-component vector of int)
0:240          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:240            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240              'invocation' ( temp uint)
0:240            Constant:
0:240              1 (const int)
0:240          Sequence
0:240            Constant:
0:240              0 (const int)
0:240            Constant:
0:240              1 (const int)
0:240        subgroupInclusiveOr ( global 2-component vector of int)
0:240          vector swizzle ( temp 2-component vector of int)
0:240            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:240              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:240                Constant:
0:240                  1 (const int)
0:240              Constant:
0:240                1 (const int)
0:240            Sequence
0:240              Constant:
0:240                0 (const int)
0:240              Constant:
0:240                1 (const int)
0:241      move second child to first child ( temp 3-component vector of int)
0:241        vector swizzle ( temp 3-component vector of int)
0:241          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:241            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241              'invocation' ( temp uint)
0:241            Constant:
0:241              1 (const int)
0:241          Sequence
0:241            Constant:
0:241              0 (const int)
0:241            Constant:
0:241              1 (const int)
0:241            Constant:
0:241              2 (const int)
0:241        subgroupInclusiveOr ( global 3-component vector of int)
0:241          vector swizzle ( temp 3-component vector of int)
0:241            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:241              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:241                Constant:
0:241                  2 (const int)
0:241              Constant:
0:241                1 (const int)
0:241            Sequence
0:241              Constant:
0:241                0 (const int)
0:241              Constant:
0:241                1 (const int)
0:241              Constant:
0:241                2 (const int)
0:242      move second child to first child ( temp 4-component vector of int)
0:242        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:242          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242            'invocation' ( temp uint)
0:242          Constant:
0:242            1 (const int)
0:242        subgroupInclusiveOr ( global 4-component vector of int)
0:242          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:242            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:242              Constant:
0:242                3 (const int)
0:242            Constant:
0:242              1 (const int)
0:244      move second child to first child ( temp uint)
0:244        direct index ( temp uint)
0:244          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:244            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244              'invocation' ( temp uint)
0:244            Constant:
0:244              2 (const int)
0:244          Constant:
0:244            0 (const int)
0:244        subgroupInclusiveOr ( global uint)
0:244          direct index ( temp uint)
0:244            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:244              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:244                Constant:
0:244                  0 (const int)
0:244              Constant:
0:244                2 (const int)
0:244            Constant:
0:244              0 (const int)
0:245      move second child to first child ( temp 2-component vector of uint)
0:245        vector swizzle ( temp 2-component vector of uint)
0:245          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:245            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245              'invocation' ( temp uint)
0:245            Constant:
0:245              2 (const int)
0:245          Sequence
0:245            Constant:
0:245              0 (const int)
0:245            Constant:
0:245              1 (const int)
0:245        subgroupInclusiveOr ( global 2-component vector of uint)
0:245          vector swizzle ( temp 2-component vector of uint)
0:245            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:245              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:245                Constant:
0:245                  1 (const int)
0:245              Constant:
0:245                2 (const int)
0:245            Sequence
0:245              Constant:
0:245                0 (const int)
0:245              Constant:
0:245                1 (const int)
0:246      move second child to first child ( temp 3-component vector of uint)
0:246        vector swizzle ( temp 3-component vector of uint)
0:246          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:246            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246              'invocation' ( temp uint)
0:246            Constant:
0:246              2 (const int)
0:246          Sequence
0:246            Constant:
0:246              0 (const int)
0:246            Constant:
0:246              1 (const int)
0:246            Constant:
0:246              2 (const int)
0:246        subgroupInclusiveOr ( global 3-component vector of uint)
0:246          vector swizzle ( temp 3-component vector of uint)
0:246            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:246              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:246                Constant:
0:246                  2 (const int)
0:246              Constant:
0:246                2 (const int)
0:246            Sequence
0:246              Constant:
0:246                0 (const int)
0:246              Constant:
0:246                1 (const int)
0:246              Constant:
0:246                2 (const int)
0:247      move second child to first child ( temp 4-component vector of uint)
0:247        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:247          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247            'invocation' ( temp uint)
0:247          Constant:
0:247            2 (const int)
0:247        subgroupInclusiveOr ( global 4-component vector of uint)
0:247          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:247            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:247              Constant:
0:247                3 (const int)
0:247            Constant:
0:247              2 (const int)
0:249      move second child to first child ( temp int)
0:249        direct index ( temp int)
0:249          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:249            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249              'invocation' ( temp uint)
0:249            Constant:
0:249              1 (const int)
0:249          Constant:
0:249            0 (const int)
0:249        Convert bool to int ( temp int)
0:249          subgroupInclusiveOr ( global bool)
0:249            Compare Less Than ( temp bool)
0:249              direct index ( temp int)
0:249                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:249                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:249                    Constant:
0:249                      0 (const int)
0:249                  Constant:
0:249                    1 (const int)
0:249                Constant:
0:249                  0 (const int)
0:249              Constant:
0:249                0 (const int)
0:250      move second child to first child ( temp 2-component vector of int)
0:250        vector swizzle ( temp 2-component vector of int)
0:250          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:250            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250              'invocation' ( temp uint)
0:250            Constant:
0:250              1 (const int)
0:250          Sequence
0:250            Constant:
0:250              0 (const int)
0:250            Constant:
0:250              1 (const int)
0:250        Convert bool to int ( temp 2-component vector of int)
0:250          subgroupInclusiveOr ( global 2-component vector of bool)
0:250            Compare Less Than ( global 2-component vector of bool)
0:250              vector swizzle ( temp 2-component vector of int)
0:250                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:250                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:250                    Constant:
0:250                      1 (const int)
0:250                  Constant:
0:250                    1 (const int)
0:250                Sequence
0:250                  Constant:
0:250                    0 (const int)
0:250                  Constant:
0:250                    1 (const int)
0:250              Constant:
0:250                0 (const int)
0:250                0 (const int)
0:251      move second child to first child ( temp 3-component vector of int)
0:251        vector swizzle ( temp 3-component vector of int)
0:251          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:251            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251              'invocation' ( temp uint)
0:251            Constant:
0:251              1 (const int)
0:251          Sequence
0:251            Constant:
0:251              0 (const int)
0:251            Constant:
0:251              1 (const int)
0:251            Constant:
0:251              2 (const int)
0:251        Convert bool to int ( temp 3-component vector of int)
0:251          subgroupInclusiveOr ( global 3-component vector of bool)
0:251            Compare Less Than ( global 3-component vector of bool)
0:251              vector swizzle ( temp 3-component vector of int)
0:251                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:251                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:251                    Constant:
0:251                      1 (const int)
0:251                  Constant:
0:251                    1 (const int)
0:251                Sequence
0:251                  Constant:
0:251                    0 (const int)
0:251                  Constant:
0:251                    1 (const int)
0:251                  Constant:
0:251                    2 (const int)
0:251              Constant:
0:251                0 (const int)
0:251                0 (const int)
0:251                0 (const int)
0:252      move second child to first child ( temp 4-component vector of int)
0:252        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:252          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252            'invocation' ( temp uint)
0:252          Constant:
0:252            1 (const int)
0:252        Convert bool to int ( temp 4-component vector of int)
0:252          subgroupInclusiveOr ( global 4-component vector of bool)
0:252            Compare Less Than ( global 4-component vector of bool)
0:252              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:252                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:252                  Constant:
0:252                    1 (const int)
0:252                Constant:
0:252                  1 (const int)
0:252              Constant:
0:252                0 (const int)
0:252                0 (const int)
0:252                0 (const int)
0:252                0 (const int)
0:254      move second child to first child ( temp int)
0:254        direct index ( temp int)
0:254          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:254            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254              'invocation' ( temp uint)
0:254            Constant:
0:254              1 (const int)
0:254          Constant:
0:254            0 (const int)
0:254        subgroupInclusiveXor ( global int)
0:254          direct index ( temp int)
0:254            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:254              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:254                Constant:
0:254                  0 (const int)
0:254              Constant:
0:254                1 (const int)
0:254            Constant:
0:254              0 (const int)
0:255      move second child to first child ( temp 2-component vector of int)
0:255        vector swizzle ( temp 2-component vector of int)
0:255          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:255            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255              'invocation' ( temp uint)
0:255            Constant:
0:255              1 (const int)
0:255          Sequence
0:255            Constant:
0:255              0 (const int)
0:255            Constant:
0:255              1 (const int)
0:255        subgroupInclusiveXor ( global 2-component vector of int)
0:255          vector swizzle ( temp 2-component vector of int)
0:255            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:255              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:255                Constant:
0:255                  1 (const int)
0:255              Constant:
0:255                1 (const int)
0:255            Sequence
0:255              Constant:
0:255                0 (const int)
0:255              Constant:
0:255                1 (const int)
0:256      move second child to first child ( temp 3-component vector of int)
0:256        vector swizzle ( temp 3-component vector of int)
0:256          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:256            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256              'invocation' ( temp uint)
0:256            Constant:
0:256              1 (const int)
0:256          Sequence
0:256            Constant:
0:256              0 (const int)
0:256            Constant:
0:256              1 (const int)
0:256            Constant:
0:256              2 (const int)
0:256        subgroupInclusiveXor ( global 3-component vector of int)
0:256          vector swizzle ( temp 3-component vector of int)
0:256            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:256              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:256                Constant:
0:256                  2 (const int)
0:256              Constant:
0:256                1 (const int)
0:256            Sequence
0:256              Constant:
0:256                0 (const int)
0:256              Constant:
0:256                1 (const int)
0:256              Constant:
0:256                2 (const int)
0:257      move second child to first child ( temp 4-component vector of int)
0:257        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:257          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257            'invocation' ( temp uint)
0:257          Constant:
0:257            1 (const int)
0:257        subgroupInclusiveXor ( global 4-component vector of int)
0:257          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:257            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:257              Constant:
0:257                3 (const int)
0:257            Constant:
0:257              1 (const int)
0:259      move second child to first child ( temp uint)
0:259        direct index ( temp uint)
0:259          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:259            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259              'invocation' ( temp uint)
0:259            Constant:
0:259              2 (const int)
0:259          Constant:
0:259            0 (const int)
0:259        subgroupInclusiveXor ( global uint)
0:259          direct index ( temp uint)
0:259            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:259              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:259                Constant:
0:259                  0 (const int)
0:259              Constant:
0:259                2 (const int)
0:259            Constant:
0:259              0 (const int)
0:260      move second child to first child ( temp 2-component vector of uint)
0:260        vector swizzle ( temp 2-component vector of uint)
0:260          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:260            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260              'invocation' ( temp uint)
0:260            Constant:
0:260              2 (const int)
0:260          Sequence
0:260            Constant:
0:260              0 (const int)
0:260            Constant:
0:260              1 (const int)
0:260        subgroupInclusiveXor ( global 2-component vector of uint)
0:260          vector swizzle ( temp 2-component vector of uint)
0:260            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:260              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:260                Constant:
0:260                  1 (const int)
0:260              Constant:
0:260                2 (const int)
0:260            Sequence
0:260              Constant:
0:260                0 (const int)
0:260              Constant:
0:260                1 (const int)
0:261      move second child to first child ( temp 3-component vector of uint)
0:261        vector swizzle ( temp 3-component vector of uint)
0:261          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:261            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261              'invocation' ( temp uint)
0:261            Constant:
0:261              2 (const int)
0:261          Sequence
0:261            Constant:
0:261              0 (const int)
0:261            Constant:
0:261              1 (const int)
0:261            Constant:
0:261              2 (const int)
0:261        subgroupInclusiveXor ( global 3-component vector of uint)
0:261          vector swizzle ( temp 3-component vector of uint)
0:261            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:261              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:261                Constant:
0:261                  2 (const int)
0:261              Constant:
0:261                2 (const int)
0:261            Sequence
0:261              Constant:
0:261                0 (const int)
0:261              Constant:
0:261                1 (const int)
0:261              Constant:
0:261                2 (const int)
0:262      move second child to first child ( temp 4-component vector of uint)
0:262        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:262          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262            'invocation' ( temp uint)
0:262          Constant:
0:262            2 (const int)
0:262        subgroupInclusiveXor ( global 4-component vector of uint)
0:262          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:262            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:262              Constant:
0:262                3 (const int)
0:262            Constant:
0:262              2 (const int)
0:264      move second child to first child ( temp int)
0:264        direct index ( temp int)
0:264          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:264            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264              'invocation' ( temp uint)
0:264            Constant:
0:264              1 (const int)
0:264          Constant:
0:264            0 (const int)
0:264        Convert bool to int ( temp int)
0:264          subgroupInclusiveXor ( global bool)
0:264            Compare Less Than ( temp bool)
0:264              direct index ( temp int)
0:264                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:264                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:264                    Constant:
0:264                      0 (const int)
0:264                  Constant:
0:264                    1 (const int)
0:264                Constant:
0:264                  0 (const int)
0:264              Constant:
0:264                0 (const int)
0:265      move second child to first child ( temp 2-component vector of int)
0:265        vector swizzle ( temp 2-component vector of int)
0:265          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:265            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265              'invocation' ( temp uint)
0:265            Constant:
0:265              1 (const int)
0:265          Sequence
0:265            Constant:
0:265              0 (const int)
0:265            Constant:
0:265              1 (const int)
0:265        Convert bool to int ( temp 2-component vector of int)
0:265          subgroupInclusiveXor ( global 2-component vector of bool)
0:265            Compare Less Than ( global 2-component vector of bool)
0:265              vector swizzle ( temp 2-component vector of int)
0:265                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:265                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:265                    Constant:
0:265                      1 (const int)
0:265                  Constant:
0:265                    1 (const int)
0:265                Sequence
0:265                  Constant:
0:265                    0 (const int)
0:265                  Constant:
0:265                    1 (const int)
0:265              Constant:
0:265                0 (const int)
0:265                0 (const int)
0:266      move second child to first child ( temp 3-component vector of int)
0:266        vector swizzle ( temp 3-component vector of int)
0:266          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:266            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266              'invocation' ( temp uint)
0:266            Constant:
0:266              1 (const int)
0:266          Sequence
0:266            Constant:
0:266              0 (const int)
0:266            Constant:
0:266              1 (const int)
0:266            Constant:
0:266              2 (const int)
0:266        Convert bool to int ( temp 3-component vector of int)
0:266          subgroupInclusiveXor ( global 3-component vector of bool)
0:266            Compare Less Than ( global 3-component vector of bool)
0:266              vector swizzle ( temp 3-component vector of int)
0:266                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:266                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:266                    Constant:
0:266                      1 (const int)
0:266                  Constant:
0:266                    1 (const int)
0:266                Sequence
0:266                  Constant:
0:266                    0 (const int)
0:266                  Constant:
0:266                    1 (const int)
0:266                  Constant:
0:266                    2 (const int)
0:266              Constant:
0:266                0 (const int)
0:266                0 (const int)
0:266                0 (const int)
0:267      move second child to first child ( temp 4-component vector of int)
0:267        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:267          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267            'invocation' ( temp uint)
0:267          Constant:
0:267            1 (const int)
0:267        Convert bool to int ( temp 4-component vector of int)
0:267          subgroupInclusiveXor ( global 4-component vector of bool)
0:267            Compare Less Than ( global 4-component vector of bool)
0:267              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:267                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:267                  Constant:
0:267                    1 (const int)
0:267                Constant:
0:267                  1 (const int)
0:267              Constant:
0:267                0 (const int)
0:267                0 (const int)
0:267                0 (const int)
0:267                0 (const int)
0:269      move second child to first child ( temp float)
0:269        direct index ( temp float)
0:269          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:269            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269              'invocation' ( temp uint)
0:269            Constant:
0:269              0 (const int)
0:269          Constant:
0:269            0 (const int)
0:269        subgroupExclusiveAdd ( global float)
0:269          direct index ( temp float)
0:269            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:269              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:269                Constant:
0:269                  0 (const int)
0:269              Constant:
0:269                0 (const int)
0:269            Constant:
0:269              0 (const int)
0:270      move second child to first child ( temp 2-component vector of float)
0:270        vector swizzle ( temp 2-component vector of float)
0:270          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:270            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270              'invocation' ( temp uint)
0:270            Constant:
0:270              0 (const int)
0:270          Sequence
0:270            Constant:
0:270              0 (const int)
0:270            Constant:
0:270              1 (const int)
0:270        subgroupExclusiveAdd ( global 2-component vector of float)
0:270          vector swizzle ( temp 2-component vector of float)
0:270            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:270              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:270                Constant:
0:270                  1 (const int)
0:270              Constant:
0:270                0 (const int)
0:270            Sequence
0:270              Constant:
0:270                0 (const int)
0:270              Constant:
0:270                1 (const int)
0:271      move second child to first child ( temp 3-component vector of float)
0:271        vector swizzle ( temp 3-component vector of float)
0:271          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:271            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271              'invocation' ( temp uint)
0:271            Constant:
0:271              0 (const int)
0:271          Sequence
0:271            Constant:
0:271              0 (const int)
0:271            Constant:
0:271              1 (const int)
0:271            Constant:
0:271              2 (const int)
0:271        subgroupExclusiveAdd ( global 3-component vector of float)
0:271          vector swizzle ( temp 3-component vector of float)
0:271            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:271              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:271                Constant:
0:271                  2 (const int)
0:271              Constant:
0:271                0 (const int)
0:271            Sequence
0:271              Constant:
0:271                0 (const int)
0:271              Constant:
0:271                1 (const int)
0:271              Constant:
0:271                2 (const int)
0:272      move second child to first child ( temp 4-component vector of float)
0:272        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:272          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272            'invocation' ( temp uint)
0:272          Constant:
0:272            0 (const int)
0:272        subgroupExclusiveAdd ( global 4-component vector of float)
0:272          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:272            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:272              Constant:
0:272                3 (const int)
0:272            Constant:
0:272              0 (const int)
0:274      move second child to first child ( temp int)
0:274        direct index ( temp int)
0:274          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:274            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274              'invocation' ( temp uint)
0:274            Constant:
0:274              1 (const int)
0:274          Constant:
0:274            0 (const int)
0:274        subgroupExclusiveAdd ( global int)
0:274          direct index ( temp int)
0:274            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:274              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:274                Constant:
0:274                  0 (const int)
0:274              Constant:
0:274                1 (const int)
0:274            Constant:
0:274              0 (const int)
0:275      move second child to first child ( temp 2-component vector of int)
0:275        vector swizzle ( temp 2-component vector of int)
0:275          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:275            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275              'invocation' ( temp uint)
0:275            Constant:
0:275              1 (const int)
0:275          Sequence
0:275            Constant:
0:275              0 (const int)
0:275            Constant:
0:275              1 (const int)
0:275        subgroupExclusiveAdd ( global 2-component vector of int)
0:275          vector swizzle ( temp 2-component vector of int)
0:275            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:275              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:275                Constant:
0:275                  1 (const int)
0:275              Constant:
0:275                1 (const int)
0:275            Sequence
0:275              Constant:
0:275                0 (const int)
0:275              Constant:
0:275                1 (const int)
0:276      move second child to first child ( temp 3-component vector of int)
0:276        vector swizzle ( temp 3-component vector of int)
0:276          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:276            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276              'invocation' ( temp uint)
0:276            Constant:
0:276              1 (const int)
0:276          Sequence
0:276            Constant:
0:276              0 (const int)
0:276            Constant:
0:276              1 (const int)
0:276            Constant:
0:276              2 (const int)
0:276        subgroupExclusiveAdd ( global 3-component vector of int)
0:276          vector swizzle ( temp 3-component vector of int)
0:276            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:276              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:276                Constant:
0:276                  2 (const int)
0:276              Constant:
0:276                1 (const int)
0:276            Sequence
0:276              Constant:
0:276                0 (const int)
0:276              Constant:
0:276                1 (const int)
0:276              Constant:
0:276                2 (const int)
0:277      move second child to first child ( temp 4-component vector of int)
0:277        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:277          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277            'invocation' ( temp uint)
0:277          Constant:
0:277            1 (const int)
0:277        subgroupExclusiveAdd ( global 4-component vector of int)
0:277          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:277            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:277              Constant:
0:277                3 (const int)
0:277            Constant:
0:277              1 (const int)
0:279      move second child to first child ( temp uint)
0:279        direct index ( temp uint)
0:279          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:279            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279              'invocation' ( temp uint)
0:279            Constant:
0:279              2 (const int)
0:279          Constant:
0:279            0 (const int)
0:279        subgroupExclusiveAdd ( global uint)
0:279          direct index ( temp uint)
0:279            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:279              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:279                Constant:
0:279                  0 (const int)
0:279              Constant:
0:279                2 (const int)
0:279            Constant:
0:279              0 (const int)
0:280      move second child to first child ( temp 2-component vector of uint)
0:280        vector swizzle ( temp 2-component vector of uint)
0:280          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:280            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280              'invocation' ( temp uint)
0:280            Constant:
0:280              2 (const int)
0:280          Sequence
0:280            Constant:
0:280              0 (const int)
0:280            Constant:
0:280              1 (const int)
0:280        subgroupExclusiveAdd ( global 2-component vector of uint)
0:280          vector swizzle ( temp 2-component vector of uint)
0:280            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:280              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:280                Constant:
0:280                  1 (const int)
0:280              Constant:
0:280                2 (const int)
0:280            Sequence
0:280              Constant:
0:280                0 (const int)
0:280              Constant:
0:280                1 (const int)
0:281      move second child to first child ( temp 3-component vector of uint)
0:281        vector swizzle ( temp 3-component vector of uint)
0:281          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:281            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281              'invocation' ( temp uint)
0:281            Constant:
0:281              2 (const int)
0:281          Sequence
0:281            Constant:
0:281              0 (const int)
0:281            Constant:
0:281              1 (const int)
0:281            Constant:
0:281              2 (const int)
0:281        subgroupExclusiveAdd ( global 3-component vector of uint)
0:281          vector swizzle ( temp 3-component vector of uint)
0:281            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:281              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:281                Constant:
0:281                  2 (const int)
0:281              Constant:
0:281                2 (const int)
0:281            Sequence
0:281              Constant:
0:281                0 (const int)
0:281              Constant:
0:281                1 (const int)
0:281              Constant:
0:281                2 (const int)
0:282      move second child to first child ( temp 4-component vector of uint)
0:282        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:282          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282            'invocation' ( temp uint)
0:282          Constant:
0:282            2 (const int)
0:282        subgroupExclusiveAdd ( global 4-component vector of uint)
0:282          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:282            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:282              Constant:
0:282                3 (const int)
0:282            Constant:
0:282              2 (const int)
0:284      move second child to first child ( temp double)
0:284        direct index ( temp double)
0:284          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:284            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284              'invocation' ( temp uint)
0:284            Constant:
0:284              3 (const int)
0:284          Constant:
0:284            0 (const int)
0:284        subgroupExclusiveAdd ( global double)
0:284          direct index ( temp double)
0:284            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:284              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:284                Constant:
0:284                  0 (const int)
0:284              Constant:
0:284                3 (const int)
0:284            Constant:
0:284              0 (const int)
0:285      move second child to first child ( temp 2-component vector of double)
0:285        vector swizzle ( temp 2-component vector of double)
0:285          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:285            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285              'invocation' ( temp uint)
0:285            Constant:
0:285              3 (const int)
0:285          Sequence
0:285            Constant:
0:285              0 (const int)
0:285            Constant:
0:285              1 (const int)
0:285        subgroupExclusiveAdd ( global 2-component vector of double)
0:285          vector swizzle ( temp 2-component vector of double)
0:285            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:285              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:285                Constant:
0:285                  1 (const int)
0:285              Constant:
0:285                3 (const int)
0:285            Sequence
0:285              Constant:
0:285                0 (const int)
0:285              Constant:
0:285                1 (const int)
0:286      move second child to first child ( temp 3-component vector of double)
0:286        vector swizzle ( temp 3-component vector of double)
0:286          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:286            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286              'invocation' ( temp uint)
0:286            Constant:
0:286              3 (const int)
0:286          Sequence
0:286            Constant:
0:286              0 (const int)
0:286            Constant:
0:286              1 (const int)
0:286            Constant:
0:286              2 (const int)
0:286        subgroupExclusiveAdd ( global 3-component vector of double)
0:286          vector swizzle ( temp 3-component vector of double)
0:286            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:286              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:286                Constant:
0:286                  2 (const int)
0:286              Constant:
0:286                3 (const int)
0:286            Sequence
0:286              Constant:
0:286                0 (const int)
0:286              Constant:
0:286                1 (const int)
0:286              Constant:
0:286                2 (const int)
0:287      move second child to first child ( temp 4-component vector of double)
0:287        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:287          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287            'invocation' ( temp uint)
0:287          Constant:
0:287            3 (const int)
0:287        subgroupExclusiveAdd ( global 4-component vector of double)
0:287          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:287            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:287              Constant:
0:287                3 (const int)
0:287            Constant:
0:287              3 (const int)
0:289      move second child to first child ( temp float)
0:289        direct index ( temp float)
0:289          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:289            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289              'invocation' ( temp uint)
0:289            Constant:
0:289              0 (const int)
0:289          Constant:
0:289            0 (const int)
0:289        subgroupExclusiveMul ( global float)
0:289          direct index ( temp float)
0:289            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:289              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:289                Constant:
0:289                  0 (const int)
0:289              Constant:
0:289                0 (const int)
0:289            Constant:
0:289              0 (const int)
0:290      move second child to first child ( temp 2-component vector of float)
0:290        vector swizzle ( temp 2-component vector of float)
0:290          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:290            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290              'invocation' ( temp uint)
0:290            Constant:
0:290              0 (const int)
0:290          Sequence
0:290            Constant:
0:290              0 (const int)
0:290            Constant:
0:290              1 (const int)
0:290        subgroupExclusiveMul ( global 2-component vector of float)
0:290          vector swizzle ( temp 2-component vector of float)
0:290            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:290              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:290                Constant:
0:290                  1 (const int)
0:290              Constant:
0:290                0 (const int)
0:290            Sequence
0:290              Constant:
0:290                0 (const int)
0:290              Constant:
0:290                1 (const int)
0:291      move second child to first child ( temp 3-component vector of float)
0:291        vector swizzle ( temp 3-component vector of float)
0:291          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:291            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291              'invocation' ( temp uint)
0:291            Constant:
0:291              0 (const int)
0:291          Sequence
0:291            Constant:
0:291              0 (const int)
0:291            Constant:
0:291              1 (const int)
0:291            Constant:
0:291              2 (const int)
0:291        subgroupExclusiveMul ( global 3-component vector of float)
0:291          vector swizzle ( temp 3-component vector of float)
0:291            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:291              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:291                Constant:
0:291                  2 (const int)
0:291              Constant:
0:291                0 (const int)
0:291            Sequence
0:291              Constant:
0:291                0 (const int)
0:291              Constant:
0:291                1 (const int)
0:291              Constant:
0:291                2 (const int)
0:292      move second child to first child ( temp 4-component vector of float)
0:292        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:292          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292            'invocation' ( temp uint)
0:292          Constant:
0:292            0 (const int)
0:292        subgroupExclusiveMul ( global 4-component vector of float)
0:292          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:292            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:292              Constant:
0:292                3 (const int)
0:292            Constant:
0:292              0 (const int)
0:294      move second child to first child ( temp int)
0:294        direct index ( temp int)
0:294          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:294            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294              'invocation' ( temp uint)
0:294            Constant:
0:294              1 (const int)
0:294          Constant:
0:294            0 (const int)
0:294        subgroupExclusiveMul ( global int)
0:294          direct index ( temp int)
0:294            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:294              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:294                Constant:
0:294                  0 (const int)
0:294              Constant:
0:294                1 (const int)
0:294            Constant:
0:294              0 (const int)
0:295      move second child to first child ( temp 2-component vector of int)
0:295        vector swizzle ( temp 2-component vector of int)
0:295          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:295            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295              'invocation' ( temp uint)
0:295            Constant:
0:295              1 (const int)
0:295          Sequence
0:295            Constant:
0:295              0 (const int)
0:295            Constant:
0:295              1 (const int)
0:295        subgroupExclusiveMul ( global 2-component vector of int)
0:295          vector swizzle ( temp 2-component vector of int)
0:295            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:295              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:295                Constant:
0:295                  1 (const int)
0:295              Constant:
0:295                1 (const int)
0:295            Sequence
0:295              Constant:
0:295                0 (const int)
0:295              Constant:
0:295                1 (const int)
0:296      move second child to first child ( temp 3-component vector of int)
0:296        vector swizzle ( temp 3-component vector of int)
0:296          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:296            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296              'invocation' ( temp uint)
0:296            Constant:
0:296              1 (const int)
0:296          Sequence
0:296            Constant:
0:296              0 (const int)
0:296            Constant:
0:296              1 (const int)
0:296            Constant:
0:296              2 (const int)
0:296        subgroupExclusiveMul ( global 3-component vector of int)
0:296          vector swizzle ( temp 3-component vector of int)
0:296            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:296              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:296                Constant:
0:296                  2 (const int)
0:296              Constant:
0:296                1 (const int)
0:296            Sequence
0:296              Constant:
0:296                0 (const int)
0:296              Constant:
0:296                1 (const int)
0:296              Constant:
0:296                2 (const int)
0:297      move second child to first child ( temp 4-component vector of int)
0:297        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:297          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297            'invocation' ( temp uint)
0:297          Constant:
0:297            1 (const int)
0:297        subgroupExclusiveMul ( global 4-component vector of int)
0:297          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:297            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:297              Constant:
0:297                3 (const int)
0:297            Constant:
0:297              1 (const int)
0:299      move second child to first child ( temp uint)
0:299        direct index ( temp uint)
0:299          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:299            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299              'invocation' ( temp uint)
0:299            Constant:
0:299              2 (const int)
0:299          Constant:
0:299            0 (const int)
0:299        subgroupExclusiveMul ( global uint)
0:299          direct index ( temp uint)
0:299            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:299              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:299                Constant:
0:299                  0 (const int)
0:299              Constant:
0:299                2 (const int)
0:299            Constant:
0:299              0 (const int)
0:300      move second child to first child ( temp 2-component vector of uint)
0:300        vector swizzle ( temp 2-component vector of uint)
0:300          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:300            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300              'invocation' ( temp uint)
0:300            Constant:
0:300              2 (const int)
0:300          Sequence
0:300            Constant:
0:300              0 (const int)
0:300            Constant:
0:300              1 (const int)
0:300        subgroupExclusiveMul ( global 2-component vector of uint)
0:300          vector swizzle ( temp 2-component vector of uint)
0:300            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:300              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:300                Constant:
0:300                  1 (const int)
0:300              Constant:
0:300                2 (const int)
0:300            Sequence
0:300              Constant:
0:300                0 (const int)
0:300              Constant:
0:300                1 (const int)
0:301      move second child to first child ( temp 3-component vector of uint)
0:301        vector swizzle ( temp 3-component vector of uint)
0:301          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:301            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301              'invocation' ( temp uint)
0:301            Constant:
0:301              2 (const int)
0:301          Sequence
0:301            Constant:
0:301              0 (const int)
0:301            Constant:
0:301              1 (const int)
0:301            Constant:
0:301              2 (const int)
0:301        subgroupExclusiveMul ( global 3-component vector of uint)
0:301          vector swizzle ( temp 3-component vector of uint)
0:301            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:301              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:301                Constant:
0:301                  2 (const int)
0:301              Constant:
0:301                2 (const int)
0:301            Sequence
0:301              Constant:
0:301                0 (const int)
0:301              Constant:
0:301                1 (const int)
0:301              Constant:
0:301                2 (const int)
0:302      move second child to first child ( temp 4-component vector of uint)
0:302        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:302          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302            'invocation' ( temp uint)
0:302          Constant:
0:302            2 (const int)
0:302        subgroupExclusiveMul ( global 4-component vector of uint)
0:302          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:302            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:302              Constant:
0:302                3 (const int)
0:302            Constant:
0:302              2 (const int)
0:304      move second child to first child ( temp double)
0:304        direct index ( temp double)
0:304          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:304            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304              'invocation' ( temp uint)
0:304            Constant:
0:304              3 (const int)
0:304          Constant:
0:304            0 (const int)
0:304        subgroupExclusiveMul ( global double)
0:304          direct index ( temp double)
0:304            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:304              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:304                Constant:
0:304                  0 (const int)
0:304              Constant:
0:304                3 (const int)
0:304            Constant:
0:304              0 (const int)
0:305      move second child to first child ( temp 2-component vector of double)
0:305        vector swizzle ( temp 2-component vector of double)
0:305          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:305            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305              'invocation' ( temp uint)
0:305            Constant:
0:305              3 (const int)
0:305          Sequence
0:305            Constant:
0:305              0 (const int)
0:305            Constant:
0:305              1 (const int)
0:305        subgroupExclusiveMul ( global 2-component vector of double)
0:305          vector swizzle ( temp 2-component vector of double)
0:305            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:305              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:305                Constant:
0:305                  1 (const int)
0:305              Constant:
0:305                3 (const int)
0:305            Sequence
0:305              Constant:
0:305                0 (const int)
0:305              Constant:
0:305                1 (const int)
0:306      move second child to first child ( temp 3-component vector of double)
0:306        vector swizzle ( temp 3-component vector of double)
0:306          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:306            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306              'invocation' ( temp uint)
0:306            Constant:
0:306              3 (const int)
0:306          Sequence
0:306            Constant:
0:306              0 (const int)
0:306            Constant:
0:306              1 (const int)
0:306            Constant:
0:306              2 (const int)
0:306        subgroupExclusiveMul ( global 3-component vector of double)
0:306          vector swizzle ( temp 3-component vector of double)
0:306            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:306              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:306                Constant:
0:306                  2 (const int)
0:306              Constant:
0:306                3 (const int)
0:306            Sequence
0:306              Constant:
0:306                0 (const int)
0:306              Constant:
0:306                1 (const int)
0:306              Constant:
0:306                2 (const int)
0:307      move second child to first child ( temp 4-component vector of double)
0:307        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:307          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307            'invocation' ( temp uint)
0:307          Constant:
0:307            3 (const int)
0:307        subgroupExclusiveMul ( global 4-component vector of double)
0:307          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:307            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:307              Constant:
0:307                3 (const int)
0:307            Constant:
0:307              3 (const int)
0:309      move second child to first child ( temp float)
0:309        direct index ( temp float)
0:309          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:309            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309              'invocation' ( temp uint)
0:309            Constant:
0:309              0 (const int)
0:309          Constant:
0:309            0 (const int)
0:309        subgroupExclusiveMin ( global float)
0:309          direct index ( temp float)
0:309            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:309              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:309                Constant:
0:309                  0 (const int)
0:309              Constant:
0:309                0 (const int)
0:309            Constant:
0:309              0 (const int)
0:310      move second child to first child ( temp 2-component vector of float)
0:310        vector swizzle ( temp 2-component vector of float)
0:310          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:310            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310              'invocation' ( temp uint)
0:310            Constant:
0:310              0 (const int)
0:310          Sequence
0:310            Constant:
0:310              0 (const int)
0:310            Constant:
0:310              1 (const int)
0:310        subgroupExclusiveMin ( global 2-component vector of float)
0:310          vector swizzle ( temp 2-component vector of float)
0:310            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:310              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:310                Constant:
0:310                  1 (const int)
0:310              Constant:
0:310                0 (const int)
0:310            Sequence
0:310              Constant:
0:310                0 (const int)
0:310              Constant:
0:310                1 (const int)
0:311      move second child to first child ( temp 3-component vector of float)
0:311        vector swizzle ( temp 3-component vector of float)
0:311          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:311            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311              'invocation' ( temp uint)
0:311            Constant:
0:311              0 (const int)
0:311          Sequence
0:311            Constant:
0:311              0 (const int)
0:311            Constant:
0:311              1 (const int)
0:311            Constant:
0:311              2 (const int)
0:311        subgroupExclusiveMin ( global 3-component vector of float)
0:311          vector swizzle ( temp 3-component vector of float)
0:311            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:311              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:311                Constant:
0:311                  2 (const int)
0:311              Constant:
0:311                0 (const int)
0:311            Sequence
0:311              Constant:
0:311                0 (const int)
0:311              Constant:
0:311                1 (const int)
0:311              Constant:
0:311                2 (const int)
0:312      move second child to first child ( temp 4-component vector of float)
0:312        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:312          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312            'invocation' ( temp uint)
0:312          Constant:
0:312            0 (const int)
0:312        subgroupExclusiveMin ( global 4-component vector of float)
0:312          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:312            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:312              Constant:
0:312                3 (const int)
0:312            Constant:
0:312              0 (const int)
0:314      move second child to first child ( temp int)
0:314        direct index ( temp int)
0:314          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:314            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314              'invocation' ( temp uint)
0:314            Constant:
0:314              1 (const int)
0:314          Constant:
0:314            0 (const int)
0:314        subgroupExclusiveMin ( global int)
0:314          direct index ( temp int)
0:314            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:314              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:314                Constant:
0:314                  0 (const int)
0:314              Constant:
0:314                1 (const int)
0:314            Constant:
0:314              0 (const int)
0:315      move second child to first child ( temp 2-component vector of int)
0:315        vector swizzle ( temp 2-component vector of int)
0:315          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:315            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315              'invocation' ( temp uint)
0:315            Constant:
0:315              1 (const int)
0:315          Sequence
0:315            Constant:
0:315              0 (const int)
0:315            Constant:
0:315              1 (const int)
0:315        subgroupExclusiveMin ( global 2-component vector of int)
0:315          vector swizzle ( temp 2-component vector of int)
0:315            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:315              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:315                Constant:
0:315                  1 (const int)
0:315              Constant:
0:315                1 (const int)
0:315            Sequence
0:315              Constant:
0:315                0 (const int)
0:315              Constant:
0:315                1 (const int)
0:316      move second child to first child ( temp 3-component vector of int)
0:316        vector swizzle ( temp 3-component vector of int)
0:316          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:316            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316              'invocation' ( temp uint)
0:316            Constant:
0:316              1 (const int)
0:316          Sequence
0:316            Constant:
0:316              0 (const int)
0:316            Constant:
0:316              1 (const int)
0:316            Constant:
0:316              2 (const int)
0:316        subgroupExclusiveMin ( global 3-component vector of int)
0:316          vector swizzle ( temp 3-component vector of int)
0:316            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:316              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:316                Constant:
0:316                  2 (const int)
0:316              Constant:
0:316                1 (const int)
0:316            Sequence
0:316              Constant:
0:316                0 (const int)
0:316              Constant:
0:316                1 (const int)
0:316              Constant:
0:316                2 (const int)
0:317      move second child to first child ( temp 4-component vector of int)
0:317        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:317          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317            'invocation' ( temp uint)
0:317          Constant:
0:317            1 (const int)
0:317        subgroupExclusiveMin ( global 4-component vector of int)
0:317          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:317            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:317              Constant:
0:317                3 (const int)
0:317            Constant:
0:317              1 (const int)
0:319      move second child to first child ( temp uint)
0:319        direct index ( temp uint)
0:319          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:319            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319              'invocation' ( temp uint)
0:319            Constant:
0:319              2 (const int)
0:319          Constant:
0:319            0 (const int)
0:319        subgroupExclusiveMin ( global uint)
0:319          direct index ( temp uint)
0:319            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:319              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:319                Constant:
0:319                  0 (const int)
0:319              Constant:
0:319                2 (const int)
0:319            Constant:
0:319              0 (const int)
0:320      move second child to first child ( temp 2-component vector of uint)
0:320        vector swizzle ( temp 2-component vector of uint)
0:320          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:320            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320              'invocation' ( temp uint)
0:320            Constant:
0:320              2 (const int)
0:320          Sequence
0:320            Constant:
0:320              0 (const int)
0:320            Constant:
0:320              1 (const int)
0:320        subgroupExclusiveMin ( global 2-component vector of uint)
0:320          vector swizzle ( temp 2-component vector of uint)
0:320            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:320              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:320                Constant:
0:320                  1 (const int)
0:320              Constant:
0:320                2 (const int)
0:320            Sequence
0:320              Constant:
0:320                0 (const int)
0:320              Constant:
0:320                1 (const int)
0:321      move second child to first child ( temp 3-component vector of uint)
0:321        vector swizzle ( temp 3-component vector of uint)
0:321          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:321            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321              'invocation' ( temp uint)
0:321            Constant:
0:321              2 (const int)
0:321          Sequence
0:321            Constant:
0:321              0 (const int)
0:321            Constant:
0:321              1 (const int)
0:321            Constant:
0:321              2 (const int)
0:321        subgroupExclusiveMin ( global 3-component vector of uint)
0:321          vector swizzle ( temp 3-component vector of uint)
0:321            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:321              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:321                Constant:
0:321                  2 (const int)
0:321              Constant:
0:321                2 (const int)
0:321            Sequence
0:321              Constant:
0:321                0 (const int)
0:321              Constant:
0:321                1 (const int)
0:321              Constant:
0:321                2 (const int)
0:322      move second child to first child ( temp 4-component vector of uint)
0:322        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:322          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322            'invocation' ( temp uint)
0:322          Constant:
0:322            2 (const int)
0:322        subgroupExclusiveMin ( global 4-component vector of uint)
0:322          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:322            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:322              Constant:
0:322                3 (const int)
0:322            Constant:
0:322              2 (const int)
0:324      move second child to first child ( temp double)
0:324        direct index ( temp double)
0:324          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:324            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324              'invocation' ( temp uint)
0:324            Constant:
0:324              3 (const int)
0:324          Constant:
0:324            0 (const int)
0:324        subgroupExclusiveMin ( global double)
0:324          direct index ( temp double)
0:324            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:324              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:324                Constant:
0:324                  0 (const int)
0:324              Constant:
0:324                3 (const int)
0:324            Constant:
0:324              0 (const int)
0:325      move second child to first child ( temp 2-component vector of double)
0:325        vector swizzle ( temp 2-component vector of double)
0:325          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:325            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325              'invocation' ( temp uint)
0:325            Constant:
0:325              3 (const int)
0:325          Sequence
0:325            Constant:
0:325              0 (const int)
0:325            Constant:
0:325              1 (const int)
0:325        subgroupExclusiveMin ( global 2-component vector of double)
0:325          vector swizzle ( temp 2-component vector of double)
0:325            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:325              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:325                Constant:
0:325                  1 (const int)
0:325              Constant:
0:325                3 (const int)
0:325            Sequence
0:325              Constant:
0:325                0 (const int)
0:325              Constant:
0:325                1 (const int)
0:326      move second child to first child ( temp 3-component vector of double)
0:326        vector swizzle ( temp 3-component vector of double)
0:326          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:326            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326              'invocation' ( temp uint)
0:326            Constant:
0:326              3 (const int)
0:326          Sequence
0:326            Constant:
0:326              0 (const int)
0:326            Constant:
0:326              1 (const int)
0:326            Constant:
0:326              2 (const int)
0:326        subgroupExclusiveMin ( global 3-component vector of double)
0:326          vector swizzle ( temp 3-component vector of double)
0:326            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:326              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:326                Constant:
0:326                  2 (const int)
0:326              Constant:
0:326                3 (const int)
0:326            Sequence
0:326              Constant:
0:326                0 (const int)
0:326              Constant:
0:326                1 (const int)
0:326              Constant:
0:326                2 (const int)
0:327      move second child to first child ( temp 4-component vector of double)
0:327        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:327          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327            'invocation' ( temp uint)
0:327          Constant:
0:327            3 (const int)
0:327        subgroupExclusiveMin ( global 4-component vector of double)
0:327          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:327            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:327              Constant:
0:327                3 (const int)
0:327            Constant:
0:327              3 (const int)
0:329      move second child to first child ( temp float)
0:329        direct index ( temp float)
0:329          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:329            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329              'invocation' ( temp uint)
0:329            Constant:
0:329              0 (const int)
0:329          Constant:
0:329            0 (const int)
0:329        subgroupExclusiveMax ( global float)
0:329          direct index ( temp float)
0:329            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:329              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:329                Constant:
0:329                  0 (const int)
0:329              Constant:
0:329                0 (const int)
0:329            Constant:
0:329              0 (const int)
0:330      move second child to first child ( temp 2-component vector of float)
0:330        vector swizzle ( temp 2-component vector of float)
0:330          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:330            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330              'invocation' ( temp uint)
0:330            Constant:
0:330              0 (const int)
0:330          Sequence
0:330            Constant:
0:330              0 (const int)
0:330            Constant:
0:330              1 (const int)
0:330        subgroupExclusiveMax ( global 2-component vector of float)
0:330          vector swizzle ( temp 2-component vector of float)
0:330            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:330              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:330                Constant:
0:330                  1 (const int)
0:330              Constant:
0:330                0 (const int)
0:330            Sequence
0:330              Constant:
0:330                0 (const int)
0:330              Constant:
0:330                1 (const int)
0:331      move second child to first child ( temp 3-component vector of float)
0:331        vector swizzle ( temp 3-component vector of float)
0:331          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:331            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331              'invocation' ( temp uint)
0:331            Constant:
0:331              0 (const int)
0:331          Sequence
0:331            Constant:
0:331              0 (const int)
0:331            Constant:
0:331              1 (const int)
0:331            Constant:
0:331              2 (const int)
0:331        subgroupExclusiveMax ( global 3-component vector of float)
0:331          vector swizzle ( temp 3-component vector of float)
0:331            f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:331              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:331                Constant:
0:331                  2 (const int)
0:331              Constant:
0:331                0 (const int)
0:331            Sequence
0:331              Constant:
0:331                0 (const int)
0:331              Constant:
0:331                1 (const int)
0:331              Constant:
0:331                2 (const int)
0:332      move second child to first child ( temp 4-component vector of float)
0:332        f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:332          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332            'invocation' ( temp uint)
0:332          Constant:
0:332            0 (const int)
0:332        subgroupExclusiveMax ( global 4-component vector of float)
0:332          f4: direct index for structure (layout( column_major shared) buffer 4-component vector of float)
0:332            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:332              Constant:
0:332                3 (const int)
0:332            Constant:
0:332              0 (const int)
0:334      move second child to first child ( temp int)
0:334        direct index ( temp int)
0:334          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:334            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334              'invocation' ( temp uint)
0:334            Constant:
0:334              1 (const int)
0:334          Constant:
0:334            0 (const int)
0:334        subgroupExclusiveMax ( global int)
0:334          direct index ( temp int)
0:334            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:334              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:334                Constant:
0:334                  0 (const int)
0:334              Constant:
0:334                1 (const int)
0:334            Constant:
0:334              0 (const int)
0:335      move second child to first child ( temp 2-component vector of int)
0:335        vector swizzle ( temp 2-component vector of int)
0:335          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:335            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335              'invocation' ( temp uint)
0:335            Constant:
0:335              1 (const int)
0:335          Sequence
0:335            Constant:
0:335              0 (const int)
0:335            Constant:
0:335              1 (const int)
0:335        subgroupExclusiveMax ( global 2-component vector of int)
0:335          vector swizzle ( temp 2-component vector of int)
0:335            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:335              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:335                Constant:
0:335                  1 (const int)
0:335              Constant:
0:335                1 (const int)
0:335            Sequence
0:335              Constant:
0:335                0 (const int)
0:335              Constant:
0:335                1 (const int)
0:336      move second child to first child ( temp 3-component vector of int)
0:336        vector swizzle ( temp 3-component vector of int)
0:336          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:336            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336              'invocation' ( temp uint)
0:336            Constant:
0:336              1 (const int)
0:336          Sequence
0:336            Constant:
0:336              0 (const int)
0:336            Constant:
0:336              1 (const int)
0:336            Constant:
0:336              2 (const int)
0:336        subgroupExclusiveMax ( global 3-component vector of int)
0:336          vector swizzle ( temp 3-component vector of int)
0:336            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:336              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:336                Constant:
0:336                  2 (const int)
0:336              Constant:
0:336                1 (const int)
0:336            Sequence
0:336              Constant:
0:336                0 (const int)
0:336              Constant:
0:336                1 (const int)
0:336              Constant:
0:336                2 (const int)
0:337      move second child to first child ( temp 4-component vector of int)
0:337        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:337          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337            'invocation' ( temp uint)
0:337          Constant:
0:337            1 (const int)
0:337        subgroupExclusiveMax ( global 4-component vector of int)
0:337          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:337            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:337              Constant:
0:337                3 (const int)
0:337            Constant:
0:337              1 (const int)
0:339      move second child to first child ( temp uint)
0:339        direct index ( temp uint)
0:339          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:339            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339              'invocation' ( temp uint)
0:339            Constant:
0:339              2 (const int)
0:339          Constant:
0:339            0 (const int)
0:339        subgroupExclusiveMax ( global uint)
0:339          direct index ( temp uint)
0:339            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:339              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:339                Constant:
0:339                  0 (const int)
0:339              Constant:
0:339                2 (const int)
0:339            Constant:
0:339              0 (const int)
0:340      move second child to first child ( temp 2-component vector of uint)
0:340        vector swizzle ( temp 2-component vector of uint)
0:340          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:340            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340              'invocation' ( temp uint)
0:340            Constant:
0:340              2 (const int)
0:340          Sequence
0:340            Constant:
0:340              0 (const int)
0:340            Constant:
0:340              1 (const int)
0:340        subgroupExclusiveMax ( global 2-component vector of uint)
0:340          vector swizzle ( temp 2-component vector of uint)
0:340            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:340              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:340                Constant:
0:340                  1 (const int)
0:340              Constant:
0:340                2 (const int)
0:340            Sequence
0:340              Constant:
0:340                0 (const int)
0:340              Constant:
0:340                1 (const int)
0:341      move second child to first child ( temp 3-component vector of uint)
0:341        vector swizzle ( temp 3-component vector of uint)
0:341          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:341            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341              'invocation' ( temp uint)
0:341            Constant:
0:341              2 (const int)
0:341          Sequence
0:341            Constant:
0:341              0 (const int)
0:341            Constant:
0:341              1 (const int)
0:341            Constant:
0:341              2 (const int)
0:341        subgroupExclusiveMax ( global 3-component vector of uint)
0:341          vector swizzle ( temp 3-component vector of uint)
0:341            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:341              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:341                Constant:
0:341                  2 (const int)
0:341              Constant:
0:341                2 (const int)
0:341            Sequence
0:341              Constant:
0:341                0 (const int)
0:341              Constant:
0:341                1 (const int)
0:341              Constant:
0:341                2 (const int)
0:342      move second child to first child ( temp 4-component vector of uint)
0:342        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:342          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342            'invocation' ( temp uint)
0:342          Constant:
0:342            2 (const int)
0:342        subgroupExclusiveMax ( global 4-component vector of uint)
0:342          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:342            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:342              Constant:
0:342                3 (const int)
0:342            Constant:
0:342              2 (const int)
0:344      move second child to first child ( temp double)
0:344        direct index ( temp double)
0:344          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:344            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344              'invocation' ( temp uint)
0:344            Constant:
0:344              3 (const int)
0:344          Constant:
0:344            0 (const int)
0:344        subgroupExclusiveMax ( global double)
0:344          direct index ( temp double)
0:344            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:344              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:344                Constant:
0:344                  0 (const int)
0:344              Constant:
0:344                3 (const int)
0:344            Constant:
0:344              0 (const int)
0:345      move second child to first child ( temp 2-component vector of double)
0:345        vector swizzle ( temp 2-component vector of double)
0:345          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:345            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345              'invocation' ( temp uint)
0:345            Constant:
0:345              3 (const int)
0:345          Sequence
0:345            Constant:
0:345              0 (const int)
0:345            Constant:
0:345              1 (const int)
0:345        subgroupExclusiveMax ( global 2-component vector of double)
0:345          vector swizzle ( temp 2-component vector of double)
0:345            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:345              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:345                Constant:
0:345                  1 (const int)
0:345              Constant:
0:345                3 (const int)
0:345            Sequence
0:345              Constant:
0:345                0 (const int)
0:345              Constant:
0:345                1 (const int)
0:346      move second child to first child ( temp 3-component vector of double)
0:346        vector swizzle ( temp 3-component vector of double)
0:346          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:346            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346              'invocation' ( temp uint)
0:346            Constant:
0:346              3 (const int)
0:346          Sequence
0:346            Constant:
0:346              0 (const int)
0:346            Constant:
0:346              1 (const int)
0:346            Constant:
0:346              2 (const int)
0:346        subgroupExclusiveMax ( global 3-component vector of double)
0:346          vector swizzle ( temp 3-component vector of double)
0:346            d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:346              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:346                Constant:
0:346                  2 (const int)
0:346              Constant:
0:346                3 (const int)
0:346            Sequence
0:346              Constant:
0:346                0 (const int)
0:346              Constant:
0:346                1 (const int)
0:346              Constant:
0:346                2 (const int)
0:347      move second child to first child ( temp 4-component vector of double)
0:347        d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:347          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347            'invocation' ( temp uint)
0:347          Constant:
0:347            3 (const int)
0:347        subgroupExclusiveMax ( global 4-component vector of double)
0:347          d4: direct index for structure (layout( column_major shared) buffer 4-component vector of double)
0:347            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:347              Constant:
0:347                3 (const int)
0:347            Constant:
0:347              3 (const int)
0:349      move second child to first child ( temp int)
0:349        direct index ( temp int)
0:349          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:349            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349              'invocation' ( temp uint)
0:349            Constant:
0:349              1 (const int)
0:349          Constant:
0:349            0 (const int)
0:349        subgroupExclusiveAnd ( global int)
0:349          direct index ( temp int)
0:349            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:349              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:349                Constant:
0:349                  0 (const int)
0:349              Constant:
0:349                1 (const int)
0:349            Constant:
0:349              0 (const int)
0:350      move second child to first child ( temp 2-component vector of int)
0:350        vector swizzle ( temp 2-component vector of int)
0:350          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:350            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350              'invocation' ( temp uint)
0:350            Constant:
0:350              1 (const int)
0:350          Sequence
0:350            Constant:
0:350              0 (const int)
0:350            Constant:
0:350              1 (const int)
0:350        subgroupExclusiveAnd ( global 2-component vector of int)
0:350          vector swizzle ( temp 2-component vector of int)
0:350            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:350              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:350                Constant:
0:350                  1 (const int)
0:350              Constant:
0:350                1 (const int)
0:350            Sequence
0:350              Constant:
0:350                0 (const int)
0:350              Constant:
0:350                1 (const int)
0:351      move second child to first child ( temp 3-component vector of int)
0:351        vector swizzle ( temp 3-component vector of int)
0:351          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:351            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351              'invocation' ( temp uint)
0:351            Constant:
0:351              1 (const int)
0:351          Sequence
0:351            Constant:
0:351              0 (const int)
0:351            Constant:
0:351              1 (const int)
0:351            Constant:
0:351              2 (const int)
0:351        subgroupExclusiveAnd ( global 3-component vector of int)
0:351          vector swizzle ( temp 3-component vector of int)
0:351            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:351              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:351                Constant:
0:351                  2 (const int)
0:351              Constant:
0:351                1 (const int)
0:351            Sequence
0:351              Constant:
0:351                0 (const int)
0:351              Constant:
0:351                1 (const int)
0:351              Constant:
0:351                2 (const int)
0:352      move second child to first child ( temp 4-component vector of int)
0:352        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:352          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352            'invocation' ( temp uint)
0:352          Constant:
0:352            1 (const int)
0:352        subgroupExclusiveAnd ( global 4-component vector of int)
0:352          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:352            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:352              Constant:
0:352                3 (const int)
0:352            Constant:
0:352              1 (const int)
0:354      move second child to first child ( temp uint)
0:354        direct index ( temp uint)
0:354          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:354            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354              'invocation' ( temp uint)
0:354            Constant:
0:354              2 (const int)
0:354          Constant:
0:354            0 (const int)
0:354        subgroupExclusiveAnd ( global uint)
0:354          direct index ( temp uint)
0:354            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:354              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:354                Constant:
0:354                  0 (const int)
0:354              Constant:
0:354                2 (const int)
0:354            Constant:
0:354              0 (const int)
0:355      move second child to first child ( temp 2-component vector of uint)
0:355        vector swizzle ( temp 2-component vector of uint)
0:355          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:355            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355              'invocation' ( temp uint)
0:355            Constant:
0:355              2 (const int)
0:355          Sequence
0:355            Constant:
0:355              0 (const int)
0:355            Constant:
0:355              1 (const int)
0:355        subgroupExclusiveAnd ( global 2-component vector of uint)
0:355          vector swizzle ( temp 2-component vector of uint)
0:355            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:355              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:355                Constant:
0:355                  1 (const int)
0:355              Constant:
0:355                2 (const int)
0:355            Sequence
0:355              Constant:
0:355                0 (const int)
0:355              Constant:
0:355                1 (const int)
0:356      move second child to first child ( temp 3-component vector of uint)
0:356        vector swizzle ( temp 3-component vector of uint)
0:356          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:356            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356              'invocation' ( temp uint)
0:356            Constant:
0:356              2 (const int)
0:356          Sequence
0:356            Constant:
0:356              0 (const int)
0:356            Constant:
0:356              1 (const int)
0:356            Constant:
0:356              2 (const int)
0:356        subgroupExclusiveAnd ( global 3-component vector of uint)
0:356          vector swizzle ( temp 3-component vector of uint)
0:356            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:356              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:356                Constant:
0:356                  2 (const int)
0:356              Constant:
0:356                2 (const int)
0:356            Sequence
0:356              Constant:
0:356                0 (const int)
0:356              Constant:
0:356                1 (const int)
0:356              Constant:
0:356                2 (const int)
0:357      move second child to first child ( temp 4-component vector of uint)
0:357        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:357          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357            'invocation' ( temp uint)
0:357          Constant:
0:357            2 (const int)
0:357        subgroupExclusiveAnd ( global 4-component vector of uint)
0:357          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:357            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:357              Constant:
0:357                3 (const int)
0:357            Constant:
0:357              2 (const int)
0:359      move second child to first child ( temp int)
0:359        direct index ( temp int)
0:359          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:359            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359              'invocation' ( temp uint)
0:359            Constant:
0:359              1 (const int)
0:359          Constant:
0:359            0 (const int)
0:359        Convert bool to int ( temp int)
0:359          subgroupExclusiveAnd ( global bool)
0:359            Compare Less Than ( temp bool)
0:359              direct index ( temp int)
0:359                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:359                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:359                    Constant:
0:359                      0 (const int)
0:359                  Constant:
0:359                    1 (const int)
0:359                Constant:
0:359                  0 (const int)
0:359              Constant:
0:359                0 (const int)
0:360      move second child to first child ( temp 2-component vector of int)
0:360        vector swizzle ( temp 2-component vector of int)
0:360          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:360            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360              'invocation' ( temp uint)
0:360            Constant:
0:360              1 (const int)
0:360          Sequence
0:360            Constant:
0:360              0 (const int)
0:360            Constant:
0:360              1 (const int)
0:360        Convert bool to int ( temp 2-component vector of int)
0:360          subgroupExclusiveAnd ( global 2-component vector of bool)
0:360            Compare Less Than ( global 2-component vector of bool)
0:360              vector swizzle ( temp 2-component vector of int)
0:360                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:360                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:360                    Constant:
0:360                      1 (const int)
0:360                  Constant:
0:360                    1 (const int)
0:360                Sequence
0:360                  Constant:
0:360                    0 (const int)
0:360                  Constant:
0:360                    1 (const int)
0:360              Constant:
0:360                0 (const int)
0:360                0 (const int)
0:361      move second child to first child ( temp 3-component vector of int)
0:361        vector swizzle ( temp 3-component vector of int)
0:361          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:361            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361              'invocation' ( temp uint)
0:361            Constant:
0:361              1 (const int)
0:361          Sequence
0:361            Constant:
0:361              0 (const int)
0:361            Constant:
0:361              1 (const int)
0:361            Constant:
0:361              2 (const int)
0:361        Convert bool to int ( temp 3-component vector of int)
0:361          subgroupExclusiveAnd ( global 3-component vector of bool)
0:361            Compare Less Than ( global 3-component vector of bool)
0:361              vector swizzle ( temp 3-component vector of int)
0:361                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:361                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:361                    Constant:
0:361                      1 (const int)
0:361                  Constant:
0:361                    1 (const int)
0:361                Sequence
0:361                  Constant:
0:361                    0 (const int)
0:361                  Constant:
0:361                    1 (const int)
0:361                  Constant:
0:361                    2 (const int)
0:361              Constant:
0:361                0 (const int)
0:361                0 (const int)
0:361                0 (const int)
0:362      move second child to first child ( temp 4-component vector of int)
0:362        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:362          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362            'invocation' ( temp uint)
0:362          Constant:
0:362            1 (const int)
0:362        Convert bool to int ( temp 4-component vector of int)
0:362          subgroupExclusiveAnd ( global 4-component vector of bool)
0:362            Compare Less Than ( global 4-component vector of bool)
0:362              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:362                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:362                  Constant:
0:362                    1 (const int)
0:362                Constant:
0:362                  1 (const int)
0:362              Constant:
0:362                0 (const int)
0:362                0 (const int)
0:362                0 (const int)
0:362                0 (const int)
0:364      move second child to first child ( temp int)
0:364        direct index ( temp int)
0:364          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:364            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364              'invocation' ( temp uint)
0:364            Constant:
0:364              1 (const int)
0:364          Constant:
0:364            0 (const int)
0:364        subgroupExclusiveOr ( global int)
0:364          direct index ( temp int)
0:364            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:364              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:364                Constant:
0:364                  0 (const int)
0:364              Constant:
0:364                1 (const int)
0:364            Constant:
0:364              0 (const int)
0:365      move second child to first child ( temp 2-component vector of int)
0:365        vector swizzle ( temp 2-component vector of int)
0:365          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:365            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365              'invocation' ( temp uint)
0:365            Constant:
0:365              1 (const int)
0:365          Sequence
0:365            Constant:
0:365              0 (const int)
0:365            Constant:
0:365              1 (const int)
0:365        subgroupExclusiveOr ( global 2-component vector of int)
0:365          vector swizzle ( temp 2-component vector of int)
0:365            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:365              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:365                Constant:
0:365                  1 (const int)
0:365              Constant:
0:365                1 (const int)
0:365            Sequence
0:365              Constant:
0:365                0 (const int)
0:365              Constant:
0:365                1 (const int)
0:366      move second child to first child ( temp 3-component vector of int)
0:366        vector swizzle ( temp 3-component vector of int)
0:366          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:366            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366              'invocation' ( temp uint)
0:366            Constant:
0:366              1 (const int)
0:366          Sequence
0:366            Constant:
0:366              0 (const int)
0:366            Constant:
0:366              1 (const int)
0:366            Constant:
0:366              2 (const int)
0:366        subgroupExclusiveOr ( global 3-component vector of int)
0:366          vector swizzle ( temp 3-component vector of int)
0:366            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:366              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:366                Constant:
0:366                  2 (const int)
0:366              Constant:
0:366                1 (const int)
0:366            Sequence
0:366              Constant:
0:366                0 (const int)
0:366              Constant:
0:366                1 (const int)
0:366              Constant:
0:366                2 (const int)
0:367      move second child to first child ( temp 4-component vector of int)
0:367        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:367          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367            'invocation' ( temp uint)
0:367          Constant:
0:367            1 (const int)
0:367        subgroupExclusiveOr ( global 4-component vector of int)
0:367          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:367            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:367              Constant:
0:367                3 (const int)
0:367            Constant:
0:367              1 (const int)
0:369      move second child to first child ( temp uint)
0:369        direct index ( temp uint)
0:369          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:369            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369              'invocation' ( temp uint)
0:369            Constant:
0:369              2 (const int)
0:369          Constant:
0:369            0 (const int)
0:369        subgroupExclusiveOr ( global uint)
0:369          direct index ( temp uint)
0:369            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:369              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:369                Constant:
0:369                  0 (const int)
0:369              Constant:
0:369                2 (const int)
0:369            Constant:
0:369              0 (const int)
0:370      move second child to first child ( temp 2-component vector of uint)
0:370        vector swizzle ( temp 2-component vector of uint)
0:370          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:370            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370              'invocation' ( temp uint)
0:370            Constant:
0:370              2 (const int)
0:370          Sequence
0:370            Constant:
0:370              0 (const int)
0:370            Constant:
0:370              1 (const int)
0:370        subgroupExclusiveOr ( global 2-component vector of uint)
0:370          vector swizzle ( temp 2-component vector of uint)
0:370            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:370              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:370                Constant:
0:370                  1 (const int)
0:370              Constant:
0:370                2 (const int)
0:370            Sequence
0:370              Constant:
0:370                0 (const int)
0:370              Constant:
0:370                1 (const int)
0:371      move second child to first child ( temp 3-component vector of uint)
0:371        vector swizzle ( temp 3-component vector of uint)
0:371          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:371            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371              'invocation' ( temp uint)
0:371            Constant:
0:371              2 (const int)
0:371          Sequence
0:371            Constant:
0:371              0 (const int)
0:371            Constant:
0:371              1 (const int)
0:371            Constant:
0:371              2 (const int)
0:371        subgroupExclusiveOr ( global 3-component vector of uint)
0:371          vector swizzle ( temp 3-component vector of uint)
0:371            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:371              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:371                Constant:
0:371                  2 (const int)
0:371              Constant:
0:371                2 (const int)
0:371            Sequence
0:371              Constant:
0:371                0 (const int)
0:371              Constant:
0:371                1 (const int)
0:371              Constant:
0:371                2 (const int)
0:372      move second child to first child ( temp 4-component vector of uint)
0:372        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:372          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372            'invocation' ( temp uint)
0:372          Constant:
0:372            2 (const int)
0:372        subgroupExclusiveOr ( global 4-component vector of uint)
0:372          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:372            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:372              Constant:
0:372                3 (const int)
0:372            Constant:
0:372              2 (const int)
0:374      move second child to first child ( temp int)
0:374        direct index ( temp int)
0:374          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:374            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374              'invocation' ( temp uint)
0:374            Constant:
0:374              1 (const int)
0:374          Constant:
0:374            0 (const int)
0:374        Convert bool to int ( temp int)
0:374          subgroupExclusiveOr ( global bool)
0:374            Compare Less Than ( temp bool)
0:374              direct index ( temp int)
0:374                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:374                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:374                    Constant:
0:374                      0 (const int)
0:374                  Constant:
0:374                    1 (const int)
0:374                Constant:
0:374                  0 (const int)
0:374              Constant:
0:374                0 (const int)
0:375      move second child to first child ( temp 2-component vector of int)
0:375        vector swizzle ( temp 2-component vector of int)
0:375          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:375            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375              'invocation' ( temp uint)
0:375            Constant:
0:375              1 (const int)
0:375          Sequence
0:375            Constant:
0:375              0 (const int)
0:375            Constant:
0:375              1 (const int)
0:375        Convert bool to int ( temp 2-component vector of int)
0:375          subgroupExclusiveOr ( global 2-component vector of bool)
0:375            Compare Less Than ( global 2-component vector of bool)
0:375              vector swizzle ( temp 2-component vector of int)
0:375                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:375                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:375                    Constant:
0:375                      1 (const int)
0:375                  Constant:
0:375                    1 (const int)
0:375                Sequence
0:375                  Constant:
0:375                    0 (const int)
0:375                  Constant:
0:375                    1 (const int)
0:375              Constant:
0:375                0 (const int)
0:375                0 (const int)
0:376      move second child to first child ( temp 3-component vector of int)
0:376        vector swizzle ( temp 3-component vector of int)
0:376          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:376            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376              'invocation' ( temp uint)
0:376            Constant:
0:376              1 (const int)
0:376          Sequence
0:376            Constant:
0:376              0 (const int)
0:376            Constant:
0:376              1 (const int)
0:376            Constant:
0:376              2 (const int)
0:376        Convert bool to int ( temp 3-component vector of int)
0:376          subgroupExclusiveOr ( global 3-component vector of bool)
0:376            Compare Less Than ( global 3-component vector of bool)
0:376              vector swizzle ( temp 3-component vector of int)
0:376                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:376                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:376                    Constant:
0:376                      1 (const int)
0:376                  Constant:
0:376                    1 (const int)
0:376                Sequence
0:376                  Constant:
0:376                    0 (const int)
0:376                  Constant:
0:376                    1 (const int)
0:376                  Constant:
0:376                    2 (const int)
0:376              Constant:
0:376                0 (const int)
0:376                0 (const int)
0:376                0 (const int)
0:377      move second child to first child ( temp 4-component vector of int)
0:377        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:377          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377            'invocation' ( temp uint)
0:377          Constant:
0:377            1 (const int)
0:377        Convert bool to int ( temp 4-component vector of int)
0:377          subgroupExclusiveOr ( global 4-component vector of bool)
0:377            Compare Less Than ( global 4-component vector of bool)
0:377              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:377                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:377                  Constant:
0:377                    1 (const int)
0:377                Constant:
0:377                  1 (const int)
0:377              Constant:
0:377                0 (const int)
0:377                0 (const int)
0:377                0 (const int)
0:377                0 (const int)
0:379      move second child to first child ( temp int)
0:379        direct index ( temp int)
0:379          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:379            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379              'invocation' ( temp uint)
0:379            Constant:
0:379              1 (const int)
0:379          Constant:
0:379            0 (const int)
0:379        subgroupExclusiveXor ( global int)
0:379          direct index ( temp int)
0:379            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:379              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:379                Constant:
0:379                  0 (const int)
0:379              Constant:
0:379                1 (const int)
0:379            Constant:
0:379              0 (const int)
0:380      move second child to first child ( temp 2-component vector of int)
0:380        vector swizzle ( temp 2-component vector of int)
0:380          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:380            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380              'invocation' ( temp uint)
0:380            Constant:
0:380              1 (const int)
0:380          Sequence
0:380            Constant:
0:380              0 (const int)
0:380            Constant:
0:380              1 (const int)
0:380        subgroupExclusiveXor ( global 2-component vector of int)
0:380          vector swizzle ( temp 2-component vector of int)
0:380            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:380              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:380                Constant:
0:380                  1 (const int)
0:380              Constant:
0:380                1 (const int)
0:380            Sequence
0:380              Constant:
0:380                0 (const int)
0:380              Constant:
0:380                1 (const int)
0:381      move second child to first child ( temp 3-component vector of int)
0:381        vector swizzle ( temp 3-component vector of int)
0:381          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:381            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381              'invocation' ( temp uint)
0:381            Constant:
0:381              1 (const int)
0:381          Sequence
0:381            Constant:
0:381              0 (const int)
0:381            Constant:
0:381              1 (const int)
0:381            Constant:
0:381              2 (const int)
0:381        subgroupExclusiveXor ( global 3-component vector of int)
0:381          vector swizzle ( temp 3-component vector of int)
0:381            i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:381              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:381                Constant:
0:381                  2 (const int)
0:381              Constant:
0:381                1 (const int)
0:381            Sequence
0:381              Constant:
0:381                0 (const int)
0:381              Constant:
0:381                1 (const int)
0:381              Constant:
0:381                2 (const int)
0:382      move second child to first child ( temp 4-component vector of int)
0:382        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:382          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382            'invocation' ( temp uint)
0:382          Constant:
0:382            1 (const int)
0:382        subgroupExclusiveXor ( global 4-component vector of int)
0:382          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:382            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:382              Constant:
0:382                3 (const int)
0:382            Constant:
0:382              1 (const int)
0:384      move second child to first child ( temp uint)
0:384        direct index ( temp uint)
0:384          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:384            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384              'invocation' ( temp uint)
0:384            Constant:
0:384              2 (const int)
0:384          Constant:
0:384            0 (const int)
0:384        subgroupExclusiveXor ( global uint)
0:384          direct index ( temp uint)
0:384            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:384              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:384                Constant:
0:384                  0 (const int)
0:384              Constant:
0:384                2 (const int)
0:384            Constant:
0:384              0 (const int)
0:385      move second child to first child ( temp 2-component vector of uint)
0:385        vector swizzle ( temp 2-component vector of uint)
0:385          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:385            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385              'invocation' ( temp uint)
0:385            Constant:
0:385              2 (const int)
0:385          Sequence
0:385            Constant:
0:385              0 (const int)
0:385            Constant:
0:385              1 (const int)
0:385        subgroupExclusiveXor ( global 2-component vector of uint)
0:385          vector swizzle ( temp 2-component vector of uint)
0:385            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:385              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:385                Constant:
0:385                  1 (const int)
0:385              Constant:
0:385                2 (const int)
0:385            Sequence
0:385              Constant:
0:385                0 (const int)
0:385              Constant:
0:385                1 (const int)
0:386      move second child to first child ( temp 3-component vector of uint)
0:386        vector swizzle ( temp 3-component vector of uint)
0:386          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:386            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386              'invocation' ( temp uint)
0:386            Constant:
0:386              2 (const int)
0:386          Sequence
0:386            Constant:
0:386              0 (const int)
0:386            Constant:
0:386              1 (const int)
0:386            Constant:
0:386              2 (const int)
0:386        subgroupExclusiveXor ( global 3-component vector of uint)
0:386          vector swizzle ( temp 3-component vector of uint)
0:386            u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:386              direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386                'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:386                Constant:
0:386                  2 (const int)
0:386              Constant:
0:386                2 (const int)
0:386            Sequence
0:386              Constant:
0:386                0 (const int)
0:386              Constant:
0:386                1 (const int)
0:386              Constant:
0:386                2 (const int)
0:387      move second child to first child ( temp 4-component vector of uint)
0:387        u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:387          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387            'invocation' ( temp uint)
0:387          Constant:
0:387            2 (const int)
0:387        subgroupExclusiveXor ( global 4-component vector of uint)
0:387          u4: direct index for structure (layout( column_major shared) buffer 4-component vector of uint)
0:387            direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:387              Constant:
0:387                3 (const int)
0:387            Constant:
0:387              2 (const int)
0:389      move second child to first child ( temp int)
0:389        direct index ( temp int)
0:389          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:389            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389              'invocation' ( temp uint)
0:389            Constant:
0:389              1 (const int)
0:389          Constant:
0:389            0 (const int)
0:389        Convert bool to int ( temp int)
0:389          subgroupExclusiveXor ( global bool)
0:389            Compare Less Than ( temp bool)
0:389              direct index ( temp int)
0:389                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:389                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:389                    Constant:
0:389                      0 (const int)
0:389                  Constant:
0:389                    1 (const int)
0:389                Constant:
0:389                  0 (const int)
0:389              Constant:
0:389                0 (const int)
0:390      move second child to first child ( temp 2-component vector of int)
0:390        vector swizzle ( temp 2-component vector of int)
0:390          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:390            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390              'invocation' ( temp uint)
0:390            Constant:
0:390              1 (const int)
0:390          Sequence
0:390            Constant:
0:390              0 (const int)
0:390            Constant:
0:390              1 (const int)
0:390        Convert bool to int ( temp 2-component vector of int)
0:390          subgroupExclusiveXor ( global 2-component vector of bool)
0:390            Compare Less Than ( global 2-component vector of bool)
0:390              vector swizzle ( temp 2-component vector of int)
0:390                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:390                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:390                    Constant:
0:390                      1 (const int)
0:390                  Constant:
0:390                    1 (const int)
0:390                Sequence
0:390                  Constant:
0:390                    0 (const int)
0:390                  Constant:
0:390                    1 (const int)
0:390              Constant:
0:390                0 (const int)
0:390                0 (const int)
0:391      move second child to first child ( temp 3-component vector of int)
0:391        vector swizzle ( temp 3-component vector of int)
0:391          i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:391            indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391              'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391              'invocation' ( temp uint)
0:391            Constant:
0:391              1 (const int)
0:391          Sequence
0:391            Constant:
0:391              0 (const int)
0:391            Constant:
0:391              1 (const int)
0:391            Constant:
0:391              2 (const int)
0:391        Convert bool to int ( temp 3-component vector of int)
0:391          subgroupExclusiveXor ( global 3-component vector of bool)
0:391            Compare Less Than ( global 3-component vector of bool)
0:391              vector swizzle ( temp 3-component vector of int)
0:391                i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:391                  direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391                    'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:391                    Constant:
0:391                      1 (const int)
0:391                  Constant:
0:391                    1 (const int)
0:391                Sequence
0:391                  Constant:
0:391                    0 (const int)
0:391                  Constant:
0:391                    1 (const int)
0:391                  Constant:
0:391                    2 (const int)
0:391              Constant:
0:391                0 (const int)
0:391                0 (const int)
0:391                0 (const int)
0:392      move second child to first child ( temp 4-component vector of int)
0:392        i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:392          indirect index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392            'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392            'invocation' ( temp uint)
0:392          Constant:
0:392            1 (const int)
0:392        Convert bool to int ( temp 4-component vector of int)
0:392          subgroupExclusiveXor ( global 4-component vector of bool)
0:392            Compare Less Than ( global 4-component vector of bool)
0:392              i4: direct index for structure (layout( column_major shared) buffer 4-component vector of int)
0:392                direct index (layout( binding=0 column_major shared) temp block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392                  'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})
0:392                  Constant:
0:392                    1 (const int)
0:392                Constant:
0:392                  1 (const int)
0:392              Constant:
0:392                0 (const int)
0:392                0 (const int)
0:392                0 (const int)
0:392                0 (const int)
0:?   Linker Objects
0:?     'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
0:?       8 (const uint)
0:?       1 (const uint)
0:?       1 (const uint)
0:?     'data' (layout( binding=0 column_major shared) buffer 4-element array of block{layout( column_major shared) buffer 4-component vector of float f4, layout( column_major shared) buffer 4-component vector of int i4, layout( column_major shared) buffer 4-component vector of uint u4, layout( column_major shared) buffer 4-component vector of double d4})

