1 hlsl.wavequery.comp 2 Shader version: 500 3 local_size = (32, 16, 1) 4 0:? Sequence 5 0:5 Function Definition: @CSMain( ( temp void) 6 0:5 Function Parameters: 7 0:? Sequence 8 0:6 move second child to first child ( temp uint) 9 0:6 indirect index (layout( row_major std430) buffer uint) 10 0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint) 11 0:6 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 12 0:6 Constant: 13 0:6 0 (const uint) 14 0:6 '@gl_SubgroupInvocationID' ( in uint unknown built-in variable) 15 0:6 Test condition and select ( temp uint): no shortcircuit 16 0:6 Condition 17 0:6 subgroupElect ( temp bool) 18 0:6 true case 19 0:6 '@gl_SubgroupSize' ( in uint unknown built-in variable) 20 0:6 false case 21 0:6 Constant: 22 0:6 0 (const uint) 23 0:5 Function Definition: CSMain( ( temp void) 24 0:5 Function Parameters: 25 0:? Sequence 26 0:5 Function Call: @CSMain( ( temp void) 27 0:? Linker Objects 28 0:? 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 29 30 31 Linked compute stage: 32 33 34 Shader version: 500 35 local_size = (32, 16, 1) 36 0:? Sequence 37 0:5 Function Definition: @CSMain( ( temp void) 38 0:5 Function Parameters: 39 0:? Sequence 40 0:6 move second child to first child ( temp uint) 41 0:6 indirect index (layout( row_major std430) buffer uint) 42 0:6 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint) 43 0:6 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 44 0:6 Constant: 45 0:6 0 (const uint) 46 0:6 '@gl_SubgroupInvocationID' ( in uint unknown built-in variable) 47 0:6 Test condition and select ( temp uint): no shortcircuit 48 0:6 Condition 49 0:6 subgroupElect ( temp bool) 50 0:6 true case 51 0:6 '@gl_SubgroupSize' ( in uint unknown built-in variable) 52 0:6 false case 53 0:6 Constant: 54 0:6 0 (const uint) 55 0:5 Function Definition: CSMain( ( temp void) 56 0:5 Function Parameters: 57 0:? Sequence 58 0:5 Function Call: @CSMain( ( temp void) 59 0:? Linker Objects 60 0:? 'data' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 61 62 // Module Version 10300 63 // Generated by (magic number): 80007 64 // Id's are bound by 28 65 66 Capability Shader 67 Capability GroupNonUniform 68 1: ExtInstImport "GLSL.std.450" 69 MemoryModel Logical GLSL450 70 EntryPoint GLCompute 4 "CSMain" 16 21 71 ExecutionMode 4 LocalSize 32 16 1 72 Source HLSL 500 73 Name 4 "CSMain" 74 Name 6 "@CSMain(" 75 Name 10 "data" 76 MemberName 10(data) 0 "@data" 77 Name 12 "data" 78 Name 16 "@gl_SubgroupInvocationID" 79 Name 21 "@gl_SubgroupSize" 80 Decorate 9 ArrayStride 4 81 MemberDecorate 10(data) 0 Offset 0 82 Decorate 10(data) BufferBlock 83 Decorate 12(data) DescriptorSet 0 84 Decorate 12(data) Binding 0 85 Decorate 16(@gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId 86 Decorate 21(@gl_SubgroupSize) BuiltIn SubgroupSize 87 2: TypeVoid 88 3: TypeFunction 2 89 8: TypeInt 32 0 90 9: TypeRuntimeArray 8(int) 91 10(data): TypeStruct 9 92 11: TypePointer Uniform 10(data) 93 12(data): 11(ptr) Variable Uniform 94 13: TypeInt 32 1 95 14: 13(int) Constant 0 96 15: TypePointer Input 8(int) 97 16(@gl_SubgroupInvocationID): 15(ptr) Variable Input 98 18: TypeBool 99 19: 8(int) Constant 3 100 21(@gl_SubgroupSize): 15(ptr) Variable Input 101 23: 8(int) Constant 0 102 25: TypePointer Uniform 8(int) 103 4(CSMain): 2 Function None 3 104 5: Label 105 27: 2 FunctionCall 6(@CSMain() 106 Return 107 FunctionEnd 108 6(@CSMain(): 2 Function None 3 109 7: Label 110 17: 8(int) Load 16(@gl_SubgroupInvocationID) 111 20: 18(bool) GroupNonUniformElect 19 112 22: 8(int) Load 21(@gl_SubgroupSize) 113 24: 8(int) Select 20 22 23 114 26: 25(ptr) AccessChain 12(data) 14 17 115 Store 26 24 116 Return 117 FunctionEnd 118