blob: cec584af7f16a35c915f29d2ae685dbc1cd0e0b9 [file] [log] [blame]
310.comp
Warning, version 310 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:39: 'in' : global storage input qualifier cannot be used in a compute shader
ERROR: 0:39: 'location qualifier on input' : not supported in this stage: compute
ERROR: 0:40: 'in' : global storage input qualifier cannot be used in a compute shader
ERROR: 0:41: 'out' : global storage output qualifier cannot be used in a compute shader
ERROR: 0:44: 'shared' : cannot apply layout qualifiers to a shared variable
ERROR: 0:44: 'location' : can only appy to uniform, buffer, in, or out storage qualifiers
ERROR: 0:45: 'shared' : cannot initialize this type of qualifier
ERROR: 0:47: 'local_size' : can only apply to 'in'
ERROR: 0:47: 'local_size' : can only apply to 'in'
ERROR: 0:47: 'local_size' : can only apply to 'in'
ERROR: 0:61: 'assign' : l-value required "ro" (can't modify a readonly buffer)
ERROR: 0:66: 'buffer' : buffers can be declared only as blocks
ERROR: 0:68: 'sampler/image' : type requires declaration of default precision qualifier
ERROR: 0:76: '' : image variables not declared 'writeonly' must have a format layout qualifier
ERROR: 0:87: 'imageAtomicCompSwap' : required extension not requested: GL_OES_shader_image_atomic
ERROR: 0:88: 'imageAtomicAdd' : required extension not requested: GL_OES_shader_image_atomic
ERROR: 0:89: 'imageAtomicMin' : required extension not requested: GL_OES_shader_image_atomic
ERROR: 0:89: 'readonly' : argument cannot drop memory qualifier when passed to formal parameter
ERROR: 0:89: 'imageAtomicMin' : only supported on image with format r32i or r32ui
ERROR: 0:90: 'imageAtomicMax' : no matching overloaded function found
ERROR: 0:94: 'writeonly' : argument cannot drop memory qualifier when passed to formal parameter
ERROR: 0:97: '' : memory qualifiers cannot be used on this type
ERROR: 0:98: '' : memory qualifiers cannot be used on this type
ERROR: 0:114: 'image load-store format' : not supported with this profile: es
ERROR: 0:114: 'rg8i' : does not apply to unsigned integer images
ERROR: 0:115: 'rgba32i' : does not apply to floating point images
ERROR: 0:116: 'rgba32f' : does not apply to unsigned integer images
ERROR: 0:117: 'image load-store format' : not supported with this profile: es
ERROR: 0:117: 'r8_snorm' : does not apply to signed integer images
ERROR: 0:118: 'rgba32ui' : does not apply to signed integer images
ERROR: 0:119: 'image load-store format' : not supported with this profile: es
ERROR: 0:119: 'r8ui' : does not apply to signed integer images
ERROR: 0:128: 'atomic_uint' : samplers and atomic_uints cannot be output parameters
ERROR: 0:130: 'return' : type does not match, or is not convertible to, the function's return type
ERROR: 0:136: 'atomic_uint' : atomic_uints can only be used in uniform variables or function parameters: non_uniform_counter
ERROR: 0:136: 'atomic_uint' : layout(binding=X) is required
ERROR: 0:141: 'atomic_uint' : atomic counters can only be highp
ERROR: 0:141: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:143: 'binding' : atomic_uint binding is too large; see gl_MaxAtomicCounterBindings
ERROR: 0:149: '[]' : scalar integer expression required
ERROR: 0:166: 'precision' : can only apply highp to atomic_uint
ERROR: 0:168: 'precise' : Reserved word.
ERROR: 0:170: 'dmat2x4' : Reserved word.
ERROR: 0:170: 'double matrix' : not supported with this profile: es
ERROR: 0:171: 'samplerCubeArray' : Reserved word.
ERROR: 0:171: 'sampler/image' : type requires declaration of default precision qualifier
ERROR: 0:172: 'iimage2DRect' : Reserved word.
ERROR: 0:172: 'sampler/image' : type requires declaration of default precision qualifier
ERROR: 0:172: '' : image variables not declared 'writeonly' must have a format layout qualifier
ERROR: 0:173: 'image2DMS' : Reserved word.
ERROR: 0:173: '' : image variables not declared 'writeonly' must have a format layout qualifier
ERROR: 0:174: 'uimage2DMSArray' : Reserved word.
ERROR: 0:174: 'sampler/image' : type requires declaration of default precision qualifier
ERROR: 0:174: '' : image variables not declared 'writeonly' must have a format layout qualifier
ERROR: 0:181: 'rgba32f' : format requires readonly or writeonly memory qualifier
ERROR: 0:182: 'rgba8i' : format requires readonly or writeonly memory qualifier
ERROR: 0:183: 'rgba16ui' : format requires readonly or writeonly memory qualifier
ERROR: 0:194: 'assign' : can't read from writeonly object: wo
ERROR: 0:195: 'initializer' : can't read from writeonly object: wo
ERROR: 0:196: '++' : can't read from writeonly object: wo
ERROR: 0:197: '--' : can't read from writeonly object: wo
ERROR: 0:198: '+' : can't read from writeonly object: wo
ERROR: 0:199: '-' : can't read from writeonly object: wo
ERROR: 0:201: ':' : can't read from writeonly object: wo
ERROR: 0:202: ':' : can't read from writeonly object: wo
ERROR: 0:203: '==' : can't read from writeonly object: wo
ERROR: 0:205: '>=' : can't read from writeonly object: wo
ERROR: 0:207: 'constructor' : can't read from writeonly object: wo
ERROR: 0:208: '~' : can't read from writeonly object: wo
ERROR: 0:221: 'assign' : can't read from writeonly object: wo
ERROR: 0:222: '~' : can't read from writeonly object: wo
ERROR: 0:227: 'input block' : not supported in this stage: compute
ERROR: 0:231: 'output block' : not supported in this stage: compute
WARNING: 0:235: 't__' : identifiers containing consecutive underscores ("__") are reserved
WARNING: 0:238: '#define' : names containing consecutive underscores are reserved: __D
ERROR: 76 compilation errors. No code generated.
Shader version: 310
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 highp int)
0:36 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:36 'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:36 Constant:
0:36 0 (const uint)
0:36 Convert float to int (temp highp int)
0:36 indirect index (layout(column_major shared ) temp highp float)
0:36 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:36 'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:36 Constant:
0:36 1 (const uint)
0:36 'gl_LocalInvocationIndex' (in highp uint LocalInvocationIndex)
0:59 Function Definition: foo( (global void)
0:59 Function Parameters:
0:61 Sequence
0:61 move second child to first child (temp highp float)
0:61 direct index (layout(column_major shared ) temp highp float)
0:61 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:61 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:61 Constant:
0:61 1 (const int)
0:61 Constant:
0:61 2 (const int)
0:61 Constant:
0:61 4.700000
0:62 array length (temp highp int)
0:62 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:62 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:62 Constant:
0:62 1 (const int)
0:63 Pre-Increment (temp highp 4-component vector of float)
0:63 's' (shared highp 4-component vector of float)
0:84 Function Definition: qux( (global void)
0:84 Function Parameters:
0:86 Sequence
0:86 Sequence
0:86 move second child to first child (temp highp int)
0:86 'i' (temp highp int)
0:86 Constant:
0:86 4 (const int)
0:87 Function Call: imageAtomicCompSwap(iI21;vi2;i1;i1; (global highp int)
0:87 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:87 Construct ivec2 (temp 2-component vector of int)
0:87 'i' (temp highp int)
0:87 'i' (temp highp int)
0:87 'i' (temp highp int)
0:87 'i' (temp highp int)
0:88 Function Call: imageAtomicAdd(uI21;vi2;u1; (global highp uint)
0:88 'uimg2D' (layout(r32ui ) uniform highp uimage2D)
0:88 Construct ivec2 (temp 2-component vector of int)
0:88 'i' (temp highp int)
0:88 'i' (temp highp int)
0:88 Convert int to uint (temp uint)
0:88 'i' (temp highp int)
0:89 Function Call: imageAtomicMin(iI21;vi2;i1; (global highp int)
0:89 'iimg2Drgba' (layout(rgba32i ) readonly uniform highp iimage2D)
0:89 Construct ivec2 (temp 2-component vector of int)
0:89 'i' (temp highp int)
0:89 'i' (temp highp int)
0:89 'i' (temp highp int)
0:90 Constant:
0:90 0.000000
0:91 Sequence
0:91 move second child to first child (temp highp 4-component vector of int)
0:91 'pos' (temp highp 4-component vector of int)
0:91 Function Call: imageLoad(iI21;vi2; (global highp 4-component vector of int)
0:91 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:91 Construct ivec2 (temp 2-component vector of int)
0:91 'i' (temp highp int)
0:91 'i' (temp highp int)
0:92 Function Call: imageStore(iIA21;vi3;vi4; (global highp void)
0:92 'ii2da' (writeonly uniform highp iimage2DArray)
0:92 Construct ivec3 (temp 3-component vector of int)
0:92 'i' (temp highp int)
0:92 'i' (temp highp int)
0:92 'i' (temp highp int)
0:92 Constant:
0:92 0 (const int)
0:92 0 (const int)
0:92 0 (const int)
0:92 0 (const int)
0:93 Function Call: imageLoad(I21;vi2; (global highp 4-component vector of float)
0:93 'img2Drgba' (layout(rgba32f ) readonly uniform lowp image2D)
0:93 Construct ivec2 (temp 2-component vector of int)
0:93 'i' (temp highp int)
0:93 'i' (temp highp int)
0:94 Function Call: imageLoad(iIA21;vi3; (global highp 4-component vector of int)
0:94 'ii2da' (writeonly uniform highp iimage2DArray)
0:94 Construct ivec3 (temp 3-component vector of int)
0:94 'i' (temp highp int)
0:94 'i' (temp highp int)
0:94 'i' (temp highp int)
0:100 Function Definition: passr(iI21; (global void)
0:100 Function Parameters:
0:100 'image' (coherent readonly in highp iimage2D)
0:107 Function Definition: passrc( (global void)
0:107 Function Parameters:
0:109 Sequence
0:109 Function Call: passr(iI21; (global void)
0:109 'qualim1' (layout(r32i ) coherent readonly uniform highp iimage2D)
0:110 Function Call: passr(iI21; (global void)
0:110 'qualim2' (layout(r32i ) coherent restrict readonly uniform highp iimage2D)
0:111 Function Call: passr(iI21; (global void)
0:111 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:123 Function Definition: func(au1; (global highp uint)
0:123 Function Parameters:
0:123 'c' (in highp atomic_uint)
0:125 Sequence
0:125 Branch: Return with expression
0:125 AtomicCounterIncrement (global highp uint)
0:125 'c' (in highp atomic_uint)
0:128 Function Definition: func2(au1; (global highp uint)
0:128 Function Parameters:
0:128 'c' (out highp atomic_uint)
0:130 Sequence
0:130 Branch: Return with expression
0:130 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:131 Branch: Return with expression
0:131 AtomicCounter (global highp uint)
0:131 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:134 Function Definition: mainAC( (global void)
0:134 Function Parameters:
0:? Sequence
0:137 Sequence
0:137 move second child to first child (temp highp uint)
0:137 'val' (temp highp uint)
0:137 AtomicCounter (global highp uint)
0:137 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:138 AtomicCounterDecrement (global highp uint)
0:138 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:146 Function Definition: opac( (global void)
0:146 Function Parameters:
0:? Sequence
0:149 indirect index (temp highp int)
0:149 'a' (temp 3-element array of highp int)
0:149 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:150 direct index (layout(binding=2 offset=4 ) temp highp atomic_uint)
0:150 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
0:150 Constant:
0:150 2 (const int)
0:151 indirect index (layout(binding=2 offset=4 ) temp highp atomic_uint)
0:151 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
0:151 'i' (uniform highp int)
0:157 Function Definition: atoms( (global void)
0:157 Function Parameters:
0:159 Sequence
0:159 Sequence
0:159 move second child to first child (temp highp int)
0:159 'origi' (temp highp int)
0:159 AtomicAdd (global highp int)
0:159 'atomi' (shared highp int)
0:159 Constant:
0:159 3 (const int)
0:160 Sequence
0:160 move second child to first child (temp highp uint)
0:160 'origu' (temp highp uint)
0:160 AtomicAnd (global highp uint)
0:160 'atomu' (shared highp uint)
0:160 Constant:
0:160 7 (const uint)
0:161 move second child to first child (temp highp int)
0:161 'origi' (temp highp int)
0:161 AtomicExchange (global highp int)
0:161 'atomi' (shared highp int)
0:161 Constant:
0:161 4 (const int)
0:162 move second child to first child (temp highp uint)
0:162 'origu' (temp highp uint)
0:162 AtomicCompSwap (global highp uint)
0:162 'atomu' (shared highp uint)
0:162 Constant:
0:162 10 (const uint)
0:162 Constant:
0:162 8 (const uint)
0:191 Function Definition: foowo( (global void)
0:191 Function Parameters:
0:? Sequence
0:194 move second child to first child (temp highp float)
0:194 'g' (temp highp float)
0:194 direct index (layout(column_major shared ) temp highp float)
0:194 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:194 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:194 Constant:
0:194 1 (const int)
0:194 Constant:
0:194 2 (const int)
0:195 Sequence
0:195 move second child to first child (temp highp float)
0:195 'f' (temp highp float)
0:195 direct index (layout(column_major shared ) temp highp float)
0:195 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:195 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:195 Constant:
0:195 1 (const int)
0:195 Constant:
0:195 2 (const int)
0:196 Pre-Increment (temp highp float)
0:196 direct index (layout(column_major shared ) temp highp float)
0:196 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:196 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:196 Constant:
0:196 1 (const int)
0:196 Constant:
0:196 2 (const int)
0:197 Post-Decrement (temp highp float)
0:197 direct index (layout(column_major shared ) temp highp float)
0:197 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:197 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:197 Constant:
0:197 1 (const int)
0:197 Constant:
0:197 2 (const int)
0:198 add (temp highp float)
0:198 'f' (temp highp float)
0:198 direct index (layout(column_major shared ) temp highp float)
0:198 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:198 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:198 Constant:
0:198 1 (const int)
0:198 Constant:
0:198 2 (const int)
0:199 subtract (temp highp float)
0:199 direct index (layout(column_major shared ) temp highp float)
0:199 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:199 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:199 Constant:
0:199 1 (const int)
0:199 Constant:
0:199 2 (const int)
0:199 'f' (temp highp float)
0:201 Test condition and select (temp highp float)
0:201 Condition
0:201 'b' (temp bool)
0:201 true case
0:201 'f' (temp highp float)
0:201 false case
0:201 direct index (layout(column_major shared ) temp highp float)
0:201 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:201 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:201 Constant:
0:201 1 (const int)
0:201 Constant:
0:201 2 (const int)
0:202 Test condition and select (layout(column_major shared ) temp highp float)
0:202 Condition
0:202 'b' (temp bool)
0:202 true case
0:202 direct index (layout(column_major shared ) temp highp float)
0:202 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:202 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:202 Constant:
0:202 1 (const int)
0:202 Constant:
0:202 2 (const int)
0:202 false case
0:202 'f' (temp highp float)
0:203 Test condition and select (temp void)
0:203 Condition
0:203 Compare Equal (temp bool)
0:203 'f' (temp highp float)
0:203 direct index (layout(column_major shared ) temp highp float)
0:203 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:203 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:203 Constant:
0:203 1 (const int)
0:203 Constant:
0:203 2 (const int)
0:203 true case
0:204 Pre-Increment (temp highp float)
0:204 'f' (temp highp float)
0:205 Test condition and select (temp void)
0:205 Condition
0:205 Compare Greater Than or Equal (temp bool)
0:205 'f' (temp highp float)
0:205 direct index (layout(column_major shared ) temp highp float)
0:205 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:205 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:205 Constant:
0:205 1 (const int)
0:205 Constant:
0:205 2 (const int)
0:205 true case
0:206 Pre-Increment (temp highp float)
0:206 'f' (temp highp float)
0:207 move second child to first child (temp highp float)
0:207 'f' (temp highp float)
0:207 direct index (temp highp float)
0:207 Construct vec3 (temp highp 3-component vector of float)
0:207 direct index (layout(column_major shared ) temp highp float)
0:207 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:207 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:207 Constant:
0:207 1 (const int)
0:207 Constant:
0:207 2 (const int)
0:207 Constant:
0:207 0 (const int)
0:208 Bitwise not (temp highp int)
0:208 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:208 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:208 Constant:
0:208 0 (const int)
0:209 move second child to first child (temp highp float)
0:209 direct index (layout(column_major shared ) temp highp float)
0:209 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:209 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:209 Constant:
0:209 1 (const int)
0:209 Constant:
0:209 2 (const int)
0:209 Constant:
0:209 3.400000
0:218 Function Definition: foomultio( (global void)
0:218 Function Parameters:
0:? Sequence
0:221 move second child to first child (temp highp float)
0:221 'g' (temp highp float)
0:221 direct index (layout(column_major shared ) temp highp float)
0:221 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:221 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:221 Constant:
0:221 1 (const int)
0:221 Constant:
0:221 2 (const int)
0:222 Bitwise not (temp highp int)
0:222 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:222 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:222 Constant:
0:222 0 (const int)
0:223 move second child to first child (temp highp float)
0:223 direct index (layout(column_major shared ) temp highp float)
0:223 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:223 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:223 Constant:
0:223 1 (const int)
0:223 Constant:
0:223 2 (const int)
0:223 Constant:
0:223 3.400000
0:224 move second child to first child (temp highp int)
0:224 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:224 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:224 Constant:
0:224 0 (const int)
0:224 Constant:
0:224 2 (const int)
0:? Linker Objects
0:? 'gl_WorkGroupSize' (const highp 3-component vector of uint WorkGroupSize)
0:? 2 (const uint)
0:? 1 (const uint)
0:? 4096 (const uint)
0:? 'total' (const highp int)
0:? 66592 (const int)
0:? 'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:? 'invalid' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer implicitly-sized array of highp float values, layout(column_major shared ) buffer highp int value})
0:? 'v3' (layout(location=2 ) in highp 3-component vector of float)
0:? 'f' (in highp float)
0:? 'fo' (out highp float)
0:? 's' (shared highp 4-component vector of float)
0:? 'sl' (layout(location=2 ) shared highp 4-component vector of float)
0:? 'fs' (shared highp float)
0:? 'arrX' (global 2-element array of highp int)
0:? 'arrY' (global 1-element array of highp int)
0:? 'arrZ' (global 4096-element array of highp int)
0:? 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:? 'v' (buffer highp 4-component vector of float)
0:? 'us2dbad' (uniform mediump usampler2D)
0:? 'us2d' (uniform highp usampler2D)
0:? 'ii2dabad' (uniform highp iimage2DArray)
0:? 'ii2da' (writeonly uniform highp iimage2DArray)
0:? 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:? 'iimg2Drgba' (layout(rgba32i ) readonly uniform highp iimage2D)
0:? 'img2Drgba' (layout(rgba32f ) readonly uniform lowp image2D)
0:? 'uimg2D' (layout(r32ui ) uniform highp uimage2D)
0:? 'vol' (volatile temp highp float)
0:? 'vol2' (readonly temp highp int)
0:? 'qualim1' (layout(r32i ) coherent readonly uniform highp iimage2D)
0:? 'qualim2' (layout(r32i ) coherent restrict readonly uniform highp iimage2D)
0:? 'i1bad' (layout(rg8i ) readonly uniform highp uimage2D)
0:? 'i2bad' (layout(rgba32i ) readonly uniform lowp image2D)
0:? 'i3bad' (layout(rgba32f ) readonly uniform highp uimage2D)
0:? 'i4bad' (layout(r8_snorm ) readonly uniform highp iimage2D)
0:? 'i5bad' (layout(rgba32ui ) readonly uniform highp iimage2D)
0:? 'i6bad' (layout(r8ui ) readonly uniform highp iimage2D)
0:? 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:? 'counterBad' (layout(binding=1 ) uniform mediump atomic_uint)
0:? 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
0:? 'i' (uniform highp int)
0:? 'atomi' (shared highp int)
0:? 'atomu' (shared highp uint)
0:? 'pfoo' (temp highp int)
0:? 'dm' (global 2X4 matrix of double)
0:? 'sca' (uniform mediump samplerCubeArray)
0:? 'i2dr' (uniform mediump iimage2DRect)
0:? 'i2dms' (uniform lowp image2DMS)
0:? 'u2dmsa' (uniform mediump uimage2DMSArray)
0:? 'okay1' (layout(r32f ) coherent volatile restrict readonly writeonly uniform lowp image2D)
0:? 'okay2' (layout(r32i ) coherent volatile restrict readonly uniform highp iimage2D)
0:? 'okay3' (layout(r32ui ) coherent volatile restrict writeonly uniform highp uimage2D)
0:? 'okay4' (layout(r32f ) coherent volatile restrict uniform lowp image2D)
0:? 'badQ1' (layout(rgba32f ) coherent volatile restrict uniform lowp image2D)
0:? 'badQ2' (layout(rgba8i ) coherent volatile restrict uniform highp iimage2D)
0:? 'badQ3' (layout(rgba16ui ) coherent volatile restrict uniform highp uimage2D)
0:? 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:? 'multio' (layout(column_major shared ) buffer block{layout(column_major shared ) readonly buffer highp int value, layout(column_major shared ) writeonly buffer implicitly-sized array of highp float values})
0:? 'inbi' (in block{in highp int a})
0:? 'outbi' (out block{out highp int a})
0:? 't__' (global highp float)
Linked compute stage:
Shader version: 310
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 highp int)
0:36 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:36 'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:36 Constant:
0:36 0 (const uint)
0:36 Convert float to int (temp highp int)
0:36 indirect index (layout(column_major shared ) temp highp float)
0:36 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:36 'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:36 Constant:
0:36 1 (const uint)
0:36 'gl_LocalInvocationIndex' (in highp uint LocalInvocationIndex)
0:59 Function Definition: foo( (global void)
0:59 Function Parameters:
0:61 Sequence
0:61 move second child to first child (temp highp float)
0:61 direct index (layout(column_major shared ) temp highp float)
0:61 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:61 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:61 Constant:
0:61 1 (const int)
0:61 Constant:
0:61 2 (const int)
0:61 Constant:
0:61 4.700000
0:62 array length (temp highp int)
0:62 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:62 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:62 Constant:
0:62 1 (const int)
0:63 Pre-Increment (temp highp 4-component vector of float)
0:63 's' (shared highp 4-component vector of float)
0:84 Function Definition: qux( (global void)
0:84 Function Parameters:
0:86 Sequence
0:86 Sequence
0:86 move second child to first child (temp highp int)
0:86 'i' (temp highp int)
0:86 Constant:
0:86 4 (const int)
0:87 Function Call: imageAtomicCompSwap(iI21;vi2;i1;i1; (global highp int)
0:87 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:87 Construct ivec2 (temp 2-component vector of int)
0:87 'i' (temp highp int)
0:87 'i' (temp highp int)
0:87 'i' (temp highp int)
0:87 'i' (temp highp int)
0:88 Function Call: imageAtomicAdd(uI21;vi2;u1; (global highp uint)
0:88 'uimg2D' (layout(r32ui ) uniform highp uimage2D)
0:88 Construct ivec2 (temp 2-component vector of int)
0:88 'i' (temp highp int)
0:88 'i' (temp highp int)
0:88 Convert int to uint (temp uint)
0:88 'i' (temp highp int)
0:89 Function Call: imageAtomicMin(iI21;vi2;i1; (global highp int)
0:89 'iimg2Drgba' (layout(rgba32i ) readonly uniform highp iimage2D)
0:89 Construct ivec2 (temp 2-component vector of int)
0:89 'i' (temp highp int)
0:89 'i' (temp highp int)
0:89 'i' (temp highp int)
0:90 Constant:
0:90 0.000000
0:91 Sequence
0:91 move second child to first child (temp highp 4-component vector of int)
0:91 'pos' (temp highp 4-component vector of int)
0:91 Function Call: imageLoad(iI21;vi2; (global highp 4-component vector of int)
0:91 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:91 Construct ivec2 (temp 2-component vector of int)
0:91 'i' (temp highp int)
0:91 'i' (temp highp int)
0:92 Function Call: imageStore(iIA21;vi3;vi4; (global highp void)
0:92 'ii2da' (writeonly uniform highp iimage2DArray)
0:92 Construct ivec3 (temp 3-component vector of int)
0:92 'i' (temp highp int)
0:92 'i' (temp highp int)
0:92 'i' (temp highp int)
0:92 Constant:
0:92 0 (const int)
0:92 0 (const int)
0:92 0 (const int)
0:92 0 (const int)
0:93 Function Call: imageLoad(I21;vi2; (global highp 4-component vector of float)
0:93 'img2Drgba' (layout(rgba32f ) readonly uniform lowp image2D)
0:93 Construct ivec2 (temp 2-component vector of int)
0:93 'i' (temp highp int)
0:93 'i' (temp highp int)
0:94 Function Call: imageLoad(iIA21;vi3; (global highp 4-component vector of int)
0:94 'ii2da' (writeonly uniform highp iimage2DArray)
0:94 Construct ivec3 (temp 3-component vector of int)
0:94 'i' (temp highp int)
0:94 'i' (temp highp int)
0:94 'i' (temp highp int)
0:100 Function Definition: passr(iI21; (global void)
0:100 Function Parameters:
0:100 'image' (coherent readonly in highp iimage2D)
0:107 Function Definition: passrc( (global void)
0:107 Function Parameters:
0:109 Sequence
0:109 Function Call: passr(iI21; (global void)
0:109 'qualim1' (layout(r32i ) coherent readonly uniform highp iimage2D)
0:110 Function Call: passr(iI21; (global void)
0:110 'qualim2' (layout(r32i ) coherent restrict readonly uniform highp iimage2D)
0:111 Function Call: passr(iI21; (global void)
0:111 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:123 Function Definition: func(au1; (global highp uint)
0:123 Function Parameters:
0:123 'c' (in highp atomic_uint)
0:125 Sequence
0:125 Branch: Return with expression
0:125 AtomicCounterIncrement (global highp uint)
0:125 'c' (in highp atomic_uint)
0:128 Function Definition: func2(au1; (global highp uint)
0:128 Function Parameters:
0:128 'c' (out highp atomic_uint)
0:130 Sequence
0:130 Branch: Return with expression
0:130 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:131 Branch: Return with expression
0:131 AtomicCounter (global highp uint)
0:131 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:134 Function Definition: mainAC( (global void)
0:134 Function Parameters:
0:? Sequence
0:137 Sequence
0:137 move second child to first child (temp highp uint)
0:137 'val' (temp highp uint)
0:137 AtomicCounter (global highp uint)
0:137 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:138 AtomicCounterDecrement (global highp uint)
0:138 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:146 Function Definition: opac( (global void)
0:146 Function Parameters:
0:? Sequence
0:149 indirect index (temp highp int)
0:149 'a' (temp 3-element array of highp int)
0:149 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:150 direct index (layout(binding=2 offset=4 ) temp highp atomic_uint)
0:150 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
0:150 Constant:
0:150 2 (const int)
0:151 indirect index (layout(binding=2 offset=4 ) temp highp atomic_uint)
0:151 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
0:151 'i' (uniform highp int)
0:157 Function Definition: atoms( (global void)
0:157 Function Parameters:
0:159 Sequence
0:159 Sequence
0:159 move second child to first child (temp highp int)
0:159 'origi' (temp highp int)
0:159 AtomicAdd (global highp int)
0:159 'atomi' (shared highp int)
0:159 Constant:
0:159 3 (const int)
0:160 Sequence
0:160 move second child to first child (temp highp uint)
0:160 'origu' (temp highp uint)
0:160 AtomicAnd (global highp uint)
0:160 'atomu' (shared highp uint)
0:160 Constant:
0:160 7 (const uint)
0:161 move second child to first child (temp highp int)
0:161 'origi' (temp highp int)
0:161 AtomicExchange (global highp int)
0:161 'atomi' (shared highp int)
0:161 Constant:
0:161 4 (const int)
0:162 move second child to first child (temp highp uint)
0:162 'origu' (temp highp uint)
0:162 AtomicCompSwap (global highp uint)
0:162 'atomu' (shared highp uint)
0:162 Constant:
0:162 10 (const uint)
0:162 Constant:
0:162 8 (const uint)
0:191 Function Definition: foowo( (global void)
0:191 Function Parameters:
0:? Sequence
0:194 move second child to first child (temp highp float)
0:194 'g' (temp highp float)
0:194 direct index (layout(column_major shared ) temp highp float)
0:194 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:194 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:194 Constant:
0:194 1 (const int)
0:194 Constant:
0:194 2 (const int)
0:195 Sequence
0:195 move second child to first child (temp highp float)
0:195 'f' (temp highp float)
0:195 direct index (layout(column_major shared ) temp highp float)
0:195 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:195 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:195 Constant:
0:195 1 (const int)
0:195 Constant:
0:195 2 (const int)
0:196 Pre-Increment (temp highp float)
0:196 direct index (layout(column_major shared ) temp highp float)
0:196 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:196 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:196 Constant:
0:196 1 (const int)
0:196 Constant:
0:196 2 (const int)
0:197 Post-Decrement (temp highp float)
0:197 direct index (layout(column_major shared ) temp highp float)
0:197 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:197 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:197 Constant:
0:197 1 (const int)
0:197 Constant:
0:197 2 (const int)
0:198 add (temp highp float)
0:198 'f' (temp highp float)
0:198 direct index (layout(column_major shared ) temp highp float)
0:198 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:198 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:198 Constant:
0:198 1 (const int)
0:198 Constant:
0:198 2 (const int)
0:199 subtract (temp highp float)
0:199 direct index (layout(column_major shared ) temp highp float)
0:199 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:199 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:199 Constant:
0:199 1 (const int)
0:199 Constant:
0:199 2 (const int)
0:199 'f' (temp highp float)
0:201 Test condition and select (temp highp float)
0:201 Condition
0:201 'b' (temp bool)
0:201 true case
0:201 'f' (temp highp float)
0:201 false case
0:201 direct index (layout(column_major shared ) temp highp float)
0:201 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:201 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:201 Constant:
0:201 1 (const int)
0:201 Constant:
0:201 2 (const int)
0:202 Test condition and select (layout(column_major shared ) temp highp float)
0:202 Condition
0:202 'b' (temp bool)
0:202 true case
0:202 direct index (layout(column_major shared ) temp highp float)
0:202 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:202 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:202 Constant:
0:202 1 (const int)
0:202 Constant:
0:202 2 (const int)
0:202 false case
0:202 'f' (temp highp float)
0:203 Test condition and select (temp void)
0:203 Condition
0:203 Compare Equal (temp bool)
0:203 'f' (temp highp float)
0:203 direct index (layout(column_major shared ) temp highp float)
0:203 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:203 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:203 Constant:
0:203 1 (const int)
0:203 Constant:
0:203 2 (const int)
0:203 true case
0:204 Pre-Increment (temp highp float)
0:204 'f' (temp highp float)
0:205 Test condition and select (temp void)
0:205 Condition
0:205 Compare Greater Than or Equal (temp bool)
0:205 'f' (temp highp float)
0:205 direct index (layout(column_major shared ) temp highp float)
0:205 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:205 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:205 Constant:
0:205 1 (const int)
0:205 Constant:
0:205 2 (const int)
0:205 true case
0:206 Pre-Increment (temp highp float)
0:206 'f' (temp highp float)
0:207 move second child to first child (temp highp float)
0:207 'f' (temp highp float)
0:207 direct index (temp highp float)
0:207 Construct vec3 (temp highp 3-component vector of float)
0:207 direct index (layout(column_major shared ) temp highp float)
0:207 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:207 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:207 Constant:
0:207 1 (const int)
0:207 Constant:
0:207 2 (const int)
0:207 Constant:
0:207 0 (const int)
0:208 Bitwise not (temp highp int)
0:208 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:208 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:208 Constant:
0:208 0 (const int)
0:209 move second child to first child (temp highp float)
0:209 direct index (layout(column_major shared ) temp highp float)
0:209 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:209 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:209 Constant:
0:209 1 (const int)
0:209 Constant:
0:209 2 (const int)
0:209 Constant:
0:209 3.400000
0:218 Function Definition: foomultio( (global void)
0:218 Function Parameters:
0:? Sequence
0:221 move second child to first child (temp highp float)
0:221 'g' (temp highp float)
0:221 direct index (layout(column_major shared ) temp highp float)
0:221 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:221 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:221 Constant:
0:221 1 (const int)
0:221 Constant:
0:221 2 (const int)
0:222 Bitwise not (temp highp int)
0:222 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:222 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:222 Constant:
0:222 0 (const int)
0:223 move second child to first child (temp highp float)
0:223 direct index (layout(column_major shared ) temp highp float)
0:223 values: direct index for structure (layout(column_major shared ) buffer implicitly-sized array of highp float)
0:223 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:223 Constant:
0:223 1 (const int)
0:223 Constant:
0:223 2 (const int)
0:223 Constant:
0:223 3.400000
0:224 move second child to first child (temp highp int)
0:224 value: direct index for structure (layout(column_major shared ) buffer highp int)
0:224 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:224 Constant:
0:224 0 (const int)
0:224 Constant:
0:224 2 (const int)
0:? Linker Objects
0:? 'gl_WorkGroupSize' (const highp 3-component vector of uint WorkGroupSize)
0:? 2 (const uint)
0:? 1 (const uint)
0:? 4096 (const uint)
0:? 'total' (const highp int)
0:? 66592 (const int)
0:? 'anon@0' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:? 'invalid' (layout(column_major shared ) buffer block{layout(column_major shared ) buffer implicitly-sized array of highp float values, layout(column_major shared ) buffer highp int value})
0:? 'v3' (layout(location=2 ) in highp 3-component vector of float)
0:? 'f' (in highp float)
0:? 'fo' (out highp float)
0:? 's' (shared highp 4-component vector of float)
0:? 'sl' (layout(location=2 ) shared highp 4-component vector of float)
0:? 'fs' (shared highp float)
0:? 'arrX' (global 2-element array of highp int)
0:? 'arrY' (global 1-element array of highp int)
0:? 'arrZ' (global 4096-element array of highp int)
0:? 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:? 'v' (buffer highp 4-component vector of float)
0:? 'us2dbad' (uniform mediump usampler2D)
0:? 'us2d' (uniform highp usampler2D)
0:? 'ii2dabad' (uniform highp iimage2DArray)
0:? 'ii2da' (writeonly uniform highp iimage2DArray)
0:? 'iimg2D' (layout(r32i ) uniform highp iimage2D)
0:? 'iimg2Drgba' (layout(rgba32i ) readonly uniform highp iimage2D)
0:? 'img2Drgba' (layout(rgba32f ) readonly uniform lowp image2D)
0:? 'uimg2D' (layout(r32ui ) uniform highp uimage2D)
0:? 'vol' (volatile temp highp float)
0:? 'vol2' (readonly temp highp int)
0:? 'qualim1' (layout(r32i ) coherent readonly uniform highp iimage2D)
0:? 'qualim2' (layout(r32i ) coherent restrict readonly uniform highp iimage2D)
0:? 'i1bad' (layout(rg8i ) readonly uniform highp uimage2D)
0:? 'i2bad' (layout(rgba32i ) readonly uniform lowp image2D)
0:? 'i3bad' (layout(rgba32f ) readonly uniform highp uimage2D)
0:? 'i4bad' (layout(r8_snorm ) readonly uniform highp iimage2D)
0:? 'i5bad' (layout(rgba32ui ) readonly uniform highp iimage2D)
0:? 'i6bad' (layout(r8ui ) readonly uniform highp iimage2D)
0:? 'counter' (layout(binding=0 offset=0 ) uniform highp atomic_uint)
0:? 'counterBad' (layout(binding=1 ) uniform mediump atomic_uint)
0:? 'countArr' (layout(binding=2 offset=4 ) uniform 4-element array of highp atomic_uint)
0:? 'i' (uniform highp int)
0:? 'atomi' (shared highp int)
0:? 'atomu' (shared highp uint)
0:? 'pfoo' (temp highp int)
0:? 'dm' (global 2X4 matrix of double)
0:? 'sca' (uniform mediump samplerCubeArray)
0:? 'i2dr' (uniform mediump iimage2DRect)
0:? 'i2dms' (uniform lowp image2DMS)
0:? 'u2dmsa' (uniform mediump uimage2DMSArray)
0:? 'okay1' (layout(r32f ) coherent volatile restrict readonly writeonly uniform lowp image2D)
0:? 'okay2' (layout(r32i ) coherent volatile restrict readonly uniform highp iimage2D)
0:? 'okay3' (layout(r32ui ) coherent volatile restrict writeonly uniform highp uimage2D)
0:? 'okay4' (layout(r32f ) coherent volatile restrict uniform lowp image2D)
0:? 'badQ1' (layout(rgba32f ) coherent volatile restrict uniform lowp image2D)
0:? 'badQ2' (layout(rgba8i ) coherent volatile restrict uniform highp iimage2D)
0:? 'badQ3' (layout(rgba16ui ) coherent volatile restrict uniform highp uimage2D)
0:? 'wo' (layout(column_major shared ) writeonly buffer block{layout(column_major shared ) buffer highp int value, layout(column_major shared ) buffer implicitly-sized array of highp float values})
0:? 'multio' (layout(column_major shared ) buffer block{layout(column_major shared ) readonly buffer highp int value, layout(column_major shared ) writeonly buffer implicitly-sized array of highp float values})
0:? 'inbi' (in block{in highp int a})
0:? 'outbi' (out block{out highp int a})
0:? 't__' (global highp float)