1hlsl.store.rwbyteaddressbuffer.type.comp 2Shader version: 500 3local_size = (64, 1, 1) 40:? Sequence 50:5 Function Definition: @main(vu3; ( temp void) 60:5 Function Parameters: 70:5 'dispatchThreadID' ( in 3-component vector of uint) 80:? Sequence 90:6 Test condition and select ( temp void) 100:6 Condition 110:6 Compare Equal ( temp bool) 120:6 direct index ( temp uint) 130:6 'dispatchThreadID' ( in 3-component vector of uint) 140:6 Constant: 150:6 0 (const int) 160:6 Constant: 170:6 0 (const uint) 180:6 true case 190:? Sequence 200:7 move second child to first child ( temp int) 210:7 'byteAddrTemp' ( temp int) 220:7 right-shift ( temp int) 230:7 Constant: 240:7 0 (const int) 250:7 Constant: 260:7 2 (const int) 270:7 move second child to first child ( temp uint) 280:7 indirect index (layout( row_major std430) buffer uint) 290:7 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint) 300:7 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 310:7 Constant: 320:7 0 (const uint) 330:7 'byteAddrTemp' ( temp int) 340:7 Constant: 350:7 2 (const uint) 360:5 Function Definition: main( ( temp void) 370:5 Function Parameters: 380:? Sequence 390:5 move second child to first child ( temp 3-component vector of uint) 400:? 'dispatchThreadID' ( temp 3-component vector of uint) 410:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID) 420:5 Function Call: @main(vu3; ( temp void) 430:? 'dispatchThreadID' ( temp 3-component vector of uint) 440:? Linker Objects 450:? 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 460:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID) 47 48 49Linked compute stage: 50 51 52Shader version: 500 53local_size = (64, 1, 1) 540:? Sequence 550:5 Function Definition: @main(vu3; ( temp void) 560:5 Function Parameters: 570:5 'dispatchThreadID' ( in 3-component vector of uint) 580:? Sequence 590:6 Test condition and select ( temp void) 600:6 Condition 610:6 Compare Equal ( temp bool) 620:6 direct index ( temp uint) 630:6 'dispatchThreadID' ( in 3-component vector of uint) 640:6 Constant: 650:6 0 (const int) 660:6 Constant: 670:6 0 (const uint) 680:6 true case 690:? Sequence 700:7 move second child to first child ( temp int) 710:7 'byteAddrTemp' ( temp int) 720:7 right-shift ( temp int) 730:7 Constant: 740:7 0 (const int) 750:7 Constant: 760:7 2 (const int) 770:7 move second child to first child ( temp uint) 780:7 indirect index (layout( row_major std430) buffer uint) 790:7 @data: direct index for structure (layout( row_major std430) buffer unsized 1-element array of uint) 800:7 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 810:7 Constant: 820:7 0 (const uint) 830:7 'byteAddrTemp' ( temp int) 840:7 Constant: 850:7 2 (const uint) 860:5 Function Definition: main( ( temp void) 870:5 Function Parameters: 880:? Sequence 890:5 move second child to first child ( temp 3-component vector of uint) 900:? 'dispatchThreadID' ( temp 3-component vector of uint) 910:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID) 920:5 Function Call: @main(vu3; ( temp void) 930:? 'dispatchThreadID' ( temp 3-component vector of uint) 940:? Linker Objects 950:? 'buffer' (layout( row_major std430) buffer block{layout( row_major std430) buffer unsized 1-element array of uint @data}) 960:? 'dispatchThreadID' ( in 3-component vector of uint GlobalInvocationID) 97 98// Module Version 10000 99// Generated by (magic number): 80007 100// Id's are bound by 42 101 102 Capability Shader 103 1: ExtInstImport "GLSL.std.450" 104 MemoryModel Logical GLSL450 105 EntryPoint GLCompute 4 "main" 37 106 ExecutionMode 4 LocalSize 64 1 1 107 Source HLSL 500 108 Name 4 "main" 109 Name 11 "@main(vu3;" 110 Name 10 "dispatchThreadID" 111 Name 23 "byteAddrTemp" 112 Name 28 "buffer" 113 MemberName 28(buffer) 0 "@data" 114 Name 30 "buffer" 115 Name 35 "dispatchThreadID" 116 Name 37 "dispatchThreadID" 117 Name 39 "param" 118 Decorate 27 ArrayStride 4 119 MemberDecorate 28(buffer) 0 Offset 0 120 Decorate 28(buffer) BufferBlock 121 Decorate 30(buffer) DescriptorSet 0 122 Decorate 37(dispatchThreadID) BuiltIn GlobalInvocationId 123 2: TypeVoid 124 3: TypeFunction 2 125 6: TypeInt 32 0 126 7: TypeVector 6(int) 3 127 8: TypePointer Function 7(ivec3) 128 9: TypeFunction 2 8(ptr) 129 13: 6(int) Constant 0 130 14: TypePointer Function 6(int) 131 17: TypeBool 132 21: TypeInt 32 1 133 22: TypePointer Function 21(int) 134 24: 21(int) Constant 0 135 25: 21(int) Constant 2 136 27: TypeRuntimeArray 6(int) 137 28(buffer): TypeStruct 27 138 29: TypePointer Uniform 28(buffer) 139 30(buffer): 29(ptr) Variable Uniform 140 32: 6(int) Constant 2 141 33: TypePointer Uniform 6(int) 142 36: TypePointer Input 7(ivec3) 14337(dispatchThreadID): 36(ptr) Variable Input 144 4(main): 2 Function None 3 145 5: Label 14635(dispatchThreadID): 8(ptr) Variable Function 147 39(param): 8(ptr) Variable Function 148 38: 7(ivec3) Load 37(dispatchThreadID) 149 Store 35(dispatchThreadID) 38 150 40: 7(ivec3) Load 35(dispatchThreadID) 151 Store 39(param) 40 152 41: 2 FunctionCall 11(@main(vu3;) 39(param) 153 Return 154 FunctionEnd 155 11(@main(vu3;): 2 Function None 9 15610(dispatchThreadID): 8(ptr) FunctionParameter 157 12: Label 15823(byteAddrTemp): 22(ptr) Variable Function 159 15: 14(ptr) AccessChain 10(dispatchThreadID) 13 160 16: 6(int) Load 15 161 18: 17(bool) IEqual 16 13 162 SelectionMerge 20 None 163 BranchConditional 18 19 20 164 19: Label 165 26: 21(int) ShiftRightArithmetic 24 25 166 Store 23(byteAddrTemp) 26 167 31: 21(int) Load 23(byteAddrTemp) 168 34: 33(ptr) AccessChain 30(buffer) 24 31 169 Store 34 32 170 Branch 20 171 20: Label 172 Return 173 FunctionEnd 174