hlsl.rw.bracket.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:42  Function Definition: Fn1(vi4; (temp 4-component vector of int)
0:42    Function Parameters: 
0:42      'x' (in 4-component vector of int)
0:?     Sequence
0:42      Branch: Return with expression
0:42        'x' (in 4-component vector of int)
0:43  Function Definition: Fn1(vu4; (temp 4-component vector of uint)
0:43    Function Parameters: 
0:43      'x' (in 4-component vector of uint)
0:?     Sequence
0:43      Branch: Return with expression
0:43        'x' (in 4-component vector of uint)
0:44  Function Definition: Fn1(vf4; (temp 4-component vector of float)
0:44    Function Parameters: 
0:44      'x' (in 4-component vector of float)
0:?     Sequence
0:44      Branch: Return with expression
0:44        'x' (in 4-component vector of float)
0:46  Function Definition: Fn2(vi4; (temp void)
0:46    Function Parameters: 
0:46      'x' (out 4-component vector of int)
0:?     Sequence
0:46      move second child to first child (temp 4-component vector of int)
0:46        'x' (out 4-component vector of int)
0:46        Constant:
0:46          0 (const int)
0:46          0 (const int)
0:46          0 (const int)
0:46          0 (const int)
0:47  Function Definition: Fn2(vu4; (temp void)
0:47    Function Parameters: 
0:47      'x' (out 4-component vector of uint)
0:?     Sequence
0:47      move second child to first child (temp 4-component vector of uint)
0:47        'x' (out 4-component vector of uint)
0:47        Constant:
0:47          0 (const uint)
0:47          0 (const uint)
0:47          0 (const uint)
0:47          0 (const uint)
0:48  Function Definition: Fn2(vf4; (temp void)
0:48    Function Parameters: 
0:48      'x' (out 4-component vector of float)
0:?     Sequence
0:48      move second child to first child (temp 4-component vector of float)
0:48        'x' (out 4-component vector of float)
0:48        Constant:
0:48          0.000000
0:48          0.000000
0:48          0.000000
0:48          0.000000
0:50  Function Definition: SomeValue( (temp 4-component vector of float)
0:50    Function Parameters: 
0:?     Sequence
0:50      Branch: Return with expression
0:50        Convert int to float (temp 4-component vector of float)
0:50          c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
0:50            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:50            Constant:
0:50              3 (const uint)
0:53  Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:53    Function Parameters: 
0:?     Sequence
0:57      imageLoad (temp 4-component vector of float)
0:57        'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:57        c1: direct index for structure (layout(offset=0 ) uniform int)
0:57          'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:57          Constant:
0:57            0 (const uint)
0:59      Sequence
0:59        move second child to first child (temp 4-component vector of float)
0:59          'r00' (temp 4-component vector of float)
0:59          imageLoad (temp 4-component vector of float)
0:59            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:59            c1: direct index for structure (layout(offset=0 ) uniform int)
0:59              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:59              Constant:
0:59                0 (const uint)
0:60      Sequence
0:60        move second child to first child (temp 4-component vector of int)
0:60          'r01' (temp 4-component vector of int)
0:60          imageLoad (temp 4-component vector of int)
0:60            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:60            c1: direct index for structure (layout(offset=0 ) uniform int)
0:60              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:60              Constant:
0:60                0 (const uint)
0:61      Sequence
0:61        move second child to first child (temp 4-component vector of uint)
0:61          'r02' (temp 4-component vector of uint)
0:61          imageLoad (temp 4-component vector of uint)
0:61            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:61            c1: direct index for structure (layout(offset=0 ) uniform int)
0:61              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:61              Constant:
0:61                0 (const uint)
0:64      Sequence
0:64        move second child to first child (temp 4-component vector of float)
0:64          'r10' (temp 4-component vector of float)
0:64          imageLoad (temp 4-component vector of float)
0:64            'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:64            c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:64              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:64              Constant:
0:64                1 (const uint)
0:65      Sequence
0:65        move second child to first child (temp 4-component vector of int)
0:65          'r11' (temp 4-component vector of int)
0:65          imageLoad (temp 4-component vector of int)
0:65            'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:65            c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:65              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:65              Constant:
0:65                1 (const uint)
0:66      Sequence
0:66        move second child to first child (temp 4-component vector of uint)
0:66          'r12' (temp 4-component vector of uint)
0:66          imageLoad (temp 4-component vector of uint)
0:66            'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:66            c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:66              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:66              Constant:
0:66                1 (const uint)
0:69      Sequence
0:69        move second child to first child (temp 4-component vector of float)
0:69          'r20' (temp 4-component vector of float)
0:69          imageLoad (temp 4-component vector of float)
0:69            'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:69            c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:69              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:69              Constant:
0:69                2 (const uint)
0:70      Sequence
0:70        move second child to first child (temp 4-component vector of int)
0:70          'r21' (temp 4-component vector of int)
0:70          imageLoad (temp 4-component vector of int)
0:70            'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:70            c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:70              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:70              Constant:
0:70                2 (const uint)
0:71      Sequence
0:71        move second child to first child (temp 4-component vector of uint)
0:71          'r22' (temp 4-component vector of uint)
0:71          imageLoad (temp 4-component vector of uint)
0:71            'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:71            c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:71              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:71              Constant:
0:71                2 (const uint)
0:73      Sequence
0:73        move second child to first child (temp 4-component vector of float)
0:73          'lf4' (temp 4-component vector of float)
0:73          uf4: direct index for structure (layout(offset=96 ) uniform 4-component vector of float)
0:73            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:73            Constant:
0:73              8 (const uint)
0:77      Sequence
0:77        move second child to first child (temp 4-component vector of float)
0:77          'storeTemp' (temp 4-component vector of float)
0:77          Function Call: SomeValue( (temp 4-component vector of float)
0:77        imageStore (temp void)
0:77          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:77          c1: direct index for structure (layout(offset=0 ) uniform int)
0:77            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:77            Constant:
0:77              0 (const uint)
0:77          'storeTemp' (temp 4-component vector of float)
0:77        'storeTemp' (temp 4-component vector of float)
0:78      Sequence
0:78        imageStore (temp void)
0:78          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:78          c1: direct index for structure (layout(offset=0 ) uniform int)
0:78            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:78            Constant:
0:78              0 (const uint)
0:78          'lf4' (temp 4-component vector of float)
0:78        'lf4' (temp 4-component vector of float)
0:79      Sequence
0:79        move second child to first child (temp 4-component vector of int)
0:79          'storeTemp' (temp 4-component vector of int)
0:?           Constant:
0:?             2 (const int)
0:?             2 (const int)
0:?             3 (const int)
0:?             4 (const int)
0:79        imageStore (temp void)
0:79          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:79          c1: direct index for structure (layout(offset=0 ) uniform int)
0:79            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:79            Constant:
0:79              0 (const uint)
0:79          'storeTemp' (temp 4-component vector of int)
0:79        'storeTemp' (temp 4-component vector of int)
0:80      Sequence
0:80        move second child to first child (temp 4-component vector of uint)
0:80          'storeTemp' (temp 4-component vector of uint)
0:?           Constant:
0:?             3 (const uint)
0:?             2 (const uint)
0:?             3 (const uint)
0:?             4 (const uint)
0:80        imageStore (temp void)
0:80          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:80          c1: direct index for structure (layout(offset=0 ) uniform int)
0:80            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:80            Constant:
0:80              0 (const uint)
0:80          'storeTemp' (temp 4-component vector of uint)
0:80        'storeTemp' (temp 4-component vector of uint)
0:83      Sequence
0:83        move second child to first child (temp 4-component vector of float)
0:83          'val1' (temp 4-component vector of float)
0:83          Sequence
0:83            move second child to first child (temp int)
0:83              'coordTemp' (temp int)
0:83              c1: direct index for structure (layout(offset=0 ) uniform int)
0:83                'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:83                Constant:
0:83                  0 (const uint)
0:83            move second child to first child (temp 4-component vector of float)
0:83              'storeTemp' (temp 4-component vector of float)
0:83              imageLoad (temp 4-component vector of float)
0:83                'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:83                'coordTemp' (temp int)
0:83            vector scale second child into first child (temp 4-component vector of float)
0:83              'storeTemp' (temp 4-component vector of float)
0:83              Constant:
0:83                2.000000
0:83            imageStore (temp void)
0:83              'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:83              'coordTemp' (temp int)
0:83              'storeTemp' (temp 4-component vector of float)
0:83            'storeTemp' (temp 4-component vector of float)
0:84      Sequence
0:84        move second child to first child (temp int)
0:84          'coordTemp' (temp int)
0:84          c1: direct index for structure (layout(offset=0 ) uniform int)
0:84            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:84            Constant:
0:84              0 (const uint)
0:84        move second child to first child (temp 4-component vector of float)
0:84          'storeTemp' (temp 4-component vector of float)
0:84          imageLoad (temp 4-component vector of float)
0:84            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:84            'coordTemp' (temp int)
0:84        subtract second child into first child (temp 4-component vector of float)
0:84          'storeTemp' (temp 4-component vector of float)
0:84          Constant:
0:84            3.000000
0:84        imageStore (temp void)
0:84          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:84          'coordTemp' (temp int)
0:84          'storeTemp' (temp 4-component vector of float)
0:84        'storeTemp' (temp 4-component vector of float)
0:85      Sequence
0:85        move second child to first child (temp int)
0:85          'coordTemp' (temp int)
0:85          c1: direct index for structure (layout(offset=0 ) uniform int)
0:85            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:85            Constant:
0:85              0 (const uint)
0:85        move second child to first child (temp 4-component vector of float)
0:85          'storeTemp' (temp 4-component vector of float)
0:85          imageLoad (temp 4-component vector of float)
0:85            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:85            'coordTemp' (temp int)
0:85        add second child into first child (temp 4-component vector of float)
0:85          'storeTemp' (temp 4-component vector of float)
0:85          Constant:
0:85            4.000000
0:85        imageStore (temp void)
0:85          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:85          'coordTemp' (temp int)
0:85          'storeTemp' (temp 4-component vector of float)
0:85        'storeTemp' (temp 4-component vector of float)
0:87      Sequence
0:87        move second child to first child (temp int)
0:87          'coordTemp' (temp int)
0:87          c1: direct index for structure (layout(offset=0 ) uniform int)
0:87            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:87            Constant:
0:87              0 (const uint)
0:87        move second child to first child (temp 4-component vector of int)
0:87          'storeTemp' (temp 4-component vector of int)
0:87          imageLoad (temp 4-component vector of int)
0:87            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:87            'coordTemp' (temp int)
0:87        divide second child into first child (temp 4-component vector of int)
0:87          'storeTemp' (temp 4-component vector of int)
0:87          Constant:
0:87            2 (const int)
0:87        imageStore (temp void)
0:87          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:87          'coordTemp' (temp int)
0:87          'storeTemp' (temp 4-component vector of int)
0:87        'storeTemp' (temp 4-component vector of int)
0:88      Sequence
0:88        move second child to first child (temp int)
0:88          'coordTemp' (temp int)
0:88          c1: direct index for structure (layout(offset=0 ) uniform int)
0:88            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:88            Constant:
0:88              0 (const uint)
0:88        move second child to first child (temp 4-component vector of int)
0:88          'storeTemp' (temp 4-component vector of int)
0:88          imageLoad (temp 4-component vector of int)
0:88            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:88            'coordTemp' (temp int)
0:88        mod second child into first child (temp 4-component vector of int)
0:88          'storeTemp' (temp 4-component vector of int)
0:88          Constant:
0:88            2 (const int)
0:88        imageStore (temp void)
0:88          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:88          'coordTemp' (temp int)
0:88          'storeTemp' (temp 4-component vector of int)
0:88        'storeTemp' (temp 4-component vector of int)
0:89      Sequence
0:89        move second child to first child (temp int)
0:89          'coordTemp' (temp int)
0:89          c1: direct index for structure (layout(offset=0 ) uniform int)
0:89            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:89            Constant:
0:89              0 (const uint)
0:89        move second child to first child (temp 4-component vector of int)
0:89          'storeTemp' (temp 4-component vector of int)
0:89          imageLoad (temp 4-component vector of int)
0:89            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:89            'coordTemp' (temp int)
0:89        and second child into first child (temp 4-component vector of int)
0:89          'storeTemp' (temp 4-component vector of int)
0:89          Constant:
0:89            65535 (const int)
0:89        imageStore (temp void)
0:89          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:89          'coordTemp' (temp int)
0:89          'storeTemp' (temp 4-component vector of int)
0:89        'storeTemp' (temp 4-component vector of int)
0:90      Sequence
0:90        move second child to first child (temp int)
0:90          'coordTemp' (temp int)
0:90          c1: direct index for structure (layout(offset=0 ) uniform int)
0:90            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:90            Constant:
0:90              0 (const uint)
0:90        move second child to first child (temp 4-component vector of int)
0:90          'storeTemp' (temp 4-component vector of int)
0:90          imageLoad (temp 4-component vector of int)
0:90            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:90            'coordTemp' (temp int)
0:90        or second child into first child (temp 4-component vector of int)
0:90          'storeTemp' (temp 4-component vector of int)
0:90          Constant:
0:90            61680 (const int)
0:90        imageStore (temp void)
0:90          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:90          'coordTemp' (temp int)
0:90          'storeTemp' (temp 4-component vector of int)
0:90        'storeTemp' (temp 4-component vector of int)
0:91      Sequence
0:91        move second child to first child (temp int)
0:91          'coordTemp' (temp int)
0:91          c1: direct index for structure (layout(offset=0 ) uniform int)
0:91            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:91            Constant:
0:91              0 (const uint)
0:91        move second child to first child (temp 4-component vector of int)
0:91          'storeTemp' (temp 4-component vector of int)
0:91          imageLoad (temp 4-component vector of int)
0:91            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:91            'coordTemp' (temp int)
0:91        left shift second child into first child (temp 4-component vector of int)
0:91          'storeTemp' (temp 4-component vector of int)
0:91          Constant:
0:91            2 (const int)
0:91        imageStore (temp void)
0:91          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:91          'coordTemp' (temp int)
0:91          'storeTemp' (temp 4-component vector of int)
0:91        'storeTemp' (temp 4-component vector of int)
0:92      Sequence
0:92        move second child to first child (temp int)
0:92          'coordTemp' (temp int)
0:92          c1: direct index for structure (layout(offset=0 ) uniform int)
0:92            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:92            Constant:
0:92              0 (const uint)
0:92        move second child to first child (temp 4-component vector of int)
0:92          'storeTemp' (temp 4-component vector of int)
0:92          imageLoad (temp 4-component vector of int)
0:92            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:92            'coordTemp' (temp int)
0:92        right shift second child into first child (temp 4-component vector of int)
0:92          'storeTemp' (temp 4-component vector of int)
0:92          Constant:
0:92            2 (const int)
0:92        imageStore (temp void)
0:92          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:92          'coordTemp' (temp int)
0:92          'storeTemp' (temp 4-component vector of int)
0:92        'storeTemp' (temp 4-component vector of int)
0:95      Sequence
0:95        move second child to first child (temp 4-component vector of float)
0:95          'storeTemp' (temp 4-component vector of float)
0:95          Function Call: SomeValue( (temp 4-component vector of float)
0:95        imageStore (temp void)
0:95          'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:95          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:95            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:95            Constant:
0:95              1 (const uint)
0:95          'storeTemp' (temp 4-component vector of float)
0:95        'storeTemp' (temp 4-component vector of float)
0:96      Sequence
0:96        imageStore (temp void)
0:96          'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:96          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:96            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:96            Constant:
0:96              1 (const uint)
0:96          'lf4' (temp 4-component vector of float)
0:96        'lf4' (temp 4-component vector of float)
0:97      Sequence
0:97        move second child to first child (temp 4-component vector of int)
0:97          'storeTemp' (temp 4-component vector of int)
0:?           Constant:
0:?             5 (const int)
0:?             2 (const int)
0:?             3 (const int)
0:?             4 (const int)
0:97        imageStore (temp void)
0:97          'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:97          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:97            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:97            Constant:
0:97              1 (const uint)
0:97          'storeTemp' (temp 4-component vector of int)
0:97        'storeTemp' (temp 4-component vector of int)
0:98      Sequence
0:98        move second child to first child (temp 4-component vector of uint)
0:98          'storeTemp' (temp 4-component vector of uint)
0:?           Constant:
0:?             6 (const uint)
0:?             2 (const uint)
0:?             3 (const uint)
0:?             4 (const uint)
0:98        imageStore (temp void)
0:98          'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:98          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:98            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:98            Constant:
0:98              1 (const uint)
0:98          'storeTemp' (temp 4-component vector of uint)
0:98        'storeTemp' (temp 4-component vector of uint)
0:101      Sequence
0:101        move second child to first child (temp 4-component vector of float)
0:101          'storeTemp' (temp 4-component vector of float)
0:101          Function Call: SomeValue( (temp 4-component vector of float)
0:101        imageStore (temp void)
0:101          'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:101          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:101            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:101            Constant:
0:101              2 (const uint)
0:101          'storeTemp' (temp 4-component vector of float)
0:101        'storeTemp' (temp 4-component vector of float)
0:102      Sequence
0:102        imageStore (temp void)
0:102          'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:102          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:102            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:102            Constant:
0:102              2 (const uint)
0:102          'lf4' (temp 4-component vector of float)
0:102        'lf4' (temp 4-component vector of float)
0:103      Sequence
0:103        move second child to first child (temp 4-component vector of int)
0:103          'storeTemp' (temp 4-component vector of int)
0:?           Constant:
0:?             8 (const int)
0:?             6 (const int)
0:?             7 (const int)
0:?             8 (const int)
0:103        imageStore (temp void)
0:103          'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:103          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:103            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:103            Constant:
0:103              2 (const uint)
0:103          'storeTemp' (temp 4-component vector of int)
0:103        'storeTemp' (temp 4-component vector of int)
0:104      Sequence
0:104        move second child to first child (temp 4-component vector of uint)
0:104          'storeTemp' (temp 4-component vector of uint)
0:?           Constant:
0:?             9 (const uint)
0:?             2 (const uint)
0:?             3 (const uint)
0:?             4 (const uint)
0:104        imageStore (temp void)
0:104          'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:104          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:104            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:104            Constant:
0:104              2 (const uint)
0:104          'storeTemp' (temp 4-component vector of uint)
0:104        'storeTemp' (temp 4-component vector of uint)
0:107      Function Call: Fn1(vf4; (temp 4-component vector of float)
0:107        imageLoad (temp 4-component vector of float)
0:107          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:107          c1: direct index for structure (layout(offset=0 ) uniform int)
0:107            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:107            Constant:
0:107              0 (const uint)
0:108      Function Call: Fn1(vi4; (temp 4-component vector of int)
0:108        imageLoad (temp 4-component vector of int)
0:108          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:108          c1: direct index for structure (layout(offset=0 ) uniform int)
0:108            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:108            Constant:
0:108              0 (const uint)
0:109      Function Call: Fn1(vu4; (temp 4-component vector of uint)
0:109        imageLoad (temp 4-component vector of uint)
0:109          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:109          c1: direct index for structure (layout(offset=0 ) uniform int)
0:109            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:109            Constant:
0:109              0 (const uint)
0:111      Comma (temp void)
0:111        Function Call: Fn2(vf4; (temp void)
0:111          'tempArg' (temp 4-component vector of float)
0:111        Sequence
0:111          imageStore (temp void)
0:111            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:111            c1: direct index for structure (layout(offset=0 ) uniform int)
0:111              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:111              Constant:
0:111                0 (const uint)
0:111            'tempArg' (temp 4-component vector of float)
0:111          'tempArg' (temp 4-component vector of float)
0:112      Comma (temp void)
0:112        Function Call: Fn2(vi4; (temp void)
0:112          'tempArg' (temp 4-component vector of int)
0:112        Sequence
0:112          imageStore (temp void)
0:112            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:112            c1: direct index for structure (layout(offset=0 ) uniform int)
0:112              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:112              Constant:
0:112                0 (const uint)
0:112            'tempArg' (temp 4-component vector of int)
0:112          'tempArg' (temp 4-component vector of int)
0:113      Comma (temp void)
0:113        Function Call: Fn2(vu4; (temp void)
0:113          'tempArg' (temp 4-component vector of uint)
0:113        Sequence
0:113          imageStore (temp void)
0:113            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:113            c1: direct index for structure (layout(offset=0 ) uniform int)
0:113              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:113              Constant:
0:113                0 (const uint)
0:113            'tempArg' (temp 4-component vector of uint)
0:113          'tempArg' (temp 4-component vector of uint)
0:117      Sequence
0:117        move second child to first child (temp int)
0:117          'coordTemp' (temp int)
0:117          c1: direct index for structure (layout(offset=0 ) uniform int)
0:117            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:117            Constant:
0:117              0 (const uint)
0:117        move second child to first child (temp 4-component vector of float)
0:117          'storeTemp' (temp 4-component vector of float)
0:117          imageLoad (temp 4-component vector of float)
0:117            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:117            'coordTemp' (temp int)
0:117        Pre-Increment (temp 4-component vector of float)
0:117          'storeTemp' (temp 4-component vector of float)
0:117        imageStore (temp void)
0:117          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:117          'coordTemp' (temp int)
0:117          'storeTemp' (temp 4-component vector of float)
0:117        'storeTemp' (temp 4-component vector of float)
0:118      Sequence
0:118        move second child to first child (temp int)
0:118          'coordTemp' (temp int)
0:118          c1: direct index for structure (layout(offset=0 ) uniform int)
0:118            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:118            Constant:
0:118              0 (const uint)
0:118        move second child to first child (temp 4-component vector of int)
0:118          'storeTemp' (temp 4-component vector of int)
0:118          imageLoad (temp 4-component vector of int)
0:118            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:118            'coordTemp' (temp int)
0:118        Pre-Increment (temp 4-component vector of int)
0:118          'storeTemp' (temp 4-component vector of int)
0:118        imageStore (temp void)
0:118          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:118          'coordTemp' (temp int)
0:118          'storeTemp' (temp 4-component vector of int)
0:118        'storeTemp' (temp 4-component vector of int)
0:119      Sequence
0:119        move second child to first child (temp int)
0:119          'coordTemp' (temp int)
0:119          c1: direct index for structure (layout(offset=0 ) uniform int)
0:119            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:119            Constant:
0:119              0 (const uint)
0:119        move second child to first child (temp 4-component vector of uint)
0:119          'storeTemp' (temp 4-component vector of uint)
0:119          imageLoad (temp 4-component vector of uint)
0:119            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:119            'coordTemp' (temp int)
0:119        Pre-Increment (temp 4-component vector of uint)
0:119          'storeTemp' (temp 4-component vector of uint)
0:119        imageStore (temp void)
0:119          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:119          'coordTemp' (temp int)
0:119          'storeTemp' (temp 4-component vector of uint)
0:119        'storeTemp' (temp 4-component vector of uint)
0:121      Sequence
0:121        move second child to first child (temp int)
0:121          'coordTemp' (temp int)
0:121          c1: direct index for structure (layout(offset=0 ) uniform int)
0:121            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:121            Constant:
0:121              0 (const uint)
0:121        move second child to first child (temp 4-component vector of float)
0:121          'storeTemp' (temp 4-component vector of float)
0:121          imageLoad (temp 4-component vector of float)
0:121            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:121            'coordTemp' (temp int)
0:121        Pre-Decrement (temp 4-component vector of float)
0:121          'storeTemp' (temp 4-component vector of float)
0:121        imageStore (temp void)
0:121          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:121          'coordTemp' (temp int)
0:121          'storeTemp' (temp 4-component vector of float)
0:121        'storeTemp' (temp 4-component vector of float)
0:122      Sequence
0:122        move second child to first child (temp int)
0:122          'coordTemp' (temp int)
0:122          c1: direct index for structure (layout(offset=0 ) uniform int)
0:122            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:122            Constant:
0:122              0 (const uint)
0:122        move second child to first child (temp 4-component vector of int)
0:122          'storeTemp' (temp 4-component vector of int)
0:122          imageLoad (temp 4-component vector of int)
0:122            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:122            'coordTemp' (temp int)
0:122        Pre-Decrement (temp 4-component vector of int)
0:122          'storeTemp' (temp 4-component vector of int)
0:122        imageStore (temp void)
0:122          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:122          'coordTemp' (temp int)
0:122          'storeTemp' (temp 4-component vector of int)
0:122        'storeTemp' (temp 4-component vector of int)
0:123      Sequence
0:123        move second child to first child (temp int)
0:123          'coordTemp' (temp int)
0:123          c1: direct index for structure (layout(offset=0 ) uniform int)
0:123            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:123            Constant:
0:123              0 (const uint)
0:123        move second child to first child (temp 4-component vector of uint)
0:123          'storeTemp' (temp 4-component vector of uint)
0:123          imageLoad (temp 4-component vector of uint)
0:123            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:123            'coordTemp' (temp int)
0:123        Pre-Decrement (temp 4-component vector of uint)
0:123          'storeTemp' (temp 4-component vector of uint)
0:123        imageStore (temp void)
0:123          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:123          'coordTemp' (temp int)
0:123          'storeTemp' (temp 4-component vector of uint)
0:123        'storeTemp' (temp 4-component vector of uint)
0:126      Sequence
0:126        move second child to first child (temp int)
0:126          'coordTemp' (temp int)
0:126          c1: direct index for structure (layout(offset=0 ) uniform int)
0:126            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:126            Constant:
0:126              0 (const uint)
0:126        move second child to first child (temp 4-component vector of float)
0:126          'storeTempPre' (temp 4-component vector of float)
0:126          imageLoad (temp 4-component vector of float)
0:126            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:126            'coordTemp' (temp int)
0:126        move second child to first child (temp 4-component vector of float)
0:126          'storeTempPost' (temp 4-component vector of float)
0:126          'storeTempPre' (temp 4-component vector of float)
0:126        Post-Increment (temp 4-component vector of float)
0:126          'storeTempPost' (temp 4-component vector of float)
0:126        imageStore (temp void)
0:126          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:126          'coordTemp' (temp int)
0:126          'storeTempPost' (temp 4-component vector of float)
0:126        'storeTempPre' (temp 4-component vector of float)
0:127      Sequence
0:127        move second child to first child (temp int)
0:127          'coordTemp' (temp int)
0:127          c1: direct index for structure (layout(offset=0 ) uniform int)
0:127            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:127            Constant:
0:127              0 (const uint)
0:127        move second child to first child (temp 4-component vector of uint)
0:127          'storeTempPre' (temp 4-component vector of uint)
0:127          imageLoad (temp 4-component vector of uint)
0:127            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:127            'coordTemp' (temp int)
0:127        move second child to first child (temp 4-component vector of uint)
0:127          'storeTempPost' (temp 4-component vector of uint)
0:127          'storeTempPre' (temp 4-component vector of uint)
0:127        Post-Decrement (temp 4-component vector of uint)
0:127          'storeTempPost' (temp 4-component vector of uint)
0:127        imageStore (temp void)
0:127          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:127          'coordTemp' (temp int)
0:127          'storeTempPost' (temp 4-component vector of uint)
0:127        'storeTempPre' (temp 4-component vector of uint)
0:128      Sequence
0:128        move second child to first child (temp int)
0:128          'coordTemp' (temp int)
0:128          c1: direct index for structure (layout(offset=0 ) uniform int)
0:128            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:128            Constant:
0:128              0 (const uint)
0:128        move second child to first child (temp 4-component vector of int)
0:128          'storeTempPre' (temp 4-component vector of int)
0:128          imageLoad (temp 4-component vector of int)
0:128            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:128            'coordTemp' (temp int)
0:128        move second child to first child (temp 4-component vector of int)
0:128          'storeTempPost' (temp 4-component vector of int)
0:128          'storeTempPre' (temp 4-component vector of int)
0:128        Post-Increment (temp 4-component vector of int)
0:128          'storeTempPost' (temp 4-component vector of int)
0:128        imageStore (temp void)
0:128          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:128          'coordTemp' (temp int)
0:128          'storeTempPost' (temp 4-component vector of int)
0:128        'storeTempPre' (temp 4-component vector of int)
0:130      Sequence
0:130        move second child to first child (temp int)
0:130          'coordTemp' (temp int)
0:130          c1: direct index for structure (layout(offset=0 ) uniform int)
0:130            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:130            Constant:
0:130              0 (const uint)
0:130        move second child to first child (temp 4-component vector of float)
0:130          'storeTempPre' (temp 4-component vector of float)
0:130          imageLoad (temp 4-component vector of float)
0:130            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:130            'coordTemp' (temp int)
0:130        move second child to first child (temp 4-component vector of float)
0:130          'storeTempPost' (temp 4-component vector of float)
0:130          'storeTempPre' (temp 4-component vector of float)
0:130        Post-Decrement (temp 4-component vector of float)
0:130          'storeTempPost' (temp 4-component vector of float)
0:130        imageStore (temp void)
0:130          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:130          'coordTemp' (temp int)
0:130          'storeTempPost' (temp 4-component vector of float)
0:130        'storeTempPre' (temp 4-component vector of float)
0:131      Sequence
0:131        move second child to first child (temp int)
0:131          'coordTemp' (temp int)
0:131          c1: direct index for structure (layout(offset=0 ) uniform int)
0:131            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:131            Constant:
0:131              0 (const uint)
0:131        move second child to first child (temp 4-component vector of int)
0:131          'storeTempPre' (temp 4-component vector of int)
0:131          imageLoad (temp 4-component vector of int)
0:131            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:131            'coordTemp' (temp int)
0:131        move second child to first child (temp 4-component vector of int)
0:131          'storeTempPost' (temp 4-component vector of int)
0:131          'storeTempPre' (temp 4-component vector of int)
0:131        Post-Increment (temp 4-component vector of int)
0:131          'storeTempPost' (temp 4-component vector of int)
0:131        imageStore (temp void)
0:131          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:131          'coordTemp' (temp int)
0:131          'storeTempPost' (temp 4-component vector of int)
0:131        'storeTempPre' (temp 4-component vector of int)
0:132      Sequence
0:132        move second child to first child (temp int)
0:132          'coordTemp' (temp int)
0:132          c1: direct index for structure (layout(offset=0 ) uniform int)
0:132            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:132            Constant:
0:132              0 (const uint)
0:132        move second child to first child (temp 4-component vector of uint)
0:132          'storeTempPre' (temp 4-component vector of uint)
0:132          imageLoad (temp 4-component vector of uint)
0:132            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:132            'coordTemp' (temp int)
0:132        move second child to first child (temp 4-component vector of uint)
0:132          'storeTempPost' (temp 4-component vector of uint)
0:132          'storeTempPre' (temp 4-component vector of uint)
0:132        Post-Decrement (temp 4-component vector of uint)
0:132          'storeTempPost' (temp 4-component vector of uint)
0:132        imageStore (temp void)
0:132          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:132          'coordTemp' (temp int)
0:132          'storeTempPost' (temp 4-component vector of uint)
0:132        'storeTempPre' (temp 4-component vector of uint)
0:135      Sequence
0:135        move second child to first child (temp 4-component vector of float)
0:135          'storeTemp' (temp 4-component vector of float)
0:?           imageLoad (temp 4-component vector of float)
0:135            'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:?             Constant:
0:?               2 (const int)
0:?               3 (const int)
0:135        imageStore (temp void)
0:135          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:135          Constant:
0:135            1 (const int)
0:135          'storeTemp' (temp 4-component vector of float)
0:135        'storeTemp' (temp 4-component vector of float)
0:137      move second child to first child (temp 4-component vector of float)
0:137        Color: direct index for structure (temp 4-component vector of float)
0:137          'psout' (temp structure{temp 4-component vector of float Color})
0:137          Constant:
0:137            0 (const int)
0:137        Constant:
0:137          1.000000
0:137          1.000000
0:137          1.000000
0:137          1.000000
0:139      Sequence
0:139        Sequence
0:139          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:139            Color: direct index for structure (temp 4-component vector of float)
0:139              'psout' (temp structure{temp 4-component vector of float Color})
0:139              Constant:
0:139                0 (const int)
0:139        Branch: Return
0:?   Linker Objects
0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?     'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:?     'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:?     'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:?     'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:?     'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:?     'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:?     'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:?     'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:?     'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:?     'g_tTex1df4a' (layout(rgba32f ) uniform image1DArray)
0:?     'g_tTex1di4a' (layout(rgba32i ) uniform iimage1DArray)
0:?     'g_tTex1du4a' (layout(rgba32ui ) uniform uimage1DArray)
0:?     'g_tTex2df4a' (layout(rgba32f ) uniform image2DArray)
0:?     'g_tTex2di4a' (layout(rgba32i ) uniform iimage2DArray)
0:?     'g_tTex2du4a' (layout(rgba32ui ) uniform uimage2DArray)
0:?     'anon@0' (uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:?     'Color' (layout(location=0 ) out 4-component vector of float)


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:42  Function Definition: Fn1(vi4; (temp 4-component vector of int)
0:42    Function Parameters: 
0:42      'x' (in 4-component vector of int)
0:?     Sequence
0:42      Branch: Return with expression
0:42        'x' (in 4-component vector of int)
0:43  Function Definition: Fn1(vu4; (temp 4-component vector of uint)
0:43    Function Parameters: 
0:43      'x' (in 4-component vector of uint)
0:?     Sequence
0:43      Branch: Return with expression
0:43        'x' (in 4-component vector of uint)
0:44  Function Definition: Fn1(vf4; (temp 4-component vector of float)
0:44    Function Parameters: 
0:44      'x' (in 4-component vector of float)
0:?     Sequence
0:44      Branch: Return with expression
0:44        'x' (in 4-component vector of float)
0:46  Function Definition: Fn2(vi4; (temp void)
0:46    Function Parameters: 
0:46      'x' (out 4-component vector of int)
0:?     Sequence
0:46      move second child to first child (temp 4-component vector of int)
0:46        'x' (out 4-component vector of int)
0:46        Constant:
0:46          0 (const int)
0:46          0 (const int)
0:46          0 (const int)
0:46          0 (const int)
0:47  Function Definition: Fn2(vu4; (temp void)
0:47    Function Parameters: 
0:47      'x' (out 4-component vector of uint)
0:?     Sequence
0:47      move second child to first child (temp 4-component vector of uint)
0:47        'x' (out 4-component vector of uint)
0:47        Constant:
0:47          0 (const uint)
0:47          0 (const uint)
0:47          0 (const uint)
0:47          0 (const uint)
0:48  Function Definition: Fn2(vf4; (temp void)
0:48    Function Parameters: 
0:48      'x' (out 4-component vector of float)
0:?     Sequence
0:48      move second child to first child (temp 4-component vector of float)
0:48        'x' (out 4-component vector of float)
0:48        Constant:
0:48          0.000000
0:48          0.000000
0:48          0.000000
0:48          0.000000
0:50  Function Definition: SomeValue( (temp 4-component vector of float)
0:50    Function Parameters: 
0:?     Sequence
0:50      Branch: Return with expression
0:50        Convert int to float (temp 4-component vector of float)
0:50          c4: direct index for structure (layout(offset=32 ) uniform 4-component vector of int)
0:50            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:50            Constant:
0:50              3 (const uint)
0:53  Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:53    Function Parameters: 
0:?     Sequence
0:57      imageLoad (temp 4-component vector of float)
0:57        'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:57        c1: direct index for structure (layout(offset=0 ) uniform int)
0:57          'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:57          Constant:
0:57            0 (const uint)
0:59      Sequence
0:59        move second child to first child (temp 4-component vector of float)
0:59          'r00' (temp 4-component vector of float)
0:59          imageLoad (temp 4-component vector of float)
0:59            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:59            c1: direct index for structure (layout(offset=0 ) uniform int)
0:59              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:59              Constant:
0:59                0 (const uint)
0:60      Sequence
0:60        move second child to first child (temp 4-component vector of int)
0:60          'r01' (temp 4-component vector of int)
0:60          imageLoad (temp 4-component vector of int)
0:60            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:60            c1: direct index for structure (layout(offset=0 ) uniform int)
0:60              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:60              Constant:
0:60                0 (const uint)
0:61      Sequence
0:61        move second child to first child (temp 4-component vector of uint)
0:61          'r02' (temp 4-component vector of uint)
0:61          imageLoad (temp 4-component vector of uint)
0:61            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:61            c1: direct index for structure (layout(offset=0 ) uniform int)
0:61              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:61              Constant:
0:61                0 (const uint)
0:64      Sequence
0:64        move second child to first child (temp 4-component vector of float)
0:64          'r10' (temp 4-component vector of float)
0:64          imageLoad (temp 4-component vector of float)
0:64            'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:64            c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:64              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:64              Constant:
0:64                1 (const uint)
0:65      Sequence
0:65        move second child to first child (temp 4-component vector of int)
0:65          'r11' (temp 4-component vector of int)
0:65          imageLoad (temp 4-component vector of int)
0:65            'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:65            c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:65              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:65              Constant:
0:65                1 (const uint)
0:66      Sequence
0:66        move second child to first child (temp 4-component vector of uint)
0:66          'r12' (temp 4-component vector of uint)
0:66          imageLoad (temp 4-component vector of uint)
0:66            'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:66            c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:66              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:66              Constant:
0:66                1 (const uint)
0:69      Sequence
0:69        move second child to first child (temp 4-component vector of float)
0:69          'r20' (temp 4-component vector of float)
0:69          imageLoad (temp 4-component vector of float)
0:69            'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:69            c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:69              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:69              Constant:
0:69                2 (const uint)
0:70      Sequence
0:70        move second child to first child (temp 4-component vector of int)
0:70          'r21' (temp 4-component vector of int)
0:70          imageLoad (temp 4-component vector of int)
0:70            'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:70            c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:70              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:70              Constant:
0:70                2 (const uint)
0:71      Sequence
0:71        move second child to first child (temp 4-component vector of uint)
0:71          'r22' (temp 4-component vector of uint)
0:71          imageLoad (temp 4-component vector of uint)
0:71            'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:71            c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:71              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:71              Constant:
0:71                2 (const uint)
0:73      Sequence
0:73        move second child to first child (temp 4-component vector of float)
0:73          'lf4' (temp 4-component vector of float)
0:73          uf4: direct index for structure (layout(offset=96 ) uniform 4-component vector of float)
0:73            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:73            Constant:
0:73              8 (const uint)
0:77      Sequence
0:77        move second child to first child (temp 4-component vector of float)
0:77          'storeTemp' (temp 4-component vector of float)
0:77          Function Call: SomeValue( (temp 4-component vector of float)
0:77        imageStore (temp void)
0:77          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:77          c1: direct index for structure (layout(offset=0 ) uniform int)
0:77            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:77            Constant:
0:77              0 (const uint)
0:77          'storeTemp' (temp 4-component vector of float)
0:77        'storeTemp' (temp 4-component vector of float)
0:78      Sequence
0:78        imageStore (temp void)
0:78          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:78          c1: direct index for structure (layout(offset=0 ) uniform int)
0:78            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:78            Constant:
0:78              0 (const uint)
0:78          'lf4' (temp 4-component vector of float)
0:78        'lf4' (temp 4-component vector of float)
0:79      Sequence
0:79        move second child to first child (temp 4-component vector of int)
0:79          'storeTemp' (temp 4-component vector of int)
0:?           Constant:
0:?             2 (const int)
0:?             2 (const int)
0:?             3 (const int)
0:?             4 (const int)
0:79        imageStore (temp void)
0:79          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:79          c1: direct index for structure (layout(offset=0 ) uniform int)
0:79            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:79            Constant:
0:79              0 (const uint)
0:79          'storeTemp' (temp 4-component vector of int)
0:79        'storeTemp' (temp 4-component vector of int)
0:80      Sequence
0:80        move second child to first child (temp 4-component vector of uint)
0:80          'storeTemp' (temp 4-component vector of uint)
0:?           Constant:
0:?             3 (const uint)
0:?             2 (const uint)
0:?             3 (const uint)
0:?             4 (const uint)
0:80        imageStore (temp void)
0:80          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:80          c1: direct index for structure (layout(offset=0 ) uniform int)
0:80            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:80            Constant:
0:80              0 (const uint)
0:80          'storeTemp' (temp 4-component vector of uint)
0:80        'storeTemp' (temp 4-component vector of uint)
0:83      Sequence
0:83        move second child to first child (temp 4-component vector of float)
0:83          'val1' (temp 4-component vector of float)
0:83          Sequence
0:83            move second child to first child (temp int)
0:83              'coordTemp' (temp int)
0:83              c1: direct index for structure (layout(offset=0 ) uniform int)
0:83                'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:83                Constant:
0:83                  0 (const uint)
0:83            move second child to first child (temp 4-component vector of float)
0:83              'storeTemp' (temp 4-component vector of float)
0:83              imageLoad (temp 4-component vector of float)
0:83                'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:83                'coordTemp' (temp int)
0:83            vector scale second child into first child (temp 4-component vector of float)
0:83              'storeTemp' (temp 4-component vector of float)
0:83              Constant:
0:83                2.000000
0:83            imageStore (temp void)
0:83              'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:83              'coordTemp' (temp int)
0:83              'storeTemp' (temp 4-component vector of float)
0:83            'storeTemp' (temp 4-component vector of float)
0:84      Sequence
0:84        move second child to first child (temp int)
0:84          'coordTemp' (temp int)
0:84          c1: direct index for structure (layout(offset=0 ) uniform int)
0:84            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:84            Constant:
0:84              0 (const uint)
0:84        move second child to first child (temp 4-component vector of float)
0:84          'storeTemp' (temp 4-component vector of float)
0:84          imageLoad (temp 4-component vector of float)
0:84            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:84            'coordTemp' (temp int)
0:84        subtract second child into first child (temp 4-component vector of float)
0:84          'storeTemp' (temp 4-component vector of float)
0:84          Constant:
0:84            3.000000
0:84        imageStore (temp void)
0:84          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:84          'coordTemp' (temp int)
0:84          'storeTemp' (temp 4-component vector of float)
0:84        'storeTemp' (temp 4-component vector of float)
0:85      Sequence
0:85        move second child to first child (temp int)
0:85          'coordTemp' (temp int)
0:85          c1: direct index for structure (layout(offset=0 ) uniform int)
0:85            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:85            Constant:
0:85              0 (const uint)
0:85        move second child to first child (temp 4-component vector of float)
0:85          'storeTemp' (temp 4-component vector of float)
0:85          imageLoad (temp 4-component vector of float)
0:85            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:85            'coordTemp' (temp int)
0:85        add second child into first child (temp 4-component vector of float)
0:85          'storeTemp' (temp 4-component vector of float)
0:85          Constant:
0:85            4.000000
0:85        imageStore (temp void)
0:85          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:85          'coordTemp' (temp int)
0:85          'storeTemp' (temp 4-component vector of float)
0:85        'storeTemp' (temp 4-component vector of float)
0:87      Sequence
0:87        move second child to first child (temp int)
0:87          'coordTemp' (temp int)
0:87          c1: direct index for structure (layout(offset=0 ) uniform int)
0:87            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:87            Constant:
0:87              0 (const uint)
0:87        move second child to first child (temp 4-component vector of int)
0:87          'storeTemp' (temp 4-component vector of int)
0:87          imageLoad (temp 4-component vector of int)
0:87            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:87            'coordTemp' (temp int)
0:87        divide second child into first child (temp 4-component vector of int)
0:87          'storeTemp' (temp 4-component vector of int)
0:87          Constant:
0:87            2 (const int)
0:87        imageStore (temp void)
0:87          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:87          'coordTemp' (temp int)
0:87          'storeTemp' (temp 4-component vector of int)
0:87        'storeTemp' (temp 4-component vector of int)
0:88      Sequence
0:88        move second child to first child (temp int)
0:88          'coordTemp' (temp int)
0:88          c1: direct index for structure (layout(offset=0 ) uniform int)
0:88            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:88            Constant:
0:88              0 (const uint)
0:88        move second child to first child (temp 4-component vector of int)
0:88          'storeTemp' (temp 4-component vector of int)
0:88          imageLoad (temp 4-component vector of int)
0:88            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:88            'coordTemp' (temp int)
0:88        mod second child into first child (temp 4-component vector of int)
0:88          'storeTemp' (temp 4-component vector of int)
0:88          Constant:
0:88            2 (const int)
0:88        imageStore (temp void)
0:88          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:88          'coordTemp' (temp int)
0:88          'storeTemp' (temp 4-component vector of int)
0:88        'storeTemp' (temp 4-component vector of int)
0:89      Sequence
0:89        move second child to first child (temp int)
0:89          'coordTemp' (temp int)
0:89          c1: direct index for structure (layout(offset=0 ) uniform int)
0:89            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:89            Constant:
0:89              0 (const uint)
0:89        move second child to first child (temp 4-component vector of int)
0:89          'storeTemp' (temp 4-component vector of int)
0:89          imageLoad (temp 4-component vector of int)
0:89            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:89            'coordTemp' (temp int)
0:89        and second child into first child (temp 4-component vector of int)
0:89          'storeTemp' (temp 4-component vector of int)
0:89          Constant:
0:89            65535 (const int)
0:89        imageStore (temp void)
0:89          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:89          'coordTemp' (temp int)
0:89          'storeTemp' (temp 4-component vector of int)
0:89        'storeTemp' (temp 4-component vector of int)
0:90      Sequence
0:90        move second child to first child (temp int)
0:90          'coordTemp' (temp int)
0:90          c1: direct index for structure (layout(offset=0 ) uniform int)
0:90            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:90            Constant:
0:90              0 (const uint)
0:90        move second child to first child (temp 4-component vector of int)
0:90          'storeTemp' (temp 4-component vector of int)
0:90          imageLoad (temp 4-component vector of int)
0:90            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:90            'coordTemp' (temp int)
0:90        or second child into first child (temp 4-component vector of int)
0:90          'storeTemp' (temp 4-component vector of int)
0:90          Constant:
0:90            61680 (const int)
0:90        imageStore (temp void)
0:90          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:90          'coordTemp' (temp int)
0:90          'storeTemp' (temp 4-component vector of int)
0:90        'storeTemp' (temp 4-component vector of int)
0:91      Sequence
0:91        move second child to first child (temp int)
0:91          'coordTemp' (temp int)
0:91          c1: direct index for structure (layout(offset=0 ) uniform int)
0:91            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:91            Constant:
0:91              0 (const uint)
0:91        move second child to first child (temp 4-component vector of int)
0:91          'storeTemp' (temp 4-component vector of int)
0:91          imageLoad (temp 4-component vector of int)
0:91            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:91            'coordTemp' (temp int)
0:91        left shift second child into first child (temp 4-component vector of int)
0:91          'storeTemp' (temp 4-component vector of int)
0:91          Constant:
0:91            2 (const int)
0:91        imageStore (temp void)
0:91          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:91          'coordTemp' (temp int)
0:91          'storeTemp' (temp 4-component vector of int)
0:91        'storeTemp' (temp 4-component vector of int)
0:92      Sequence
0:92        move second child to first child (temp int)
0:92          'coordTemp' (temp int)
0:92          c1: direct index for structure (layout(offset=0 ) uniform int)
0:92            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:92            Constant:
0:92              0 (const uint)
0:92        move second child to first child (temp 4-component vector of int)
0:92          'storeTemp' (temp 4-component vector of int)
0:92          imageLoad (temp 4-component vector of int)
0:92            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:92            'coordTemp' (temp int)
0:92        right shift second child into first child (temp 4-component vector of int)
0:92          'storeTemp' (temp 4-component vector of int)
0:92          Constant:
0:92            2 (const int)
0:92        imageStore (temp void)
0:92          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:92          'coordTemp' (temp int)
0:92          'storeTemp' (temp 4-component vector of int)
0:92        'storeTemp' (temp 4-component vector of int)
0:95      Sequence
0:95        move second child to first child (temp 4-component vector of float)
0:95          'storeTemp' (temp 4-component vector of float)
0:95          Function Call: SomeValue( (temp 4-component vector of float)
0:95        imageStore (temp void)
0:95          'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:95          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:95            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:95            Constant:
0:95              1 (const uint)
0:95          'storeTemp' (temp 4-component vector of float)
0:95        'storeTemp' (temp 4-component vector of float)
0:96      Sequence
0:96        imageStore (temp void)
0:96          'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:96          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:96            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:96            Constant:
0:96              1 (const uint)
0:96          'lf4' (temp 4-component vector of float)
0:96        'lf4' (temp 4-component vector of float)
0:97      Sequence
0:97        move second child to first child (temp 4-component vector of int)
0:97          'storeTemp' (temp 4-component vector of int)
0:?           Constant:
0:?             5 (const int)
0:?             2 (const int)
0:?             3 (const int)
0:?             4 (const int)
0:97        imageStore (temp void)
0:97          'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:97          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:97            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:97            Constant:
0:97              1 (const uint)
0:97          'storeTemp' (temp 4-component vector of int)
0:97        'storeTemp' (temp 4-component vector of int)
0:98      Sequence
0:98        move second child to first child (temp 4-component vector of uint)
0:98          'storeTemp' (temp 4-component vector of uint)
0:?           Constant:
0:?             6 (const uint)
0:?             2 (const uint)
0:?             3 (const uint)
0:?             4 (const uint)
0:98        imageStore (temp void)
0:98          'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:98          c2: direct index for structure (layout(offset=8 ) uniform 2-component vector of int)
0:98            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:98            Constant:
0:98              1 (const uint)
0:98          'storeTemp' (temp 4-component vector of uint)
0:98        'storeTemp' (temp 4-component vector of uint)
0:101      Sequence
0:101        move second child to first child (temp 4-component vector of float)
0:101          'storeTemp' (temp 4-component vector of float)
0:101          Function Call: SomeValue( (temp 4-component vector of float)
0:101        imageStore (temp void)
0:101          'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:101          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:101            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:101            Constant:
0:101              2 (const uint)
0:101          'storeTemp' (temp 4-component vector of float)
0:101        'storeTemp' (temp 4-component vector of float)
0:102      Sequence
0:102        imageStore (temp void)
0:102          'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:102          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:102            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:102            Constant:
0:102              2 (const uint)
0:102          'lf4' (temp 4-component vector of float)
0:102        'lf4' (temp 4-component vector of float)
0:103      Sequence
0:103        move second child to first child (temp 4-component vector of int)
0:103          'storeTemp' (temp 4-component vector of int)
0:?           Constant:
0:?             8 (const int)
0:?             6 (const int)
0:?             7 (const int)
0:?             8 (const int)
0:103        imageStore (temp void)
0:103          'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:103          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:103            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:103            Constant:
0:103              2 (const uint)
0:103          'storeTemp' (temp 4-component vector of int)
0:103        'storeTemp' (temp 4-component vector of int)
0:104      Sequence
0:104        move second child to first child (temp 4-component vector of uint)
0:104          'storeTemp' (temp 4-component vector of uint)
0:?           Constant:
0:?             9 (const uint)
0:?             2 (const uint)
0:?             3 (const uint)
0:?             4 (const uint)
0:104        imageStore (temp void)
0:104          'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:104          c3: direct index for structure (layout(offset=16 ) uniform 3-component vector of int)
0:104            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:104            Constant:
0:104              2 (const uint)
0:104          'storeTemp' (temp 4-component vector of uint)
0:104        'storeTemp' (temp 4-component vector of uint)
0:107      Function Call: Fn1(vf4; (temp 4-component vector of float)
0:107        imageLoad (temp 4-component vector of float)
0:107          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:107          c1: direct index for structure (layout(offset=0 ) uniform int)
0:107            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:107            Constant:
0:107              0 (const uint)
0:108      Function Call: Fn1(vi4; (temp 4-component vector of int)
0:108        imageLoad (temp 4-component vector of int)
0:108          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:108          c1: direct index for structure (layout(offset=0 ) uniform int)
0:108            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:108            Constant:
0:108              0 (const uint)
0:109      Function Call: Fn1(vu4; (temp 4-component vector of uint)
0:109        imageLoad (temp 4-component vector of uint)
0:109          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:109          c1: direct index for structure (layout(offset=0 ) uniform int)
0:109            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:109            Constant:
0:109              0 (const uint)
0:111      Comma (temp void)
0:111        Function Call: Fn2(vf4; (temp void)
0:111          'tempArg' (temp 4-component vector of float)
0:111        Sequence
0:111          imageStore (temp void)
0:111            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:111            c1: direct index for structure (layout(offset=0 ) uniform int)
0:111              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:111              Constant:
0:111                0 (const uint)
0:111            'tempArg' (temp 4-component vector of float)
0:111          'tempArg' (temp 4-component vector of float)
0:112      Comma (temp void)
0:112        Function Call: Fn2(vi4; (temp void)
0:112          'tempArg' (temp 4-component vector of int)
0:112        Sequence
0:112          imageStore (temp void)
0:112            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:112            c1: direct index for structure (layout(offset=0 ) uniform int)
0:112              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:112              Constant:
0:112                0 (const uint)
0:112            'tempArg' (temp 4-component vector of int)
0:112          'tempArg' (temp 4-component vector of int)
0:113      Comma (temp void)
0:113        Function Call: Fn2(vu4; (temp void)
0:113          'tempArg' (temp 4-component vector of uint)
0:113        Sequence
0:113          imageStore (temp void)
0:113            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:113            c1: direct index for structure (layout(offset=0 ) uniform int)
0:113              'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:113              Constant:
0:113                0 (const uint)
0:113            'tempArg' (temp 4-component vector of uint)
0:113          'tempArg' (temp 4-component vector of uint)
0:117      Sequence
0:117        move second child to first child (temp int)
0:117          'coordTemp' (temp int)
0:117          c1: direct index for structure (layout(offset=0 ) uniform int)
0:117            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:117            Constant:
0:117              0 (const uint)
0:117        move second child to first child (temp 4-component vector of float)
0:117          'storeTemp' (temp 4-component vector of float)
0:117          imageLoad (temp 4-component vector of float)
0:117            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:117            'coordTemp' (temp int)
0:117        Pre-Increment (temp 4-component vector of float)
0:117          'storeTemp' (temp 4-component vector of float)
0:117        imageStore (temp void)
0:117          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:117          'coordTemp' (temp int)
0:117          'storeTemp' (temp 4-component vector of float)
0:117        'storeTemp' (temp 4-component vector of float)
0:118      Sequence
0:118        move second child to first child (temp int)
0:118          'coordTemp' (temp int)
0:118          c1: direct index for structure (layout(offset=0 ) uniform int)
0:118            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:118            Constant:
0:118              0 (const uint)
0:118        move second child to first child (temp 4-component vector of int)
0:118          'storeTemp' (temp 4-component vector of int)
0:118          imageLoad (temp 4-component vector of int)
0:118            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:118            'coordTemp' (temp int)
0:118        Pre-Increment (temp 4-component vector of int)
0:118          'storeTemp' (temp 4-component vector of int)
0:118        imageStore (temp void)
0:118          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:118          'coordTemp' (temp int)
0:118          'storeTemp' (temp 4-component vector of int)
0:118        'storeTemp' (temp 4-component vector of int)
0:119      Sequence
0:119        move second child to first child (temp int)
0:119          'coordTemp' (temp int)
0:119          c1: direct index for structure (layout(offset=0 ) uniform int)
0:119            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:119            Constant:
0:119              0 (const uint)
0:119        move second child to first child (temp 4-component vector of uint)
0:119          'storeTemp' (temp 4-component vector of uint)
0:119          imageLoad (temp 4-component vector of uint)
0:119            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:119            'coordTemp' (temp int)
0:119        Pre-Increment (temp 4-component vector of uint)
0:119          'storeTemp' (temp 4-component vector of uint)
0:119        imageStore (temp void)
0:119          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:119          'coordTemp' (temp int)
0:119          'storeTemp' (temp 4-component vector of uint)
0:119        'storeTemp' (temp 4-component vector of uint)
0:121      Sequence
0:121        move second child to first child (temp int)
0:121          'coordTemp' (temp int)
0:121          c1: direct index for structure (layout(offset=0 ) uniform int)
0:121            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:121            Constant:
0:121              0 (const uint)
0:121        move second child to first child (temp 4-component vector of float)
0:121          'storeTemp' (temp 4-component vector of float)
0:121          imageLoad (temp 4-component vector of float)
0:121            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:121            'coordTemp' (temp int)
0:121        Pre-Decrement (temp 4-component vector of float)
0:121          'storeTemp' (temp 4-component vector of float)
0:121        imageStore (temp void)
0:121          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:121          'coordTemp' (temp int)
0:121          'storeTemp' (temp 4-component vector of float)
0:121        'storeTemp' (temp 4-component vector of float)
0:122      Sequence
0:122        move second child to first child (temp int)
0:122          'coordTemp' (temp int)
0:122          c1: direct index for structure (layout(offset=0 ) uniform int)
0:122            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:122            Constant:
0:122              0 (const uint)
0:122        move second child to first child (temp 4-component vector of int)
0:122          'storeTemp' (temp 4-component vector of int)
0:122          imageLoad (temp 4-component vector of int)
0:122            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:122            'coordTemp' (temp int)
0:122        Pre-Decrement (temp 4-component vector of int)
0:122          'storeTemp' (temp 4-component vector of int)
0:122        imageStore (temp void)
0:122          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:122          'coordTemp' (temp int)
0:122          'storeTemp' (temp 4-component vector of int)
0:122        'storeTemp' (temp 4-component vector of int)
0:123      Sequence
0:123        move second child to first child (temp int)
0:123          'coordTemp' (temp int)
0:123          c1: direct index for structure (layout(offset=0 ) uniform int)
0:123            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:123            Constant:
0:123              0 (const uint)
0:123        move second child to first child (temp 4-component vector of uint)
0:123          'storeTemp' (temp 4-component vector of uint)
0:123          imageLoad (temp 4-component vector of uint)
0:123            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:123            'coordTemp' (temp int)
0:123        Pre-Decrement (temp 4-component vector of uint)
0:123          'storeTemp' (temp 4-component vector of uint)
0:123        imageStore (temp void)
0:123          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:123          'coordTemp' (temp int)
0:123          'storeTemp' (temp 4-component vector of uint)
0:123        'storeTemp' (temp 4-component vector of uint)
0:126      Sequence
0:126        move second child to first child (temp int)
0:126          'coordTemp' (temp int)
0:126          c1: direct index for structure (layout(offset=0 ) uniform int)
0:126            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:126            Constant:
0:126              0 (const uint)
0:126        move second child to first child (temp 4-component vector of float)
0:126          'storeTempPre' (temp 4-component vector of float)
0:126          imageLoad (temp 4-component vector of float)
0:126            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:126            'coordTemp' (temp int)
0:126        move second child to first child (temp 4-component vector of float)
0:126          'storeTempPost' (temp 4-component vector of float)
0:126          'storeTempPre' (temp 4-component vector of float)
0:126        Post-Increment (temp 4-component vector of float)
0:126          'storeTempPost' (temp 4-component vector of float)
0:126        imageStore (temp void)
0:126          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:126          'coordTemp' (temp int)
0:126          'storeTempPost' (temp 4-component vector of float)
0:126        'storeTempPre' (temp 4-component vector of float)
0:127      Sequence
0:127        move second child to first child (temp int)
0:127          'coordTemp' (temp int)
0:127          c1: direct index for structure (layout(offset=0 ) uniform int)
0:127            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:127            Constant:
0:127              0 (const uint)
0:127        move second child to first child (temp 4-component vector of uint)
0:127          'storeTempPre' (temp 4-component vector of uint)
0:127          imageLoad (temp 4-component vector of uint)
0:127            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:127            'coordTemp' (temp int)
0:127        move second child to first child (temp 4-component vector of uint)
0:127          'storeTempPost' (temp 4-component vector of uint)
0:127          'storeTempPre' (temp 4-component vector of uint)
0:127        Post-Decrement (temp 4-component vector of uint)
0:127          'storeTempPost' (temp 4-component vector of uint)
0:127        imageStore (temp void)
0:127          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:127          'coordTemp' (temp int)
0:127          'storeTempPost' (temp 4-component vector of uint)
0:127        'storeTempPre' (temp 4-component vector of uint)
0:128      Sequence
0:128        move second child to first child (temp int)
0:128          'coordTemp' (temp int)
0:128          c1: direct index for structure (layout(offset=0 ) uniform int)
0:128            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:128            Constant:
0:128              0 (const uint)
0:128        move second child to first child (temp 4-component vector of int)
0:128          'storeTempPre' (temp 4-component vector of int)
0:128          imageLoad (temp 4-component vector of int)
0:128            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:128            'coordTemp' (temp int)
0:128        move second child to first child (temp 4-component vector of int)
0:128          'storeTempPost' (temp 4-component vector of int)
0:128          'storeTempPre' (temp 4-component vector of int)
0:128        Post-Increment (temp 4-component vector of int)
0:128          'storeTempPost' (temp 4-component vector of int)
0:128        imageStore (temp void)
0:128          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:128          'coordTemp' (temp int)
0:128          'storeTempPost' (temp 4-component vector of int)
0:128        'storeTempPre' (temp 4-component vector of int)
0:130      Sequence
0:130        move second child to first child (temp int)
0:130          'coordTemp' (temp int)
0:130          c1: direct index for structure (layout(offset=0 ) uniform int)
0:130            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:130            Constant:
0:130              0 (const uint)
0:130        move second child to first child (temp 4-component vector of float)
0:130          'storeTempPre' (temp 4-component vector of float)
0:130          imageLoad (temp 4-component vector of float)
0:130            'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:130            'coordTemp' (temp int)
0:130        move second child to first child (temp 4-component vector of float)
0:130          'storeTempPost' (temp 4-component vector of float)
0:130          'storeTempPre' (temp 4-component vector of float)
0:130        Post-Decrement (temp 4-component vector of float)
0:130          'storeTempPost' (temp 4-component vector of float)
0:130        imageStore (temp void)
0:130          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:130          'coordTemp' (temp int)
0:130          'storeTempPost' (temp 4-component vector of float)
0:130        'storeTempPre' (temp 4-component vector of float)
0:131      Sequence
0:131        move second child to first child (temp int)
0:131          'coordTemp' (temp int)
0:131          c1: direct index for structure (layout(offset=0 ) uniform int)
0:131            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:131            Constant:
0:131              0 (const uint)
0:131        move second child to first child (temp 4-component vector of int)
0:131          'storeTempPre' (temp 4-component vector of int)
0:131          imageLoad (temp 4-component vector of int)
0:131            'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:131            'coordTemp' (temp int)
0:131        move second child to first child (temp 4-component vector of int)
0:131          'storeTempPost' (temp 4-component vector of int)
0:131          'storeTempPre' (temp 4-component vector of int)
0:131        Post-Increment (temp 4-component vector of int)
0:131          'storeTempPost' (temp 4-component vector of int)
0:131        imageStore (temp void)
0:131          'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:131          'coordTemp' (temp int)
0:131          'storeTempPost' (temp 4-component vector of int)
0:131        'storeTempPre' (temp 4-component vector of int)
0:132      Sequence
0:132        move second child to first child (temp int)
0:132          'coordTemp' (temp int)
0:132          c1: direct index for structure (layout(offset=0 ) uniform int)
0:132            'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:132            Constant:
0:132              0 (const uint)
0:132        move second child to first child (temp 4-component vector of uint)
0:132          'storeTempPre' (temp 4-component vector of uint)
0:132          imageLoad (temp 4-component vector of uint)
0:132            'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:132            'coordTemp' (temp int)
0:132        move second child to first child (temp 4-component vector of uint)
0:132          'storeTempPost' (temp 4-component vector of uint)
0:132          'storeTempPre' (temp 4-component vector of uint)
0:132        Post-Decrement (temp 4-component vector of uint)
0:132          'storeTempPost' (temp 4-component vector of uint)
0:132        imageStore (temp void)
0:132          'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:132          'coordTemp' (temp int)
0:132          'storeTempPost' (temp 4-component vector of uint)
0:132        'storeTempPre' (temp 4-component vector of uint)
0:135      Sequence
0:135        move second child to first child (temp 4-component vector of float)
0:135          'storeTemp' (temp 4-component vector of float)
0:?           imageLoad (temp 4-component vector of float)
0:135            'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:?             Constant:
0:?               2 (const int)
0:?               3 (const int)
0:135        imageStore (temp void)
0:135          'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:135          Constant:
0:135            1 (const int)
0:135          'storeTemp' (temp 4-component vector of float)
0:135        'storeTemp' (temp 4-component vector of float)
0:137      move second child to first child (temp 4-component vector of float)
0:137        Color: direct index for structure (temp 4-component vector of float)
0:137          'psout' (temp structure{temp 4-component vector of float Color})
0:137          Constant:
0:137            0 (const int)
0:137        Constant:
0:137          1.000000
0:137          1.000000
0:137          1.000000
0:137          1.000000
0:139      Sequence
0:139        Sequence
0:139          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:139            Color: direct index for structure (temp 4-component vector of float)
0:139              'psout' (temp structure{temp 4-component vector of float Color})
0:139              Constant:
0:139                0 (const int)
0:139        Branch: Return
0:?   Linker Objects
0:?     'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?     'g_tTex1df4' (layout(binding=0 rgba32f ) uniform image1D)
0:?     'g_tTex1di4' (layout(rgba32i ) uniform iimage1D)
0:?     'g_tTex1du4' (layout(rgba32ui ) uniform uimage1D)
0:?     'g_tTex2df4' (layout(rgba32f ) uniform image2D)
0:?     'g_tTex2di4' (layout(rgba32i ) uniform iimage2D)
0:?     'g_tTex2du4' (layout(rgba32ui ) uniform uimage2D)
0:?     'g_tTex3df4' (layout(rgba32f ) uniform image3D)
0:?     'g_tTex3di4' (layout(rgba32i ) uniform iimage3D)
0:?     'g_tTex3du4' (layout(rgba32ui ) uniform uimage3D)
0:?     'g_tTex1df4a' (layout(rgba32f ) uniform image1DArray)
0:?     'g_tTex1di4a' (layout(rgba32i ) uniform iimage1DArray)
0:?     'g_tTex1du4a' (layout(rgba32ui ) uniform uimage1DArray)
0:?     'g_tTex2df4a' (layout(rgba32f ) uniform image2DArray)
0:?     'g_tTex2di4a' (layout(rgba32i ) uniform iimage2DArray)
0:?     'g_tTex2du4a' (layout(rgba32ui ) uniform uimage2DArray)
0:?     'anon@0' (uniform block{layout(offset=0 ) uniform int c1, layout(offset=8 ) uniform 2-component vector of int c2, layout(offset=16 ) uniform 3-component vector of int c3, layout(offset=32 ) uniform 4-component vector of int c4, layout(offset=48 ) uniform int o1, layout(offset=56 ) uniform 2-component vector of int o2, layout(offset=64 ) uniform 3-component vector of int o3, layout(offset=80 ) uniform 4-component vector of int o4, layout(offset=96 ) uniform 4-component vector of float uf4, layout(offset=112 ) uniform 4-component vector of int ui4, layout(offset=128 ) uniform 4-component vector of uint uu4})
0:?     'Color' (layout(location=0 ) out 4-component vector of float)

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

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 577
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "main"
                              Name 11  "Fn1(vi4;"
                              Name 10  "x"
                              Name 18  "Fn1(vu4;"
                              Name 17  "x"
                              Name 25  "Fn1(vf4;"
                              Name 24  "x"
                              Name 29  "Fn2(vi4;"
                              Name 28  "x"
                              Name 33  "Fn2(vu4;"
                              Name 32  "x"
                              Name 37  "Fn2(vf4;"
                              Name 36  "x"
                              Name 40  "SomeValue("
                              Name 59  "$Global"
                              MemberName 59($Global) 0  "c1"
                              MemberName 59($Global) 1  "c2"
                              MemberName 59($Global) 2  "c3"
                              MemberName 59($Global) 3  "c4"
                              MemberName 59($Global) 4  "o1"
                              MemberName 59($Global) 5  "o2"
                              MemberName 59($Global) 6  "o3"
                              MemberName 59($Global) 7  "o4"
                              MemberName 59($Global) 8  "uf4"
                              MemberName 59($Global) 9  "ui4"
                              MemberName 59($Global) 10  "uu4"
                              Name 61  ""
                              Name 71  "g_tTex1df4"
                              Name 77  "r00"
                              Name 82  "r01"
                              Name 85  "g_tTex1di4"
                              Name 90  "r02"
                              Name 93  "g_tTex1du4"
                              Name 98  "r10"
                              Name 101  "g_tTex2df4"
                              Name 108  "r11"
                              Name 111  "g_tTex2di4"
                              Name 116  "r12"
                              Name 119  "g_tTex2du4"
                              Name 124  "r20"
                              Name 127  "g_tTex3df4"
                              Name 134  "r21"
                              Name 137  "g_tTex3di4"
                              Name 142  "r22"
                              Name 145  "g_tTex3du4"
                              Name 150  "lf4"
                              Name 155  "storeTemp"
                              Name 165  "storeTemp"
                              Name 172  "storeTemp"
                              Name 181  "val1"
                              Name 183  "coordTemp"
                              Name 186  "storeTemp"
                              Name 197  "coordTemp"
                              Name 200  "storeTemp"
                              Name 211  "coordTemp"
                              Name 214  "storeTemp"
                              Name 225  "coordTemp"
                              Name 228  "storeTemp"
                              Name 238  "coordTemp"
                              Name 241  "storeTemp"
                              Name 251  "coordTemp"
                              Name 254  "storeTemp"
                              Name 265  "coordTemp"
                              Name 268  "storeTemp"
                              Name 279  "coordTemp"
                              Name 282  "storeTemp"
                              Name 292  "coordTemp"
                              Name 295  "storeTemp"
                              Name 305  "storeTemp"
                              Name 315  "storeTemp"
                              Name 322  "storeTemp"
                              Name 329  "storeTemp"
                              Name 339  "storeTemp"
                              Name 347  "storeTemp"
                              Name 358  "param"
                              Name 364  "param"
                              Name 370  "param"
                              Name 372  "tempArg"
                              Name 373  "param"
                              Name 380  "tempArg"
                              Name 381  "param"
                              Name 388  "tempArg"
                              Name 389  "param"
                              Name 396  "coordTemp"
                              Name 399  "storeTemp"
                              Name 410  "coordTemp"
                              Name 413  "storeTemp"
                              Name 423  "coordTemp"
                              Name 426  "storeTemp"
                              Name 436  "coordTemp"
                              Name 439  "storeTemp"
                              Name 449  "coordTemp"
                              Name 452  "storeTemp"
                              Name 462  "coordTemp"
                              Name 465  "storeTemp"
                              Name 475  "coordTemp"
                              Name 478  "storeTempPre"
                              Name 482  "storeTempPost"
                              Name 490  "coordTemp"
                              Name 493  "storeTempPre"
                              Name 497  "storeTempPost"
                              Name 505  "coordTemp"
                              Name 508  "storeTempPre"
                              Name 512  "storeTempPost"
                              Name 520  "coordTemp"
                              Name 523  "storeTempPre"
                              Name 527  "storeTempPost"
                              Name 535  "coordTemp"
                              Name 538  "storeTempPre"
                              Name 542  "storeTempPost"
                              Name 550  "coordTemp"
                              Name 553  "storeTempPre"
                              Name 557  "storeTempPost"
                              Name 565  "storeTemp"
                              Name 571  "PS_OUTPUT"
                              MemberName 571(PS_OUTPUT) 0  "Color"
                              Name 573  "psout"
                              Name 577  "Color"
                              Name 583  "g_sSamp"
                              Name 586  "g_tTex1df4a"
                              Name 589  "g_tTex1di4a"
                              Name 592  "g_tTex1du4a"
                              Name 595  "g_tTex2df4a"
                              Name 598  "g_tTex2di4a"
                              Name 601  "g_tTex2du4a"
                              MemberDecorate 59($Global) 0 Offset 0
                              MemberDecorate 59($Global) 1 Offset 8
                              MemberDecorate 59($Global) 2 Offset 16
                              MemberDecorate 59($Global) 3 Offset 32
                              MemberDecorate 59($Global) 4 Offset 48
                              MemberDecorate 59($Global) 5 Offset 56
                              MemberDecorate 59($Global) 6 Offset 64
                              MemberDecorate 59($Global) 7 Offset 80
                              MemberDecorate 59($Global) 8 Offset 96
                              MemberDecorate 59($Global) 9 Offset 112
                              MemberDecorate 59($Global) 10 Offset 128
                              Decorate 59($Global) Block
                              Decorate 61 DescriptorSet 0
                              Decorate 71(g_tTex1df4) DescriptorSet 0
                              Decorate 71(g_tTex1df4) Binding 0
                              Decorate 85(g_tTex1di4) DescriptorSet 0
                              Decorate 93(g_tTex1du4) DescriptorSet 0
                              Decorate 101(g_tTex2df4) DescriptorSet 0
                              Decorate 111(g_tTex2di4) DescriptorSet 0
                              Decorate 119(g_tTex2du4) DescriptorSet 0
                              Decorate 127(g_tTex3df4) DescriptorSet 0
                              Decorate 137(g_tTex3di4) DescriptorSet 0
                              Decorate 145(g_tTex3du4) DescriptorSet 0
                              Decorate 577(Color) Location 0
                              Decorate 583(g_sSamp) DescriptorSet 0
                              Decorate 583(g_sSamp) Binding 0
                              Decorate 586(g_tTex1df4a) DescriptorSet 0
                              Decorate 589(g_tTex1di4a) DescriptorSet 0
                              Decorate 592(g_tTex1du4a) DescriptorSet 0
                              Decorate 595(g_tTex2df4a) DescriptorSet 0
                              Decorate 598(g_tTex2di4a) DescriptorSet 0
                              Decorate 601(g_tTex2du4a) DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypeVector 6(int) 4
               8:             TypePointer Function 7(ivec4)
               9:             TypeFunction 7(ivec4) 8(ptr)
              13:             TypeInt 32 0
              14:             TypeVector 13(int) 4
              15:             TypePointer Function 14(ivec4)
              16:             TypeFunction 14(ivec4) 15(ptr)
              20:             TypeFloat 32
              21:             TypeVector 20(float) 4
              22:             TypePointer Function 21(fvec4)
              23:             TypeFunction 21(fvec4) 22(ptr)
              27:             TypeFunction 2 8(ptr)
              31:             TypeFunction 2 15(ptr)
              35:             TypeFunction 2 22(ptr)
              39:             TypeFunction 21(fvec4)
              51:      6(int) Constant 0
              52:    7(ivec4) ConstantComposite 51 51 51 51
              53:     13(int) Constant 0
              54:   14(ivec4) ConstantComposite 53 53 53 53
              55:   20(float) Constant 0
              56:   21(fvec4) ConstantComposite 55 55 55 55
              57:             TypeVector 6(int) 2
              58:             TypeVector 6(int) 3
     59($Global):             TypeStruct 6(int) 57(ivec2) 58(ivec3) 7(ivec4) 6(int) 57(ivec2) 58(ivec3) 7(ivec4) 21(fvec4) 7(ivec4) 14(ivec4)
              60:             TypePointer Uniform 59($Global)
              61:     60(ptr) Variable Uniform
              62:      6(int) Constant 3
              63:             TypePointer Uniform 7(ivec4)
              69:             TypeImage 20(float) 1D nonsampled format:Rgba32f
              70:             TypePointer UniformConstant 69
  71(g_tTex1df4):     70(ptr) Variable UniformConstant
              73:             TypePointer Uniform 6(int)
              83:             TypeImage 6(int) 1D nonsampled format:Rgba32i
              84:             TypePointer UniformConstant 83
  85(g_tTex1di4):     84(ptr) Variable UniformConstant
              91:             TypeImage 13(int) 1D nonsampled format:Rgba32ui
              92:             TypePointer UniformConstant 91
  93(g_tTex1du4):     92(ptr) Variable UniformConstant
              99:             TypeImage 20(float) 2D nonsampled format:Rgba32f
             100:             TypePointer UniformConstant 99
 101(g_tTex2df4):    100(ptr) Variable UniformConstant
             103:      6(int) Constant 1
             104:             TypePointer Uniform 57(ivec2)
             109:             TypeImage 6(int) 2D nonsampled format:Rgba32i
             110:             TypePointer UniformConstant 109
 111(g_tTex2di4):    110(ptr) Variable UniformConstant
             117:             TypeImage 13(int) 2D nonsampled format:Rgba32ui
             118:             TypePointer UniformConstant 117
 119(g_tTex2du4):    118(ptr) Variable UniformConstant
             125:             TypeImage 20(float) 3D nonsampled format:Rgba32f
             126:             TypePointer UniformConstant 125
 127(g_tTex3df4):    126(ptr) Variable UniformConstant
             129:      6(int) Constant 2
             130:             TypePointer Uniform 58(ivec3)
             135:             TypeImage 6(int) 3D nonsampled format:Rgba32i
             136:             TypePointer UniformConstant 135
 137(g_tTex3di4):    136(ptr) Variable UniformConstant
             143:             TypeImage 13(int) 3D nonsampled format:Rgba32ui
             144:             TypePointer UniformConstant 143
 145(g_tTex3du4):    144(ptr) Variable UniformConstant
             151:      6(int) Constant 8
             152:             TypePointer Uniform 21(fvec4)
             166:      6(int) Constant 4
             167:    7(ivec4) ConstantComposite 129 129 62 166
             173:     13(int) Constant 3
             174:     13(int) Constant 2
             175:     13(int) Constant 4
             176:   14(ivec4) ConstantComposite 173 174 173 175
             182:             TypePointer Function 6(int)
             190:   20(float) Constant 1073741824
             204:   20(float) Constant 1077936128
             218:   20(float) Constant 1082130432
             258:      6(int) Constant 65535
             272:      6(int) Constant 61680
             316:      6(int) Constant 5
             317:    7(ivec4) ConstantComposite 316 129 62 166
             323:     13(int) Constant 6
             324:   14(ivec4) ConstantComposite 323 174 173 175
             340:      6(int) Constant 6
             341:      6(int) Constant 7
             342:    7(ivec4) ConstantComposite 151 340 341 151
             348:     13(int) Constant 9
             349:   14(ivec4) ConstantComposite 348 174 173 175
             404:   20(float) Constant 1065353216
             567:   57(ivec2) ConstantComposite 129 62
  571(PS_OUTPUT):             TypeStruct 21(fvec4)
             572:             TypePointer Function 571(PS_OUTPUT)
             574:   21(fvec4) ConstantComposite 404 404 404 404
             576:             TypePointer Output 21(fvec4)
      577(Color):    576(ptr) Variable Output
             581:             TypeSampler
             582:             TypePointer UniformConstant 581
    583(g_sSamp):    582(ptr) Variable UniformConstant
             584:             TypeImage 20(float) 1D array nonsampled format:Rgba32f
             585:             TypePointer UniformConstant 584
586(g_tTex1df4a):    585(ptr) Variable UniformConstant
             587:             TypeImage 6(int) 1D array nonsampled format:Rgba32i
             588:             TypePointer UniformConstant 587
589(g_tTex1di4a):    588(ptr) Variable UniformConstant
             590:             TypeImage 13(int) 1D array nonsampled format:Rgba32ui
             591:             TypePointer UniformConstant 590
592(g_tTex1du4a):    591(ptr) Variable UniformConstant
             593:             TypeImage 20(float) 2D array nonsampled format:Rgba32f
             594:             TypePointer UniformConstant 593
595(g_tTex2df4a):    594(ptr) Variable UniformConstant
             596:             TypeImage 6(int) 2D array nonsampled format:Rgba32i
             597:             TypePointer UniformConstant 596
598(g_tTex2di4a):    597(ptr) Variable UniformConstant
             599:             TypeImage 13(int) 2D array nonsampled format:Rgba32ui
             600:             TypePointer UniformConstant 599
601(g_tTex2du4a):    600(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
         77(r00):     22(ptr) Variable Function
         82(r01):      8(ptr) Variable Function
         90(r02):     15(ptr) Variable Function
         98(r10):     22(ptr) Variable Function
        108(r11):      8(ptr) Variable Function
        116(r12):     15(ptr) Variable Function
        124(r20):     22(ptr) Variable Function
        134(r21):      8(ptr) Variable Function
        142(r22):     15(ptr) Variable Function
        150(lf4):     22(ptr) Variable Function
  155(storeTemp):     22(ptr) Variable Function
  165(storeTemp):      8(ptr) Variable Function
  172(storeTemp):     15(ptr) Variable Function
       181(val1):     22(ptr) Variable Function
  183(coordTemp):    182(ptr) Variable Function
  186(storeTemp):     22(ptr) Variable Function
  197(coordTemp):    182(ptr) Variable Function
  200(storeTemp):     22(ptr) Variable Function
  211(coordTemp):    182(ptr) Variable Function
  214(storeTemp):     22(ptr) Variable Function
  225(coordTemp):    182(ptr) Variable Function
  228(storeTemp):      8(ptr) Variable Function
  238(coordTemp):    182(ptr) Variable Function
  241(storeTemp):      8(ptr) Variable Function
  251(coordTemp):    182(ptr) Variable Function
  254(storeTemp):      8(ptr) Variable Function
  265(coordTemp):    182(ptr) Variable Function
  268(storeTemp):      8(ptr) Variable Function
  279(coordTemp):    182(ptr) Variable Function
  282(storeTemp):      8(ptr) Variable Function
  292(coordTemp):    182(ptr) Variable Function
  295(storeTemp):      8(ptr) Variable Function
  305(storeTemp):     22(ptr) Variable Function
  315(storeTemp):      8(ptr) Variable Function
  322(storeTemp):     15(ptr) Variable Function
  329(storeTemp):     22(ptr) Variable Function
  339(storeTemp):      8(ptr) Variable Function
  347(storeTemp):     15(ptr) Variable Function
      358(param):     22(ptr) Variable Function
      364(param):      8(ptr) Variable Function
      370(param):     15(ptr) Variable Function
    372(tempArg):     22(ptr) Variable Function
      373(param):     22(ptr) Variable Function
    380(tempArg):      8(ptr) Variable Function
      381(param):      8(ptr) Variable Function
    388(tempArg):     15(ptr) Variable Function
      389(param):     15(ptr) Variable Function
  396(coordTemp):    182(ptr) Variable Function
  399(storeTemp):     22(ptr) Variable Function
  410(coordTemp):    182(ptr) Variable Function
  413(storeTemp):      8(ptr) Variable Function
  423(coordTemp):    182(ptr) Variable Function
  426(storeTemp):     15(ptr) Variable Function
  436(coordTemp):    182(ptr) Variable Function
  439(storeTemp):     22(ptr) Variable Function
  449(coordTemp):    182(ptr) Variable Function
  452(storeTemp):      8(ptr) Variable Function
  462(coordTemp):    182(ptr) Variable Function
  465(storeTemp):     15(ptr) Variable Function
  475(coordTemp):    182(ptr) Variable Function
478(storeTempPre):     22(ptr) Variable Function
482(storeTempPost):     22(ptr) Variable Function
  490(coordTemp):    182(ptr) Variable Function
493(storeTempPre):     15(ptr) Variable Function
497(storeTempPost):     15(ptr) Variable Function
  505(coordTemp):    182(ptr) Variable Function
508(storeTempPre):      8(ptr) Variable Function
512(storeTempPost):      8(ptr) Variable Function
  520(coordTemp):    182(ptr) Variable Function
523(storeTempPre):     22(ptr) Variable Function
527(storeTempPost):     22(ptr) Variable Function
  535(coordTemp):    182(ptr) Variable Function
538(storeTempPre):      8(ptr) Variable Function
542(storeTempPost):      8(ptr) Variable Function
  550(coordTemp):    182(ptr) Variable Function
553(storeTempPre):     15(ptr) Variable Function
557(storeTempPost):     15(ptr) Variable Function
  565(storeTemp):     22(ptr) Variable Function
      573(psout):    572(ptr) Variable Function
              72:          69 Load 71(g_tTex1df4)
              74:     73(ptr) AccessChain 61 51
              75:      6(int) Load 74
              76:   21(fvec4) ImageRead 72 75
              78:          69 Load 71(g_tTex1df4)
              79:     73(ptr) AccessChain 61 51
              80:      6(int) Load 79
              81:   21(fvec4) ImageRead 78 80
                              Store 77(r00) 81
              86:          83 Load 85(g_tTex1di4)
              87:     73(ptr) AccessChain 61 51
              88:      6(int) Load 87
              89:    7(ivec4) ImageRead 86 88
                              Store 82(r01) 89
              94:          91 Load 93(g_tTex1du4)
              95:     73(ptr) AccessChain 61 51
              96:      6(int) Load 95
              97:   14(ivec4) ImageRead 94 96
                              Store 90(r02) 97
             102:          99 Load 101(g_tTex2df4)
             105:    104(ptr) AccessChain 61 103
             106:   57(ivec2) Load 105
             107:   21(fvec4) ImageRead 102 106
                              Store 98(r10) 107
             112:         109 Load 111(g_tTex2di4)
             113:    104(ptr) AccessChain 61 103
             114:   57(ivec2) Load 113
             115:    7(ivec4) ImageRead 112 114
                              Store 108(r11) 115
             120:         117 Load 119(g_tTex2du4)
             121:    104(ptr) AccessChain 61 103
             122:   57(ivec2) Load 121
             123:   14(ivec4) ImageRead 120 122
                              Store 116(r12) 123
             128:         125 Load 127(g_tTex3df4)
             131:    130(ptr) AccessChain 61 129
             132:   58(ivec3) Load 131
             133:   21(fvec4) ImageRead 128 132
                              Store 124(r20) 133
             138:         135 Load 137(g_tTex3di4)
             139:    130(ptr) AccessChain 61 129
             140:   58(ivec3) Load 139
             141:    7(ivec4) ImageRead 138 140
                              Store 134(r21) 141
             146:         143 Load 145(g_tTex3du4)
             147:    130(ptr) AccessChain 61 129
             148:   58(ivec3) Load 147
             149:   14(ivec4) ImageRead 146 148
                              Store 142(r22) 149
             153:    152(ptr) AccessChain 61 151
             154:   21(fvec4) Load 153
                              Store 150(lf4) 154
             156:   21(fvec4) FunctionCall 40(SomeValue()
                              Store 155(storeTemp) 156
             157:          69 Load 71(g_tTex1df4)
             158:     73(ptr) AccessChain 61 51
             159:      6(int) Load 158
             160:   21(fvec4) Load 155(storeTemp)
                              ImageWrite 157 159 160
             161:          69 Load 71(g_tTex1df4)
             162:     73(ptr) AccessChain 61 51
             163:      6(int) Load 162
             164:   21(fvec4) Load 150(lf4)
                              ImageWrite 161 163 164
                              Store 165(storeTemp) 167
             168:          83 Load 85(g_tTex1di4)
             169:     73(ptr) AccessChain 61 51
             170:      6(int) Load 169
             171:    7(ivec4) Load 165(storeTemp)
                              ImageWrite 168 170 171
                              Store 172(storeTemp) 176
             177:          91 Load 93(g_tTex1du4)
             178:     73(ptr) AccessChain 61 51
             179:      6(int) Load 178
             180:   14(ivec4) Load 172(storeTemp)
                              ImageWrite 177 179 180
             184:     73(ptr) AccessChain 61 51
             185:      6(int) Load 184
                              Store 183(coordTemp) 185
             187:          69 Load 71(g_tTex1df4)
             188:      6(int) Load 183(coordTemp)
             189:   21(fvec4) ImageRead 187 188
                              Store 186(storeTemp) 189
             191:   21(fvec4) Load 186(storeTemp)
             192:   21(fvec4) VectorTimesScalar 191 190
                              Store 186(storeTemp) 192
             193:          69 Load 71(g_tTex1df4)
             194:      6(int) Load 183(coordTemp)
             195:   21(fvec4) Load 186(storeTemp)
                              ImageWrite 193 194 195
             196:   21(fvec4) Load 186(storeTemp)
                              Store 181(val1) 196
             198:     73(ptr) AccessChain 61 51
             199:      6(int) Load 198
                              Store 197(coordTemp) 199
             201:          69 Load 71(g_tTex1df4)
             202:      6(int) Load 197(coordTemp)
             203:   21(fvec4) ImageRead 201 202
                              Store 200(storeTemp) 203
             205:   21(fvec4) Load 200(storeTemp)
             206:   21(fvec4) CompositeConstruct 204 204 204 204
             207:   21(fvec4) FSub 205 206
                              Store 200(storeTemp) 207
             208:          69 Load 71(g_tTex1df4)
             209:      6(int) Load 197(coordTemp)
             210:   21(fvec4) Load 200(storeTemp)
                              ImageWrite 208 209 210
             212:     73(ptr) AccessChain 61 51
             213:      6(int) Load 212
                              Store 211(coordTemp) 213
             215:          69 Load 71(g_tTex1df4)
             216:      6(int) Load 211(coordTemp)
             217:   21(fvec4) ImageRead 215 216
                              Store 214(storeTemp) 217
             219:   21(fvec4) Load 214(storeTemp)
             220:   21(fvec4) CompositeConstruct 218 218 218 218
             221:   21(fvec4) FAdd 219 220
                              Store 214(storeTemp) 221
             222:          69 Load 71(g_tTex1df4)
             223:      6(int) Load 211(coordTemp)
             224:   21(fvec4) Load 214(storeTemp)
                              ImageWrite 222 223 224
             226:     73(ptr) AccessChain 61 51
             227:      6(int) Load 226
                              Store 225(coordTemp) 227
             229:          83 Load 85(g_tTex1di4)
             230:      6(int) Load 225(coordTemp)
             231:    7(ivec4) ImageRead 229 230
                              Store 228(storeTemp) 231
             232:    7(ivec4) Load 228(storeTemp)
             233:    7(ivec4) CompositeConstruct 129 129 129 129
             234:    7(ivec4) SDiv 232 233
                              Store 228(storeTemp) 234
             235:          83 Load 85(g_tTex1di4)
             236:      6(int) Load 225(coordTemp)
             237:    7(ivec4) Load 228(storeTemp)
                              ImageWrite 235 236 237
             239:     73(ptr) AccessChain 61 51
             240:      6(int) Load 239
                              Store 238(coordTemp) 240
             242:          83 Load 85(g_tTex1di4)
             243:      6(int) Load 238(coordTemp)
             244:    7(ivec4) ImageRead 242 243
                              Store 241(storeTemp) 244
             245:    7(ivec4) Load 241(storeTemp)
             246:    7(ivec4) CompositeConstruct 129 129 129 129
             247:    7(ivec4) SMod 245 246
                              Store 241(storeTemp) 247
             248:          83 Load 85(g_tTex1di4)
             249:      6(int) Load 238(coordTemp)
             250:    7(ivec4) Load 241(storeTemp)
                              ImageWrite 248 249 250
             252:     73(ptr) AccessChain 61 51
             253:      6(int) Load 252
                              Store 251(coordTemp) 253
             255:          83 Load 85(g_tTex1di4)
             256:      6(int) Load 251(coordTemp)
             257:    7(ivec4) ImageRead 255 256
                              Store 254(storeTemp) 257
             259:    7(ivec4) Load 254(storeTemp)
             260:    7(ivec4) CompositeConstruct 258 258 258 258
             261:    7(ivec4) BitwiseAnd 259 260
                              Store 254(storeTemp) 261
             262:          83 Load 85(g_tTex1di4)
             263:      6(int) Load 251(coordTemp)
             264:    7(ivec4) Load 254(storeTemp)
                              ImageWrite 262 263 264
             266:     73(ptr) AccessChain 61 51
             267:      6(int) Load 266
                              Store 265(coordTemp) 267
             269:          83 Load 85(g_tTex1di4)
             270:      6(int) Load 265(coordTemp)
             271:    7(ivec4) ImageRead 269 270
                              Store 268(storeTemp) 271
             273:    7(ivec4) Load 268(storeTemp)
             274:    7(ivec4) CompositeConstruct 272 272 272 272
             275:    7(ivec4) BitwiseOr 273 274
                              Store 268(storeTemp) 275
             276:          83 Load 85(g_tTex1di4)
             277:      6(int) Load 265(coordTemp)
             278:    7(ivec4) Load 268(storeTemp)
                              ImageWrite 276 277 278
             280:     73(ptr) AccessChain 61 51
             281:      6(int) Load 280
                              Store 279(coordTemp) 281
             283:          83 Load 85(g_tTex1di4)
             284:      6(int) Load 279(coordTemp)
             285:    7(ivec4) ImageRead 283 284
                              Store 282(storeTemp) 285
             286:    7(ivec4) Load 282(storeTemp)
             287:    7(ivec4) CompositeConstruct 129 129 129 129
             288:    7(ivec4) ShiftLeftLogical 286 287
                              Store 282(storeTemp) 288
             289:          83 Load 85(g_tTex1di4)
             290:      6(int) Load 279(coordTemp)
             291:    7(ivec4) Load 282(storeTemp)
                              ImageWrite 289 290 291
             293:     73(ptr) AccessChain 61 51
             294:      6(int) Load 293
                              Store 292(coordTemp) 294
             296:          83 Load 85(g_tTex1di4)
             297:      6(int) Load 292(coordTemp)
             298:    7(ivec4) ImageRead 296 297
                              Store 295(storeTemp) 298
             299:    7(ivec4) Load 295(storeTemp)
             300:    7(ivec4) CompositeConstruct 129 129 129 129
             301:    7(ivec4) ShiftRightArithmetic 299 300
                              Store 295(storeTemp) 301
             302:          83 Load 85(g_tTex1di4)
             303:      6(int) Load 292(coordTemp)
             304:    7(ivec4) Load 295(storeTemp)
                              ImageWrite 302 303 304
             306:   21(fvec4) FunctionCall 40(SomeValue()
                              Store 305(storeTemp) 306
             307:          99 Load 101(g_tTex2df4)
             308:    104(ptr) AccessChain 61 103
             309:   57(ivec2) Load 308
             310:   21(fvec4) Load 305(storeTemp)
                              ImageWrite 307 309 310
             311:          99 Load 101(g_tTex2df4)
             312:    104(ptr) AccessChain 61 103
             313:   57(ivec2) Load 312
             314:   21(fvec4) Load 150(lf4)
                              ImageWrite 311 313 314
                              Store 315(storeTemp) 317
             318:         109 Load 111(g_tTex2di4)
             319:    104(ptr) AccessChain 61 103
             320:   57(ivec2) Load 319
             321:    7(ivec4) Load 315(storeTemp)
                              ImageWrite 318 320 321
                              Store 322(storeTemp) 324
             325:         117 Load 119(g_tTex2du4)
             326:    104(ptr) AccessChain 61 103
             327:   57(ivec2) Load 326
             328:   14(ivec4) Load 322(storeTemp)
                              ImageWrite 325 327 328
             330:   21(fvec4) FunctionCall 40(SomeValue()
                              Store 329(storeTemp) 330
             331:         125 Load 127(g_tTex3df4)
             332:    130(ptr) AccessChain 61 129
             333:   58(ivec3) Load 332
             334:   21(fvec4) Load 329(storeTemp)
                              ImageWrite 331 333 334
             335:         125 Load 127(g_tTex3df4)
             336:    130(ptr) AccessChain 61 129
             337:   58(ivec3) Load 336
             338:   21(fvec4) Load 150(lf4)
                              ImageWrite 335 337 338
                              Store 339(storeTemp) 342
             343:         135 Load 137(g_tTex3di4)
             344:    130(ptr) AccessChain 61 129
             345:   58(ivec3) Load 344
             346:    7(ivec4) Load 339(storeTemp)
                              ImageWrite 343 345 346
                              Store 347(storeTemp) 349
             350:         143 Load 145(g_tTex3du4)
             351:    130(ptr) AccessChain 61 129
             352:   58(ivec3) Load 351
             353:   14(ivec4) Load 347(storeTemp)
                              ImageWrite 350 352 353
             354:          69 Load 71(g_tTex1df4)
             355:     73(ptr) AccessChain 61 51
             356:      6(int) Load 355
             357:   21(fvec4) ImageRead 354 356
                              Store 358(param) 357
             359:   21(fvec4) FunctionCall 25(Fn1(vf4;) 358(param)
             360:          83 Load 85(g_tTex1di4)
             361:     73(ptr) AccessChain 61 51
             362:      6(int) Load 361
             363:    7(ivec4) ImageRead 360 362
                              Store 364(param) 363
             365:    7(ivec4) FunctionCall 11(Fn1(vi4;) 364(param)
             366:          91 Load 93(g_tTex1du4)
             367:     73(ptr) AccessChain 61 51
             368:      6(int) Load 367
             369:   14(ivec4) ImageRead 366 368
                              Store 370(param) 369
             371:   14(ivec4) FunctionCall 18(Fn1(vu4;) 370(param)
             374:           2 FunctionCall 37(Fn2(vf4;) 373(param)
             375:   21(fvec4) Load 373(param)
                              Store 372(tempArg) 375
             376:          69 Load 71(g_tTex1df4)
             377:     73(ptr) AccessChain 61 51
             378:      6(int) Load 377
             379:   21(fvec4) Load 372(tempArg)
                              ImageWrite 376 378 379
             382:           2 FunctionCall 29(Fn2(vi4;) 381(param)
             383:    7(ivec4) Load 381(param)
                              Store 380(tempArg) 383
             384:          83 Load 85(g_tTex1di4)
             385:     73(ptr) AccessChain 61 51
             386:      6(int) Load 385
             387:    7(ivec4) Load 380(tempArg)
                              ImageWrite 384 386 387
             390:           2 FunctionCall 33(Fn2(vu4;) 389(param)
             391:   14(ivec4) Load 389(param)
                              Store 388(tempArg) 391
             392:          91 Load 93(g_tTex1du4)
             393:     73(ptr) AccessChain 61 51
             394:      6(int) Load 393
             395:   14(ivec4) Load 388(tempArg)
                              ImageWrite 392 394 395
             397:     73(ptr) AccessChain 61 51
             398:      6(int) Load 397
                              Store 396(coordTemp) 398
             400:          69 Load 71(g_tTex1df4)
             401:      6(int) Load 396(coordTemp)
             402:   21(fvec4) ImageRead 400 401
                              Store 399(storeTemp) 402
             403:   21(fvec4) Load 399(storeTemp)
             405:   21(fvec4) CompositeConstruct 404 404 404 404
             406:   21(fvec4) FAdd 403 405
                              Store 399(storeTemp) 406
             407:          69 Load 71(g_tTex1df4)
             408:      6(int) Load 396(coordTemp)
             409:   21(fvec4) Load 399(storeTemp)
                              ImageWrite 407 408 409
             411:     73(ptr) AccessChain 61 51
             412:      6(int) Load 411
                              Store 410(coordTemp) 412
             414:          83 Load 85(g_tTex1di4)
             415:      6(int) Load 410(coordTemp)
             416:    7(ivec4) ImageRead 414 415
                              Store 413(storeTemp) 416
             417:    7(ivec4) Load 413(storeTemp)
             418:    7(ivec4) CompositeConstruct 103 103 103 103
             419:    7(ivec4) IAdd 417 418
                              Store 413(storeTemp) 419
             420:          83 Load 85(g_tTex1di4)
             421:      6(int) Load 410(coordTemp)
             422:    7(ivec4) Load 413(storeTemp)
                              ImageWrite 420 421 422
             424:     73(ptr) AccessChain 61 51
             425:      6(int) Load 424
                              Store 423(coordTemp) 425
             427:          91 Load 93(g_tTex1du4)
             428:      6(int) Load 423(coordTemp)
             429:   14(ivec4) ImageRead 427 428
                              Store 426(storeTemp) 429
             430:   14(ivec4) Load 426(storeTemp)
             431:    7(ivec4) CompositeConstruct 103 103 103 103
             432:   14(ivec4) IAdd 430 431
                              Store 426(storeTemp) 432
             433:          91 Load 93(g_tTex1du4)
             434:      6(int) Load 423(coordTemp)
             435:   14(ivec4) Load 426(storeTemp)
                              ImageWrite 433 434 435
             437:     73(ptr) AccessChain 61 51
             438:      6(int) Load 437
                              Store 436(coordTemp) 438
             440:          69 Load 71(g_tTex1df4)
             441:      6(int) Load 436(coordTemp)
             442:   21(fvec4) ImageRead 440 441
                              Store 439(storeTemp) 442
             443:   21(fvec4) Load 439(storeTemp)
             444:   21(fvec4) CompositeConstruct 404 404 404 404
             445:   21(fvec4) FSub 443 444
                              Store 439(storeTemp) 445
             446:          69 Load 71(g_tTex1df4)
             447:      6(int) Load 436(coordTemp)
             448:   21(fvec4) Load 439(storeTemp)
                              ImageWrite 446 447 448
             450:     73(ptr) AccessChain 61 51
             451:      6(int) Load 450
                              Store 449(coordTemp) 451
             453:          83 Load 85(g_tTex1di4)
             454:      6(int) Load 449(coordTemp)
             455:    7(ivec4) ImageRead 453 454
                              Store 452(storeTemp) 455
             456:    7(ivec4) Load 452(storeTemp)
             457:    7(ivec4) CompositeConstruct 103 103 103 103
             458:    7(ivec4) ISub 456 457
                              Store 452(storeTemp) 458
             459:          83 Load 85(g_tTex1di4)
             460:      6(int) Load 449(coordTemp)
             461:    7(ivec4) Load 452(storeTemp)
                              ImageWrite 459 460 461
             463:     73(ptr) AccessChain 61 51
             464:      6(int) Load 463
                              Store 462(coordTemp) 464
             466:          91 Load 93(g_tTex1du4)
             467:      6(int) Load 462(coordTemp)
             468:   14(ivec4) ImageRead 466 467
                              Store 465(storeTemp) 468
             469:   14(ivec4) Load 465(storeTemp)
             470:    7(ivec4) CompositeConstruct 103 103 103 103
             471:   14(ivec4) ISub 469 470
                              Store 465(storeTemp) 471
             472:          91 Load 93(g_tTex1du4)
             473:      6(int) Load 462(coordTemp)
             474:   14(ivec4) Load 465(storeTemp)
                              ImageWrite 472 473 474
             476:     73(ptr) AccessChain 61 51
             477:      6(int) Load 476
                              Store 475(coordTemp) 477
             479:          69 Load 71(g_tTex1df4)
             480:      6(int) Load 475(coordTemp)
             481:   21(fvec4) ImageRead 479 480
                              Store 478(storeTempPre) 481
             483:   21(fvec4) Load 478(storeTempPre)
                              Store 482(storeTempPost) 483
             484:   21(fvec4) Load 482(storeTempPost)
             485:   21(fvec4) CompositeConstruct 404 404 404 404
             486:   21(fvec4) FAdd 484 485
                              Store 482(storeTempPost) 486
             487:          69 Load 71(g_tTex1df4)
             488:      6(int) Load 475(coordTemp)
             489:   21(fvec4) Load 482(storeTempPost)
                              ImageWrite 487 488 489
             491:     73(ptr) AccessChain 61 51
             492:      6(int) Load 491
                              Store 490(coordTemp) 492
             494:          91 Load 93(g_tTex1du4)
             495:      6(int) Load 490(coordTemp)
             496:   14(ivec4) ImageRead 494 495
                              Store 493(storeTempPre) 496
             498:   14(ivec4) Load 493(storeTempPre)
                              Store 497(storeTempPost) 498
             499:   14(ivec4) Load 497(storeTempPost)
             500:    7(ivec4) CompositeConstruct 103 103 103 103
             501:   14(ivec4) ISub 499 500
                              Store 497(storeTempPost) 501
             502:          91 Load 93(g_tTex1du4)
             503:      6(int) Load 490(coordTemp)
             504:   14(ivec4) Load 497(storeTempPost)
                              ImageWrite 502 503 504
             506:     73(ptr) AccessChain 61 51
             507:      6(int) Load 506
                              Store 505(coordTemp) 507
             509:          83 Load 85(g_tTex1di4)
             510:      6(int) Load 505(coordTemp)
             511:    7(ivec4) ImageRead 509 510
                              Store 508(storeTempPre) 511
             513:    7(ivec4) Load 508(storeTempPre)
                              Store 512(storeTempPost) 513
             514:    7(ivec4) Load 512(storeTempPost)
             515:    7(ivec4) CompositeConstruct 103 103 103 103
             516:    7(ivec4) IAdd 514 515
                              Store 512(storeTempPost) 516
             517:          83 Load 85(g_tTex1di4)
             518:      6(int) Load 505(coordTemp)
             519:    7(ivec4) Load 512(storeTempPost)
                              ImageWrite 517 518 519
             521:     73(ptr) AccessChain 61 51
             522:      6(int) Load 521
                              Store 520(coordTemp) 522
             524:          69 Load 71(g_tTex1df4)
             525:      6(int) Load 520(coordTemp)
             526:   21(fvec4) ImageRead 524 525
                              Store 523(storeTempPre) 526
             528:   21(fvec4) Load 523(storeTempPre)
                              Store 527(storeTempPost) 528
             529:   21(fvec4) Load 527(storeTempPost)
             530:   21(fvec4) CompositeConstruct 404 404 404 404
             531:   21(fvec4) FSub 529 530
                              Store 527(storeTempPost) 531
             532:          69 Load 71(g_tTex1df4)
             533:      6(int) Load 520(coordTemp)
             534:   21(fvec4) Load 527(storeTempPost)
                              ImageWrite 532 533 534
             536:     73(ptr) AccessChain 61 51
             537:      6(int) Load 536
                              Store 535(coordTemp) 537
             539:          83 Load 85(g_tTex1di4)
             540:      6(int) Load 535(coordTemp)
             541:    7(ivec4) ImageRead 539 540
                              Store 538(storeTempPre) 541
             543:    7(ivec4) Load 538(storeTempPre)
                              Store 542(storeTempPost) 543
             544:    7(ivec4) Load 542(storeTempPost)
             545:    7(ivec4) CompositeConstruct 103 103 103 103
             546:    7(ivec4) IAdd 544 545
                              Store 542(storeTempPost) 546
             547:          83 Load 85(g_tTex1di4)
             548:      6(int) Load 535(coordTemp)
             549:    7(ivec4) Load 542(storeTempPost)
                              ImageWrite 547 548 549
             551:     73(ptr) AccessChain 61 51
             552:      6(int) Load 551
                              Store 550(coordTemp) 552
             554:          91 Load 93(g_tTex1du4)
             555:      6(int) Load 550(coordTemp)
             556:   14(ivec4) ImageRead 554 555
                              Store 553(storeTempPre) 556
             558:   14(ivec4) Load 553(storeTempPre)
                              Store 557(storeTempPost) 558
             559:   14(ivec4) Load 557(storeTempPost)
             560:    7(ivec4) CompositeConstruct 103 103 103 103
             561:   14(ivec4) ISub 559 560
                              Store 557(storeTempPost) 561
             562:          91 Load 93(g_tTex1du4)
             563:      6(int) Load 550(coordTemp)
             564:   14(ivec4) Load 557(storeTempPost)
                              ImageWrite 562 563 564
             566:          99 Load 101(g_tTex2df4)
             568:   21(fvec4) ImageRead 566 567
                              Store 565(storeTemp) 568
             569:          69 Load 71(g_tTex1df4)
             570:   21(fvec4) Load 565(storeTemp)
                              ImageWrite 569 103 570
             575:     22(ptr) AccessChain 573(psout) 51
                              Store 575 574
             578:     22(ptr) AccessChain 573(psout) 51
             579:   21(fvec4) Load 578
                              Store 577(Color) 579
                              Return
                              FunctionEnd
    11(Fn1(vi4;):    7(ivec4) Function None 9
           10(x):      8(ptr) FunctionParameter
              12:             Label
              42:    7(ivec4) Load 10(x)
                              ReturnValue 42
                              FunctionEnd
    18(Fn1(vu4;):   14(ivec4) Function None 16
           17(x):     15(ptr) FunctionParameter
              19:             Label
              45:   14(ivec4) Load 17(x)
                              ReturnValue 45
                              FunctionEnd
    25(Fn1(vf4;):   21(fvec4) Function None 23
           24(x):     22(ptr) FunctionParameter
              26:             Label
              48:   21(fvec4) Load 24(x)
                              ReturnValue 48
                              FunctionEnd
    29(Fn2(vi4;):           2 Function None 27
           28(x):      8(ptr) FunctionParameter
              30:             Label
                              Store 28(x) 52
                              Return
                              FunctionEnd
    33(Fn2(vu4;):           2 Function None 31
           32(x):     15(ptr) FunctionParameter
              34:             Label
                              Store 32(x) 54
                              Return
                              FunctionEnd
    37(Fn2(vf4;):           2 Function None 35
           36(x):     22(ptr) FunctionParameter
              38:             Label
                              Store 36(x) 56
                              Return
                              FunctionEnd
  40(SomeValue():   21(fvec4) Function None 39
              41:             Label
              64:     63(ptr) AccessChain 61 62
              65:    7(ivec4) Load 64
              66:   21(fvec4) ConvertSToF 65
                              ReturnValue 66
                              FunctionEnd
