Implement barrier() control-flow rules: in flow control, non-main, and post-return.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@29347 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2015-01-07 06:14:06 +00:00
parent cbc7dd979a
commit 05a62bf528
8 changed files with 426 additions and 181 deletions

View File

@@ -34,6 +34,10 @@ void main()
memoryBarrierImage();
groupMemoryBarrier();
value = int(values[gl_LocalInvocationIndex]);
int a;
if (a > 10)
barrier();
}
layout(location = 2) in vec3 v3; // ERROR
@@ -60,4 +64,5 @@ void foo()
{
ro.values[2] = 4.7; // ERROR, readonly
ro.values.length();
barrier();
}