Enable GL_KHR_shader_subgroup properly

(and GL_NV_shader_subgroup_partitioned) based on GL/ES version
instead of predicating it on vulkan SPV generation

Also add AST testing.
The glsl.450.subgroup* files are largely the same as the spv.subgroup*
The glsl.es320.subgroup* files are the same as the 450 versions, but modified to be ES compatible.
This commit is contained in:
Daniel Koch
2019-03-26 13:45:33 -04:00
parent 5efb004d59
commit 83170e3f7a
66 changed files with 95051 additions and 10 deletions

View File

@@ -0,0 +1,41 @@
glsl.es320.subgroup.frag
Shader version: 320
Requested GL_KHR_shader_subgroup_basic
0:? Sequence
0:4 Function Definition: main( ( global void)
0:4 Function Parameters:
0:6 Sequence
0:6 move second child to first child ( temp mediump 4-component vector of uint)
0:6 'data' (layout( location=0) out mediump 4-component vector of uint)
0:6 Construct uvec4 ( temp mediump 4-component vector of uint)
0:6 'gl_SubgroupSize' ( flat in mediump uint unknown built-in variable)
0:6 'gl_SubgroupInvocationID' ( flat in mediump uint unknown built-in variable)
0:6 Constant:
0:6 0 (const uint)
0:6 Constant:
0:6 0 (const uint)
0:? Linker Objects
0:? 'data' (layout( location=0) out mediump 4-component vector of uint)
Linked fragment stage:
Shader version: 320
Requested GL_KHR_shader_subgroup_basic
0:? Sequence
0:4 Function Definition: main( ( global void)
0:4 Function Parameters:
0:6 Sequence
0:6 move second child to first child ( temp mediump 4-component vector of uint)
0:6 'data' (layout( location=0) out mediump 4-component vector of uint)
0:6 Construct uvec4 ( temp mediump 4-component vector of uint)
0:6 'gl_SubgroupSize' ( flat in mediump uint unknown built-in variable)
0:6 'gl_SubgroupInvocationID' ( flat in mediump uint unknown built-in variable)
0:6 Constant:
0:6 0 (const uint)
0:6 Constant:
0:6 0 (const uint)
0:? Linker Objects
0:? 'data' (layout( location=0) out mediump 4-component vector of uint)