Finish virtually all of the remaining atomic counter functionality. Still need offset collision detection.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@27712 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2014-08-13 01:04:28 +00:00
parent 3dd035b68b
commit 265f5fb80e
16 changed files with 191 additions and 37 deletions

View File

@@ -39,7 +39,10 @@ ERROR: 0:128: 'atomic_uint' : samplers and atomic_uints cannot be output paramet
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:141: 'atomic_uint' : atomic counters can only be highp
ERROR: 39 compilation errors. No code generated.
ERROR: 0:141: 'binding' : cannot be greater-than-or-equal to gl_MaxAtomicCounterBindings
ERROR: 0:143: 'binding' : cannot be greater-than-or-equal to gl_MaxAtomicCounterBindings
ERROR: 0:149: '[]' : scalar integer expression required
ERROR: 42 compilation errors. No code generated.
Shader version: 310
@@ -171,6 +174,19 @@ ERROR: node is still EOpNull!
0:137 'counter' (layout(binding=0 ) uniform highp atomic_uint)
0:138 Function Call: atomicCounterDecrement(au1; (highp uint)
0:138 'counter' (layout(binding=0 ) uniform highp atomic_uint)
0:146 Function Definition: opac( (void)
0:146 Function Parameters:
0:? Sequence
0:149 indirect index (highp int)
0:149 'a' (3-element array of highp int)
0:149 'counter' (layout(binding=0 ) uniform highp atomic_uint)
0:150 direct index (layout(binding=2 offset=4 ) 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 ) 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:? Linker Objects
0:? 'gl_WorkGroupSize' (const highp 3-component vector of uint)
0:? 2 (const uint)
@@ -211,6 +227,8 @@ ERROR: node is still EOpNull!
0:? 'i6bad' (layout(r8ui ) uniform highp iimage2D)
0:? 'counter' (layout(binding=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)
Linked compute stage:
@@ -345,6 +363,19 @@ ERROR: node is still EOpNull!
0:137 'counter' (layout(binding=0 ) uniform highp atomic_uint)
0:138 Function Call: atomicCounterDecrement(au1; (highp uint)
0:138 'counter' (layout(binding=0 ) uniform highp atomic_uint)
0:146 Function Definition: opac( (void)
0:146 Function Parameters:
0:? Sequence
0:149 indirect index (highp int)
0:149 'a' (3-element array of highp int)
0:149 'counter' (layout(binding=0 ) uniform highp atomic_uint)
0:150 direct index (layout(binding=2 offset=4 ) 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 ) 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:? Linker Objects
0:? 'gl_WorkGroupSize' (const highp 3-component vector of uint)
0:? 2 (const uint)
@@ -385,4 +416,6 @@ ERROR: node is still EOpNull!
0:? 'i6bad' (layout(r8ui ) uniform highp iimage2D)
0:? 'counter' (layout(binding=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)