hlsl.structbuffer.append.fn.frag Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:8 Function Definition: Fn2(block--vf4[0]1;block--vf4[0]1; ( temp 4-component vector of float) 0:8 Function Parameters: 0:8 'arg_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:8 'arg_a@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:8 'arg_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:8 'arg_c@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:? Sequence 0:9 move second child to first child ( temp 4-component vector of float) 0:9 indirect index ( buffer 4-component vector of float) 0:9 @data: direct index for structure ( buffer implicitly-sized array of 4-component vector of float) 0:9 'arg_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:9 Constant: 0:9 0 (const uint) 0:9 AtomicAdd ( temp uint) 0:9 @count: direct index for structure ( temp int) 0:9 'arg_a@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:9 Constant: 0:9 0 (const int) 0:9 Constant: 0:9 1 (const int) 0:? Constant: 0:? 1.000000 0:? 2.000000 0:? 3.000000 0:? 4.000000 0:10 Branch: Return with expression 0:10 indirect index ( buffer 4-component vector of float) 0:10 @data: direct index for structure ( buffer implicitly-sized array of 4-component vector of float) 0:10 'arg_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:10 Constant: 0:10 0 (const uint) 0:10 add ( temp uint) 0:10 AtomicAdd ( temp uint) 0:10 @count: direct index for structure ( temp int) 0:10 'arg_c@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:10 Constant: 0:10 0 (const int) 0:10 Constant: 0:10 -1 (const int) 0:10 Constant: 0:10 -1 (const int) 0:19 Function Definition: @main(u1; ( temp 4-component vector of float) 0:19 Function Parameters: 0:19 'pos' ( in uint) 0:? Sequence 0:22 Branch: Return with expression 0:22 Function Call: Fn2(block--vf4[0]1;block--vf4[0]1; ( temp 4-component vector of float) 0:22 'sbuf_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:22 'sbuf_a@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:22 'sbuf_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:22 'sbuf_c@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:19 Function Definition: main( ( temp void) 0:19 Function Parameters: 0:? Sequence 0:19 move second child to first child ( temp uint) 0:? 'pos' ( temp uint) 0:? 'pos' (layout( location=0) flat in uint) 0:19 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:19 Function Call: @main(u1; ( temp 4-component vector of float) 0:? 'pos' ( temp uint) 0:? Linker Objects 0:? 'sbuf_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:? 'sbuf_a@count' (layout( row_major std430) buffer block{layout( row_major std430) buffer int @count}) 0:? 'sbuf_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:? 'sbuf_c@count' (layout( row_major std430) buffer block{layout( row_major std430) buffer int @count}) 0:? 'sbuf_unused' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:? 'pos' (layout( location=0) flat in uint) Linked fragment stage: Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:8 Function Definition: Fn2(block--vf4[0]1;block--vf4[0]1; ( temp 4-component vector of float) 0:8 Function Parameters: 0:8 'arg_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:8 'arg_a@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:8 'arg_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:8 'arg_c@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:? Sequence 0:9 move second child to first child ( temp 4-component vector of float) 0:9 indirect index ( buffer 4-component vector of float) 0:9 @data: direct index for structure ( buffer implicitly-sized array of 4-component vector of float) 0:9 'arg_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:9 Constant: 0:9 0 (const uint) 0:9 AtomicAdd ( temp uint) 0:9 @count: direct index for structure ( temp int) 0:9 'arg_a@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:9 Constant: 0:9 0 (const int) 0:9 Constant: 0:9 1 (const int) 0:? Constant: 0:? 1.000000 0:? 2.000000 0:? 3.000000 0:? 4.000000 0:10 Branch: Return with expression 0:10 indirect index ( buffer 4-component vector of float) 0:10 @data: direct index for structure ( buffer implicitly-sized array of 4-component vector of float) 0:10 'arg_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:10 Constant: 0:10 0 (const uint) 0:10 add ( temp uint) 0:10 AtomicAdd ( temp uint) 0:10 @count: direct index for structure ( temp int) 0:10 'arg_c@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:10 Constant: 0:10 0 (const int) 0:10 Constant: 0:10 -1 (const int) 0:10 Constant: 0:10 -1 (const int) 0:19 Function Definition: @main(u1; ( temp 4-component vector of float) 0:19 Function Parameters: 0:19 'pos' ( in uint) 0:? Sequence 0:22 Branch: Return with expression 0:22 Function Call: Fn2(block--vf4[0]1;block--vf4[0]1; ( temp 4-component vector of float) 0:22 'sbuf_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:22 'sbuf_a@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:22 'sbuf_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:22 'sbuf_c@count' ( buffer block{layout( row_major std430) buffer int @count}) 0:19 Function Definition: main( ( temp void) 0:19 Function Parameters: 0:? Sequence 0:19 move second child to first child ( temp uint) 0:? 'pos' ( temp uint) 0:? 'pos' (layout( location=0) flat in uint) 0:19 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:19 Function Call: @main(u1; ( temp 4-component vector of float) 0:? 'pos' ( temp uint) 0:? Linker Objects 0:? 'sbuf_a' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:? 'sbuf_a@count' (layout( row_major std430) buffer block{layout( row_major std430) buffer int @count}) 0:? 'sbuf_c' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:? 'sbuf_c@count' (layout( row_major std430) buffer block{layout( row_major std430) buffer int @count}) 0:? 'sbuf_unused' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of 4-component vector of float @data}) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:? 'pos' (layout( location=0) flat in uint) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 70 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 58 61 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "main" Name 9 "" MemberName 9 0 "@data" Name 12 "" MemberName 12 0 "@count" Name 19 "Fn2(block--vf4[0]1;block--vf4[0]1;" Name 15 "arg_a" Name 16 "arg_a@count" Name 17 "arg_c" Name 18 "arg_c@count" Name 25 "@main(u1;" Name 24 "pos" Name 49 "sbuf_a" Name 50 "sbuf_a@count" Name 51 "sbuf_c" Name 52 "sbuf_c@count" Name 56 "pos" Name 58 "pos" Name 61 "@entryPointOutput" Name 62 "param" Name 65 "sbuf_a@count" MemberName 65(sbuf_a@count) 0 "@count" Name 67 "sbuf_a@count" Name 68 "sbuf_c@count" Name 69 "sbuf_unused" Decorate 8 ArrayStride 16 MemberDecorate 9 0 Offset 0 Decorate 9 BufferBlock Decorate 12 BufferBlock Decorate 49(sbuf_a) DescriptorSet 0 Decorate 50(sbuf_a@count) DescriptorSet 0 Decorate 51(sbuf_c) DescriptorSet 0 Decorate 52(sbuf_c@count) DescriptorSet 0 Decorate 58(pos) Flat Decorate 58(pos) Location 0 Decorate 61(@entryPointOutput) Location 0 MemberDecorate 65(sbuf_a@count) 0 Offset 0 Decorate 65(sbuf_a@count) BufferBlock Decorate 67(sbuf_a@count) DescriptorSet 0 Decorate 68(sbuf_c@count) DescriptorSet 0 Decorate 69(sbuf_unused) DescriptorSet 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeRuntimeArray 7(fvec4) 9: TypeStruct 8 10: TypePointer Uniform 9(struct) 11: TypeInt 32 1 12: TypeStruct 11(int) 13: TypePointer Uniform 12(struct) 14: TypeFunction 7(fvec4) 10(ptr) 13(ptr) 10(ptr) 13(ptr) 21: TypeInt 32 0 22: TypePointer Function 21(int) 23: TypeFunction 7(fvec4) 22(ptr) 27: 11(int) Constant 0 28: TypePointer Uniform 11(int) 30: 11(int) Constant 1 31: 21(int) Constant 1 32: 21(int) Constant 0 34: 6(float) Constant 1065353216 35: 6(float) Constant 1073741824 36: 6(float) Constant 1077936128 37: 6(float) Constant 1082130432 38: 7(fvec4) ConstantComposite 34 35 36 37 39: TypePointer Uniform 7(fvec4) 42: 11(int) Constant 4294967295 49(sbuf_a): 10(ptr) Variable Uniform 50(sbuf_a@count): 13(ptr) Variable Uniform 51(sbuf_c): 10(ptr) Variable Uniform 52(sbuf_c@count): 13(ptr) Variable Uniform 57: TypePointer Input 21(int) 58(pos): 57(ptr) Variable Input 60: TypePointer Output 7(fvec4) 61(@entryPointOutput): 60(ptr) Variable Output 65(sbuf_a@count): TypeStruct 11(int) 66: TypePointer Uniform 65(sbuf_a@count) 67(sbuf_a@count): 66(ptr) Variable Uniform 68(sbuf_c@count): 66(ptr) Variable Uniform 69(sbuf_unused): 10(ptr) Variable Uniform 4(main): 2 Function None 3 5: Label 56(pos): 22(ptr) Variable Function 62(param): 22(ptr) Variable Function 59: 21(int) Load 58(pos) Store 56(pos) 59 63: 21(int) Load 56(pos) Store 62(param) 63 64: 7(fvec4) FunctionCall 25(@main(u1;) 62(param) Store 61(@entryPointOutput) 64 Return FunctionEnd 19(Fn2(block--vf4[0]1;block--vf4[0]1;): 7(fvec4) Function None 14 15(arg_a): 10(ptr) FunctionParameter 16(arg_a@count): 13(ptr) FunctionParameter 17(arg_c): 10(ptr) FunctionParameter 18(arg_c@count): 13(ptr) FunctionParameter 20: Label 29: 28(ptr) AccessChain 16(arg_a@count) 27 33: 21(int) AtomicIAdd 29 31 32 30 40: 39(ptr) AccessChain 15(arg_a) 27 33 Store 40 38 41: 28(ptr) AccessChain 18(arg_c@count) 27 43: 21(int) AtomicIAdd 41 31 32 42 44: 21(int) IAdd 43 42 45: 39(ptr) AccessChain 17(arg_c) 27 44 46: 7(fvec4) Load 45 ReturnValue 46 FunctionEnd 25(@main(u1;): 7(fvec4) Function None 23 24(pos): 22(ptr) FunctionParameter 26: Label 53: 7(fvec4) FunctionCall 19(Fn2(block--vf4[0]1;block--vf4[0]1;) 49(sbuf_a) 50(sbuf_a@count) 51(sbuf_c) 52(sbuf_c@count) ReturnValue 53 FunctionEnd