hlsl.wavequery.comp Shader version: 500 local_size = (32, 16, 1) 0:? Sequence 0:5 Function Definition: @CSMain( ( temp void) 0:5 Function Parameters: 0:? Sequence 0:6 move second child to first child ( temp uint) 0:6 indirect index (layout( row_major std430) buffer uint) 0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint) 0:6 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 0:6 Constant: 0:6 0 (const uint) 0:6 '@gl_SubgroupInvocationID' ( in uint SubgroupInvocationID) 0:6 Test condition and select ( temp uint): no shortcircuit 0:6 Condition 0:6 subgroupElect ( temp bool) 0:6 true case 0:6 '@gl_SubgroupSize' ( in uint SubgroupSize) 0:6 false case 0:6 Constant: 0:6 0 (const uint) 0:5 Function Definition: CSMain( ( temp void) 0:5 Function Parameters: 0:? Sequence 0:5 Function Call: @CSMain( ( temp void) 0:? Linker Objects 0:? 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) Linked compute stage: Shader version: 500 local_size = (32, 16, 1) 0:? Sequence 0:5 Function Definition: @CSMain( ( temp void) 0:5 Function Parameters: 0:? Sequence 0:6 move second child to first child ( temp uint) 0:6 indirect index (layout( row_major std430) buffer uint) 0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint) 0:6 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 0:6 Constant: 0:6 0 (const uint) 0:6 '@gl_SubgroupInvocationID' ( in uint SubgroupInvocationID) 0:6 Test condition and select ( temp uint): no shortcircuit 0:6 Condition 0:6 subgroupElect ( temp bool) 0:6 true case 0:6 '@gl_SubgroupSize' ( in uint SubgroupSize) 0:6 false case 0:6 Constant: 0:6 0 (const uint) 0:5 Function Definition: CSMain( ( temp void) 0:5 Function Parameters: 0:? Sequence 0:5 Function Call: @CSMain( ( temp void) 0:? Linker Objects 0:? 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) // Module Version 10300 // Generated by (magic number): 8000b // Id's are bound by 28 Capability Shader Capability GroupNonUniform 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint GLCompute 4 "CSMain" 16 21 ExecutionMode 4 LocalSize 32 16 1 Source HLSL 500 Name 4 "CSMain" Name 6 "@CSMain(" Name 10 "data" MemberName 10(data) 0 "@data" Name 12 "data" Name 16 "@gl_SubgroupInvocationID" Name 21 "@gl_SubgroupSize" Decorate 9 ArrayStride 4 MemberDecorate 10(data) 0 Offset 0 Decorate 10(data) BufferBlock Decorate 12(data) DescriptorSet 0 Decorate 12(data) Binding 0 Decorate 16(@gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId Decorate 21(@gl_SubgroupSize) BuiltIn SubgroupSize 2: TypeVoid 3: TypeFunction 2 8: TypeInt 32 0 9: TypeRuntimeArray 8(int) 10(data): TypeStruct 9 11: TypePointer Uniform 10(data) 12(data): 11(ptr) Variable Uniform 13: TypeInt 32 1 14: 13(int) Constant 0 15: TypePointer Input 8(int) 16(@gl_SubgroupInvocationID): 15(ptr) Variable Input 18: TypeBool 19: 8(int) Constant 3 21(@gl_SubgroupSize): 15(ptr) Variable Input 23: 8(int) Constant 0 25: TypePointer Uniform 8(int) 4(CSMain): 2 Function None 3 5: Label 27: 2 FunctionCall 6(@CSMain() Return FunctionEnd 6(@CSMain(): 2 Function None 3 7: Label 17: 8(int) Load 16(@gl_SubgroupInvocationID) 20: 18(bool) GroupNonUniformElect 19 22: 8(int) Load 21(@gl_SubgroupSize) 24: 8(int) Select 20 22 23 26: 25(ptr) AccessChain 12(data) 14 17 Store 26 24 Return FunctionEnd