430.comp
Warning, version 430 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:4: 'local_size' : cannot change previously set size 
ERROR: 0:5: 'local_size' : too large; see gl_MaxComputeWorkGroupSize 
ERROR: 0:23: 'values' : only the last member of a buffer block can be run-time sized 
ERROR: 0:43: 'in' : global storage input qualifier cannot be used in a compute shader 
ERROR: 0:43: 'location qualifier on input' : not supported in this stage: compute
ERROR: 0:44: 'in' : global storage input qualifier cannot be used in a compute shader 
ERROR: 0:45: 'out' : global storage output qualifier cannot be used in a compute shader 
ERROR: 0:48: 'shared' : cannot apply layout qualifiers to a shared variable 
ERROR: 0:48: 'location' : can only appy to uniform, buffer, in, or out storage qualifiers 
ERROR: 0:49: 'shared' :  cannot initialize this type of qualifier  
ERROR: 0:51: 'local_size' : can only apply to 'in' 
ERROR: 0:51: 'local_size' : can only apply to 'in' 
ERROR: 0:51: 'local_size' : can only apply to 'in' 
ERROR: 0:65: 'assign' :  l-value required "ro" (can't modify a readonly buffer)
ERROR: 0:77: '=' :  cannot convert from 'temp double' to 'temp int'
ERROR: 0:81: 'input block' : not supported in this stage: compute
ERROR: 0:85: 'output block' : not supported in this stage: compute
ERROR: 17 compilation errors.  No code generated.


Shader version: 430
local_size = (2, 1, 4096)
ERROR: node is still EOpNull!
0:27  Function Definition: main( (global void)
0:27    Function Parameters: 
0:29    Sequence
0:29      Barrier (global void)
0:30      MemoryBarrier (global void)
0:31      MemoryBarrierAtomicCounter (global void)
0:32      MemoryBarrierBuffer (global void)
0:33      MemoryBarrierShared (global void)
0:34      MemoryBarrierImage (global void)
0:35      GroupMemoryBarrier (global void)
0:36      move second child to first child (temp int)
0:36        value: direct index for structure (layout(column_major shared ) buffer int)
0:36          'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:36          Constant:
0:36            0 (const uint)
0:36        Convert float to int (temp int)
0:36          indirect index (layout(column_major shared ) temp float)
0:36            values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
0:36              'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:36              Constant:
0:36                1 (const uint)
0:36            'gl_LocalInvocationIndex' (in uint LocalInvocationIndex)
0:39      Test condition and select (temp void)
0:39        Condition
0:39        Compare Greater Than (temp bool)
0:39          'a' (temp int)
0:39          Constant:
0:39            10 (const int)
0:39        true case
0:40        Barrier (global void)
0:63  Function Definition: foo( (global void)
0:63    Function Parameters: 
0:65    Sequence
0:65      move second child to first child (temp float)
0:65        direct index (layout(column_major shared ) temp float)
0:65          values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
0:65            'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:65            Constant:
0:65              1 (const int)
0:65          Constant:
0:65            2 (const int)
0:65        Constant:
0:65          4.700000
0:66      array length (temp int)
0:66        values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
0:66          'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:66          Constant:
0:66            1 (const int)
0:67      Barrier (global void)
0:72  Function Definition: fooaoeu( (global void)
0:72    Function Parameters: 
0:73    Sequence
0:73      Sequence
0:73        move second child to first child (temp 2-component vector of int)
0:73          'storePos' (temp 2-component vector of int)
0:73          Convert uint to int (temp 2-component vector of int)
0:73            vector swizzle (temp 2-component vector of uint)
0:73              'gl_GlobalInvocationID' (in 3-component vector of uint GlobalInvocationID)
0:73              Sequence
0:73                Constant:
0:73                  0 (const int)
0:73                Constant:
0:73                  1 (const int)
0:74      Sequence
0:74        move second child to first child (temp double)
0:74          'localCoef' (temp double)
0:74          Convert float to double (temp double)
0:74            length (global float)
0:74              divide (temp 2-component vector of float)
0:74                Convert int to float (temp 2-component vector of float)
0:74                  subtract (temp 2-component vector of int)
0:74                    Convert uint to int (temp 2-component vector of int)
0:74                      vector swizzle (temp 2-component vector of uint)
0:74                        'gl_LocalInvocationID' (in 3-component vector of uint LocalInvocationID)
0:74                        Sequence
0:74                          Constant:
0:74                            0 (const int)
0:74                          Constant:
0:74                            1 (const int)
0:74                    Constant:
0:74                      8 (const int)
0:74                Constant:
0:74                  8.000000
0:75      Sequence
0:75        move second child to first child (temp 4-component vector of double)
0:75          'aa' (temp 4-component vector of double)
0:75          Constant:
0:75            0.400000
0:75            0.200000
0:75            0.300000
0:75            0.400000
0:76      Sequence
0:76        move second child to first child (temp double)
0:76          'globalCoef' (temp double)
0:76          Constant:
0:76            1.000000
0:78      Sequence
0:78        move second child to first child (temp double)
0:78          'di' (temp double)
0:78          Convert int to double (temp double)
0:78            'i' (temp int)
0:?   Linker Objects
0:?     'gl_WorkGroupSize' (const 3-component vector of uint WorkGroupSize)
0:?       2 (const uint)
0:?       1 (const uint)
0:?       4096 (const uint)
0:?     'total' (const int)
0:?       66592 (const int)
0:?     'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:?     'invalid' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer implicitly-sized array of float values, layout(column_major shared ) buffer int value})
0:?     'v3' (layout(location=2 ) in 3-component vector of float)
0:?     'f' (in float)
0:?     'fo' (out float)
0:?     's' (shared 4-component vector of float)
0:?     'sl' (layout(location=2 ) shared 4-component vector of float)
0:?     'fs' (shared float)
0:?     'arrX' (global 2-element array of int)
0:?     'arrY' (global 1-element array of int)
0:?     'arrZ' (global 4096-element array of int)
0:?     'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:?     'roll' (uniform double)
0:?     'destTex' (writeonly uniform image2D)
0:?     'inbi' (in block{in int a})
0:?     'outbi' (out block{out int a})


Linked compute stage:


Shader version: 430
local_size = (2, 1, 4096)
ERROR: node is still EOpNull!
0:27  Function Definition: main( (global void)
0:27    Function Parameters: 
0:29    Sequence
0:29      Barrier (global void)
0:30      MemoryBarrier (global void)
0:31      MemoryBarrierAtomicCounter (global void)
0:32      MemoryBarrierBuffer (global void)
0:33      MemoryBarrierShared (global void)
0:34      MemoryBarrierImage (global void)
0:35      GroupMemoryBarrier (global void)
0:36      move second child to first child (temp int)
0:36        value: direct index for structure (layout(column_major shared ) buffer int)
0:36          'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:36          Constant:
0:36            0 (const uint)
0:36        Convert float to int (temp int)
0:36          indirect index (layout(column_major shared ) temp float)
0:36            values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
0:36              'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:36              Constant:
0:36                1 (const uint)
0:36            'gl_LocalInvocationIndex' (in uint LocalInvocationIndex)
0:39      Test condition and select (temp void)
0:39        Condition
0:39        Compare Greater Than (temp bool)
0:39          'a' (temp int)
0:39          Constant:
0:39            10 (const int)
0:39        true case
0:40        Barrier (global void)
0:63  Function Definition: foo( (global void)
0:63    Function Parameters: 
0:65    Sequence
0:65      move second child to first child (temp float)
0:65        direct index (layout(column_major shared ) temp float)
0:65          values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
0:65            'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:65            Constant:
0:65              1 (const int)
0:65          Constant:
0:65            2 (const int)
0:65        Constant:
0:65          4.700000
0:66      array length (temp int)
0:66        values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of float)
0:66          'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:66          Constant:
0:66            1 (const int)
0:67      Barrier (global void)
0:72  Function Definition: fooaoeu( (global void)
0:72    Function Parameters: 
0:73    Sequence
0:73      Sequence
0:73        move second child to first child (temp 2-component vector of int)
0:73          'storePos' (temp 2-component vector of int)
0:73          Convert uint to int (temp 2-component vector of int)
0:73            vector swizzle (temp 2-component vector of uint)
0:73              'gl_GlobalInvocationID' (in 3-component vector of uint GlobalInvocationID)
0:73              Sequence
0:73                Constant:
0:73                  0 (const int)
0:73                Constant:
0:73                  1 (const int)
0:74      Sequence
0:74        move second child to first child (temp double)
0:74          'localCoef' (temp double)
0:74          Convert float to double (temp double)
0:74            length (global float)
0:74              divide (temp 2-component vector of float)
0:74                Convert int to float (temp 2-component vector of float)
0:74                  subtract (temp 2-component vector of int)
0:74                    Convert uint to int (temp 2-component vector of int)
0:74                      vector swizzle (temp 2-component vector of uint)
0:74                        'gl_LocalInvocationID' (in 3-component vector of uint LocalInvocationID)
0:74                        Sequence
0:74                          Constant:
0:74                            0 (const int)
0:74                          Constant:
0:74                            1 (const int)
0:74                    Constant:
0:74                      8 (const int)
0:74                Constant:
0:74                  8.000000
0:75      Sequence
0:75        move second child to first child (temp 4-component vector of double)
0:75          'aa' (temp 4-component vector of double)
0:75          Constant:
0:75            0.400000
0:75            0.200000
0:75            0.300000
0:75            0.400000
0:76      Sequence
0:76        move second child to first child (temp double)
0:76          'globalCoef' (temp double)
0:76          Constant:
0:76            1.000000
0:78      Sequence
0:78        move second child to first child (temp double)
0:78          'di' (temp double)
0:78          Convert int to double (temp double)
0:78            'i' (temp int)
0:?   Linker Objects
0:?     'gl_WorkGroupSize' (const 3-component vector of uint WorkGroupSize)
0:?       2 (const uint)
0:?       1 (const uint)
0:?       4096 (const uint)
0:?     'total' (const int)
0:?       66592 (const int)
0:?     'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:?     'invalid' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer implicitly-sized array of float values, layout(column_major shared ) buffer int value})
0:?     'v3' (layout(location=2 ) in 3-component vector of float)
0:?     'f' (in float)
0:?     'fo' (out float)
0:?     's' (shared 4-component vector of float)
0:?     'sl' (layout(location=2 ) shared 4-component vector of float)
0:?     'fs' (shared float)
0:?     'arrX' (global 2-element array of int)
0:?     'arrY' (global 1-element array of int)
0:?     'arrZ' (global 4096-element array of int)
0:?     'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:?     'roll' (uniform double)
0:?     'destTex' (writeonly uniform image2D)
0:?     'inbi' (in block{in int a})
0:?     'outbi' (out block{out int a})

