Fix subgroup support for ray tracing

Closes #1735

GlslangToSpv.cpp
- minor formatting cleanup

BaseTypes.h
- minor formatting cleanup
- add subgroup builtins to GetBuiltInVariableString
  (was resulting in "unknown built-in variable" messages in test output)

Initialize.cpp
- better naming and re-use of strings for subgroup builtin variable declarations
- define subgroup builtin variables in ray-tracing shaders

intermOut.cpp
- add handling of the EOpSubgroupParition* variables
  (was resulting in "ERROR: Bad aggregation op" messages in test output)

Update test results.
This commit is contained in:
Daniel Koch
2019-05-27 16:46:31 -04:00
parent c3e60ad9b6
commit 593a4e0aa5
45 changed files with 2237 additions and 3886 deletions

View File

@@ -12,7 +12,7 @@ local_size = (8, 8, 1)
0:14 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:14 Constant:
0:14 0 (const int)
0:14 'gl_SubgroupSize' ( in mediump uint unknown built-in variable)
0:14 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
0:14 Constant:
0:14 1 (const int)
0:15 move second child to first child ( temp highp int)
@@ -21,7 +21,7 @@ local_size = (8, 8, 1)
0:15 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:15 Constant:
0:15 0 (const int)
0:15 'gl_SubgroupInvocationID' ( in mediump uint unknown built-in variable)
0:15 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
0:15 Constant:
0:15 1 (const int)
0:16 move second child to first child ( temp highp int)
@@ -30,7 +30,7 @@ local_size = (8, 8, 1)
0:16 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:16 Constant:
0:16 0 (const int)
0:16 'gl_NumSubgroups' ( in highp uint unknown built-in variable)
0:16 'gl_NumSubgroups' ( in highp uint NumSubgroups)
0:16 Constant:
0:16 1 (const int)
0:17 move second child to first child ( temp highp int)
@@ -39,7 +39,7 @@ local_size = (8, 8, 1)
0:17 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:17 Constant:
0:17 0 (const int)
0:17 'gl_SubgroupID' ( in highp uint unknown built-in variable)
0:17 'gl_SubgroupID' ( in highp uint SubgroupID)
0:17 Test condition and select ( temp highp int)
0:17 Condition
0:17 subgroupElect ( global bool)
@@ -78,7 +78,7 @@ local_size = (8, 8, 1)
0:14 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:14 Constant:
0:14 0 (const int)
0:14 'gl_SubgroupSize' ( in mediump uint unknown built-in variable)
0:14 'gl_SubgroupSize' ( in mediump uint SubgroupSize)
0:14 Constant:
0:14 1 (const int)
0:15 move second child to first child ( temp highp int)
@@ -87,7 +87,7 @@ local_size = (8, 8, 1)
0:15 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:15 Constant:
0:15 0 (const int)
0:15 'gl_SubgroupInvocationID' ( in mediump uint unknown built-in variable)
0:15 'gl_SubgroupInvocationID' ( in mediump uint SubgroupInvocationID)
0:15 Constant:
0:15 1 (const int)
0:16 move second child to first child ( temp highp int)
@@ -96,7 +96,7 @@ local_size = (8, 8, 1)
0:16 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:16 Constant:
0:16 0 (const int)
0:16 'gl_NumSubgroups' ( in highp uint unknown built-in variable)
0:16 'gl_NumSubgroups' ( in highp uint NumSubgroups)
0:16 Constant:
0:16 1 (const int)
0:17 move second child to first child ( temp highp int)
@@ -105,7 +105,7 @@ local_size = (8, 8, 1)
0:17 'data' (layout( binding=0 column_major shared) buffer block{layout( column_major shared) buffer runtime-sized array of highp int a})
0:17 Constant:
0:17 0 (const int)
0:17 'gl_SubgroupID' ( in highp uint unknown built-in variable)
0:17 'gl_SubgroupID' ( in highp uint SubgroupID)
0:17 Test condition and select ( temp highp int)
0:17 Condition
0:17 subgroupElect ( global bool)