hlsl.promote.atomic.frag Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:5 Function Definition: @main( ( temp 4-component vector of float) 0:5 Function Parameters: 0:? Sequence 0:13 move second child to first child ( temp int) 0:13 'Orig' ( temp int) 0:13 Convert uint to int ( temp int) 0:13 imageAtomicAdd ( temp uint) 0:13 's_uintbuff' (layout( r32ui) uniform uimageBuffer) 0:13 'Loc' ( temp int) 0:13 Convert int to uint ( temp uint) 0:13 'Inc' ( temp int) 0:15 Branch: Return with expression 0:? Constant: 0:? 0.000000 0:? 0.000000 0:? 0.000000 0:? 0.000000 0:5 Function Definition: main( ( temp void) 0:5 Function Parameters: 0:? Sequence 0:5 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:5 Function Call: @main( ( temp 4-component vector of float) 0:? Linker Objects 0:? 's_uintbuff' (layout( r32ui) uniform uimageBuffer) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) Linked fragment stage: Shader version: 500 gl_FragCoord origin is upper left 0:? Sequence 0:5 Function Definition: @main( ( temp 4-component vector of float) 0:5 Function Parameters: 0:? Sequence 0:13 move second child to first child ( temp int) 0:13 'Orig' ( temp int) 0:13 Convert uint to int ( temp int) 0:13 imageAtomicAdd ( temp uint) 0:13 's_uintbuff' (layout( r32ui) uniform uimageBuffer) 0:13 'Loc' ( temp int) 0:13 Convert int to uint ( temp uint) 0:13 'Inc' ( temp int) 0:15 Branch: Return with expression 0:? Constant: 0:? 0.000000 0:? 0.000000 0:? 0.000000 0:? 0.000000 0:5 Function Definition: main( ( temp void) 0:5 Function Parameters: 0:? Sequence 0:5 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 0:5 Function Call: @main( ( temp 4-component vector of float) 0:? Linker Objects 0:? 's_uintbuff' (layout( r32ui) uniform uimageBuffer) 0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) // Module Version 10000 // Generated by (magic number): 8000a // Id's are bound by 36 Capability Shader Capability ImageBuffer 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 "main" 34 ExecutionMode 4 OriginUpperLeft Source HLSL 500 Name 4 "main" Name 9 "@main(" Name 13 "Orig" Name 17 "s_uintbuff" Name 18 "Loc" Name 20 "Inc" Name 34 "@entryPointOutput" Decorate 17(s_uintbuff) DescriptorSet 0 Decorate 17(s_uintbuff) Binding 0 Decorate 34(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypeFunction 7(fvec4) 11: TypeInt 32 1 12: TypePointer Function 11(int) 14: TypeInt 32 0 15: TypeImage 14(int) Buffer nonsampled format:R32ui 16: TypePointer UniformConstant 15 17(s_uintbuff): 16(ptr) Variable UniformConstant 23: 14(int) Constant 0 24: TypePointer Image 14(int) 26: 14(int) Constant 1 29: 6(float) Constant 0 30: 7(fvec4) ConstantComposite 29 29 29 29 33: TypePointer Output 7(fvec4) 34(@entryPointOutput): 33(ptr) Variable Output 4(main): 2 Function None 3 5: Label 35: 7(fvec4) FunctionCall 9(@main() Store 34(@entryPointOutput) 35 Return FunctionEnd 9(@main(): 7(fvec4) Function None 8 10: Label 13(Orig): 12(ptr) Variable Function 18(Loc): 12(ptr) Variable Function 20(Inc): 12(ptr) Variable Function 19: 11(int) Load 18(Loc) 21: 11(int) Load 20(Inc) 22: 14(int) Bitcast 21 25: 24(ptr) ImageTexelPointer 17(s_uintbuff) 19 23 27: 14(int) AtomicIAdd 25 26 23 22 28: 11(int) Bitcast 27 Store 13(Orig) 28 ReturnValue 30 FunctionEnd