diff options
Diffstat (limited to '3rdparty/bgfx/3rdparty/glslang/Test/baseResults/hlsl.structbuffer.atomics.frag.out')
-rw-r--r-- | 3rdparty/bgfx/3rdparty/glslang/Test/baseResults/hlsl.structbuffer.atomics.frag.out | 599 |
1 files changed, 599 insertions, 0 deletions
diff --git a/3rdparty/bgfx/3rdparty/glslang/Test/baseResults/hlsl.structbuffer.atomics.frag.out b/3rdparty/bgfx/3rdparty/glslang/Test/baseResults/hlsl.structbuffer.atomics.frag.out new file mode 100644 index 00000000000..a463a887846 --- /dev/null +++ b/3rdparty/bgfx/3rdparty/glslang/Test/baseResults/hlsl.structbuffer.atomics.frag.out @@ -0,0 +1,599 @@ +hlsl.structbuffer.atomics.frag +Shader version: 450 +gl_FragCoord origin is upper left +0:? Sequence +0:5 Function Definition: @main(u1; ( temp 4-component vector of float) +0:5 Function Parameters: +0:5 'pos' ( in uint) +0:? Sequence +0:8 AtomicAdd ( temp void) +0:8 indirect index (layout( row_major std430) buffer uint) +0:8 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:8 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:8 Constant: +0:8 0 (const uint) +0:8 right-shift ( temp int) +0:8 Constant: +0:8 8 (const int) +0:8 Constant: +0:8 2 (const int) +0:8 Constant: +0:8 1 (const int) +0:9 move second child to first child ( temp uint) +0:9 'u' ( temp uint) +0:9 AtomicAdd ( temp uint) +0:9 indirect index (layout( row_major std430) buffer uint) +0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:9 Constant: +0:9 0 (const uint) +0:9 right-shift ( temp int) +0:9 Constant: +0:9 8 (const int) +0:9 Constant: +0:9 2 (const int) +0:9 Constant: +0:9 1 (const int) +0:10 AtomicAnd ( temp void) +0:10 indirect index (layout( row_major std430) buffer uint) +0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:10 Constant: +0:10 0 (const uint) +0:10 right-shift ( temp int) +0:10 Constant: +0:10 8 (const int) +0:10 Constant: +0:10 2 (const int) +0:10 Constant: +0:10 1 (const int) +0:11 move second child to first child ( temp uint) +0:11 'u' ( temp uint) +0:11 AtomicAnd ( temp uint) +0:11 indirect index (layout( row_major std430) buffer uint) +0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:11 Constant: +0:11 0 (const uint) +0:11 right-shift ( temp int) +0:11 Constant: +0:11 8 (const int) +0:11 Constant: +0:11 2 (const int) +0:11 Constant: +0:11 1 (const int) +0:12 move second child to first child ( temp uint) +0:12 'u' ( temp uint) +0:12 Convert int to uint ( temp uint) +0:12 AtomicCompSwap ( temp int) +0:12 indirect index (layout( row_major std430) buffer uint) +0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:12 Constant: +0:12 0 (const uint) +0:12 right-shift ( temp int) +0:12 Constant: +0:12 8 (const int) +0:12 Constant: +0:12 2 (const int) +0:12 Constant: +0:12 1 (const int) +0:12 Constant: +0:12 2 (const int) +0:14 move second child to first child ( temp uint) +0:14 'u' ( temp uint) +0:14 AtomicExchange ( temp uint) +0:14 indirect index (layout( row_major std430) buffer uint) +0:14 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:14 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:14 Constant: +0:14 0 (const uint) +0:14 right-shift ( temp int) +0:14 Constant: +0:14 8 (const int) +0:14 Constant: +0:14 2 (const int) +0:14 Constant: +0:14 1 (const int) +0:15 AtomicMax ( temp void) +0:15 indirect index (layout( row_major std430) buffer uint) +0:15 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:15 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:15 Constant: +0:15 0 (const uint) +0:15 right-shift ( temp int) +0:15 Constant: +0:15 8 (const int) +0:15 Constant: +0:15 2 (const int) +0:15 Constant: +0:15 1 (const int) +0:16 move second child to first child ( temp uint) +0:16 'u' ( temp uint) +0:16 AtomicMax ( temp uint) +0:16 indirect index (layout( row_major std430) buffer uint) +0:16 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:16 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:16 Constant: +0:16 0 (const uint) +0:16 right-shift ( temp int) +0:16 Constant: +0:16 8 (const int) +0:16 Constant: +0:16 2 (const int) +0:16 Constant: +0:16 1 (const int) +0:17 AtomicMin ( temp void) +0:17 indirect index (layout( row_major std430) buffer uint) +0:17 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:17 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:17 Constant: +0:17 0 (const uint) +0:17 right-shift ( temp int) +0:17 Constant: +0:17 8 (const int) +0:17 Constant: +0:17 2 (const int) +0:17 Constant: +0:17 1 (const int) +0:18 move second child to first child ( temp uint) +0:18 'u' ( temp uint) +0:18 AtomicMin ( temp uint) +0:18 indirect index (layout( row_major std430) buffer uint) +0:18 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:18 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:18 Constant: +0:18 0 (const uint) +0:18 right-shift ( temp int) +0:18 Constant: +0:18 8 (const int) +0:18 Constant: +0:18 2 (const int) +0:18 Constant: +0:18 1 (const int) +0:19 AtomicOr ( temp void) +0:19 indirect index (layout( row_major std430) buffer uint) +0:19 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:19 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:19 Constant: +0:19 0 (const uint) +0:19 right-shift ( temp int) +0:19 Constant: +0:19 8 (const int) +0:19 Constant: +0:19 2 (const int) +0:19 Constant: +0:19 1 (const int) +0:20 move second child to first child ( temp uint) +0:20 'u' ( temp uint) +0:20 AtomicOr ( temp uint) +0:20 indirect index (layout( row_major std430) buffer uint) +0:20 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:20 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:20 Constant: +0:20 0 (const uint) +0:20 right-shift ( temp int) +0:20 Constant: +0:20 8 (const int) +0:20 Constant: +0:20 2 (const int) +0:20 Constant: +0:20 1 (const int) +0:21 AtomicXor ( temp void) +0:21 indirect index (layout( row_major std430) buffer uint) +0:21 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:21 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:21 Constant: +0:21 0 (const uint) +0:21 right-shift ( temp int) +0:21 Constant: +0:21 8 (const int) +0:21 Constant: +0:21 2 (const int) +0:21 Constant: +0:21 1 (const int) +0:22 move second child to first child ( temp uint) +0:22 'u' ( temp uint) +0:22 AtomicXor ( temp uint) +0:22 indirect index (layout( row_major std430) buffer uint) +0:22 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:22 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:22 Constant: +0:22 0 (const uint) +0:22 right-shift ( temp int) +0:22 Constant: +0:22 8 (const int) +0:22 Constant: +0:22 2 (const int) +0:22 Constant: +0:22 1 (const int) +0:24 Branch: Return with expression +0:24 Construct vec4 ( temp 4-component vector of float) +0:24 Convert uint to float ( temp float) +0:24 indirect index (layout( row_major std430) buffer uint) +0:24 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:24 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:24 Constant: +0:24 0 (const uint) +0:24 right-shift ( temp int) +0:24 'pos' ( in uint) +0:24 Constant: +0:24 2 (const int) +0:5 Function Definition: main( ( temp void) +0:5 Function Parameters: +0:? Sequence +0:5 move second child to first child ( temp uint) +0:? 'pos' ( temp uint) +0:? 'pos' (layout( location=0) in uint) +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(u1; ( temp 4-component vector of float) +0:? 'pos' ( temp uint) +0:? Linker Objects +0:? 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) +0:? 'pos' (layout( location=0) in uint) + + +Linked fragment stage: + + +Shader version: 450 +gl_FragCoord origin is upper left +0:? Sequence +0:5 Function Definition: @main(u1; ( temp 4-component vector of float) +0:5 Function Parameters: +0:5 'pos' ( in uint) +0:? Sequence +0:8 AtomicAdd ( temp void) +0:8 indirect index (layout( row_major std430) buffer uint) +0:8 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:8 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:8 Constant: +0:8 0 (const uint) +0:8 right-shift ( temp int) +0:8 Constant: +0:8 8 (const int) +0:8 Constant: +0:8 2 (const int) +0:8 Constant: +0:8 1 (const int) +0:9 move second child to first child ( temp uint) +0:9 'u' ( temp uint) +0:9 AtomicAdd ( temp uint) +0:9 indirect index (layout( row_major std430) buffer uint) +0:9 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:9 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:9 Constant: +0:9 0 (const uint) +0:9 right-shift ( temp int) +0:9 Constant: +0:9 8 (const int) +0:9 Constant: +0:9 2 (const int) +0:9 Constant: +0:9 1 (const int) +0:10 AtomicAnd ( temp void) +0:10 indirect index (layout( row_major std430) buffer uint) +0:10 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:10 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:10 Constant: +0:10 0 (const uint) +0:10 right-shift ( temp int) +0:10 Constant: +0:10 8 (const int) +0:10 Constant: +0:10 2 (const int) +0:10 Constant: +0:10 1 (const int) +0:11 move second child to first child ( temp uint) +0:11 'u' ( temp uint) +0:11 AtomicAnd ( temp uint) +0:11 indirect index (layout( row_major std430) buffer uint) +0:11 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:11 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:11 Constant: +0:11 0 (const uint) +0:11 right-shift ( temp int) +0:11 Constant: +0:11 8 (const int) +0:11 Constant: +0:11 2 (const int) +0:11 Constant: +0:11 1 (const int) +0:12 move second child to first child ( temp uint) +0:12 'u' ( temp uint) +0:12 Convert int to uint ( temp uint) +0:12 AtomicCompSwap ( temp int) +0:12 indirect index (layout( row_major std430) buffer uint) +0:12 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:12 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:12 Constant: +0:12 0 (const uint) +0:12 right-shift ( temp int) +0:12 Constant: +0:12 8 (const int) +0:12 Constant: +0:12 2 (const int) +0:12 Constant: +0:12 1 (const int) +0:12 Constant: +0:12 2 (const int) +0:14 move second child to first child ( temp uint) +0:14 'u' ( temp uint) +0:14 AtomicExchange ( temp uint) +0:14 indirect index (layout( row_major std430) buffer uint) +0:14 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:14 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:14 Constant: +0:14 0 (const uint) +0:14 right-shift ( temp int) +0:14 Constant: +0:14 8 (const int) +0:14 Constant: +0:14 2 (const int) +0:14 Constant: +0:14 1 (const int) +0:15 AtomicMax ( temp void) +0:15 indirect index (layout( row_major std430) buffer uint) +0:15 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:15 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:15 Constant: +0:15 0 (const uint) +0:15 right-shift ( temp int) +0:15 Constant: +0:15 8 (const int) +0:15 Constant: +0:15 2 (const int) +0:15 Constant: +0:15 1 (const int) +0:16 move second child to first child ( temp uint) +0:16 'u' ( temp uint) +0:16 AtomicMax ( temp uint) +0:16 indirect index (layout( row_major std430) buffer uint) +0:16 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:16 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:16 Constant: +0:16 0 (const uint) +0:16 right-shift ( temp int) +0:16 Constant: +0:16 8 (const int) +0:16 Constant: +0:16 2 (const int) +0:16 Constant: +0:16 1 (const int) +0:17 AtomicMin ( temp void) +0:17 indirect index (layout( row_major std430) buffer uint) +0:17 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:17 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:17 Constant: +0:17 0 (const uint) +0:17 right-shift ( temp int) +0:17 Constant: +0:17 8 (const int) +0:17 Constant: +0:17 2 (const int) +0:17 Constant: +0:17 1 (const int) +0:18 move second child to first child ( temp uint) +0:18 'u' ( temp uint) +0:18 AtomicMin ( temp uint) +0:18 indirect index (layout( row_major std430) buffer uint) +0:18 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:18 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:18 Constant: +0:18 0 (const uint) +0:18 right-shift ( temp int) +0:18 Constant: +0:18 8 (const int) +0:18 Constant: +0:18 2 (const int) +0:18 Constant: +0:18 1 (const int) +0:19 AtomicOr ( temp void) +0:19 indirect index (layout( row_major std430) buffer uint) +0:19 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:19 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:19 Constant: +0:19 0 (const uint) +0:19 right-shift ( temp int) +0:19 Constant: +0:19 8 (const int) +0:19 Constant: +0:19 2 (const int) +0:19 Constant: +0:19 1 (const int) +0:20 move second child to first child ( temp uint) +0:20 'u' ( temp uint) +0:20 AtomicOr ( temp uint) +0:20 indirect index (layout( row_major std430) buffer uint) +0:20 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:20 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:20 Constant: +0:20 0 (const uint) +0:20 right-shift ( temp int) +0:20 Constant: +0:20 8 (const int) +0:20 Constant: +0:20 2 (const int) +0:20 Constant: +0:20 1 (const int) +0:21 AtomicXor ( temp void) +0:21 indirect index (layout( row_major std430) buffer uint) +0:21 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:21 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:21 Constant: +0:21 0 (const uint) +0:21 right-shift ( temp int) +0:21 Constant: +0:21 8 (const int) +0:21 Constant: +0:21 2 (const int) +0:21 Constant: +0:21 1 (const int) +0:22 move second child to first child ( temp uint) +0:22 'u' ( temp uint) +0:22 AtomicXor ( temp uint) +0:22 indirect index (layout( row_major std430) buffer uint) +0:22 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:22 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:22 Constant: +0:22 0 (const uint) +0:22 right-shift ( temp int) +0:22 Constant: +0:22 8 (const int) +0:22 Constant: +0:22 2 (const int) +0:22 Constant: +0:22 1 (const int) +0:24 Branch: Return with expression +0:24 Construct vec4 ( temp 4-component vector of float) +0:24 Convert uint to float ( temp float) +0:24 indirect index (layout( row_major std430) buffer uint) +0:24 @data: direct index for structure (layout( row_major std430) buffer implicitly-sized array of uint) +0:24 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:24 Constant: +0:24 0 (const uint) +0:24 right-shift ( temp int) +0:24 'pos' ( in uint) +0:24 Constant: +0:24 2 (const int) +0:5 Function Definition: main( ( temp void) +0:5 Function Parameters: +0:? Sequence +0:5 move second child to first child ( temp uint) +0:? 'pos' ( temp uint) +0:? 'pos' (layout( location=0) in uint) +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(u1; ( temp 4-component vector of float) +0:? 'pos' ( temp uint) +0:? Linker Objects +0:? 'sbuf' (layout( row_major std430) buffer block{layout( row_major std430) buffer implicitly-sized array of uint @data}) +0:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) +0:? 'pos' (layout( location=0) in uint) + +// Module Version 10000 +// Generated by (magic number): 80001 +// Id's are bound by 87 + + Capability Shader + 1: ExtInstImport "GLSL.std.450" + MemoryModel Logical GLSL450 + EntryPoint Fragment 4 "main" 80 83 + ExecutionMode 4 OriginUpperLeft + Name 4 "main" + Name 12 "@main(u1;" + Name 11 "pos" + Name 15 "sbuf" + MemberName 15(sbuf) 0 "@data" + Name 17 "sbuf" + Name 29 "u" + Name 78 "pos" + Name 80 "pos" + Name 83 "@entryPointOutput" + Name 84 "param" + Decorate 14 ArrayStride 4 + MemberDecorate 15(sbuf) 0 Offset 0 + Decorate 15(sbuf) BufferBlock + Decorate 17(sbuf) DescriptorSet 0 + Decorate 80(pos) Location 0 + Decorate 83(@entryPointOutput) Location 0 + 2: TypeVoid + 3: TypeFunction 2 + 6: TypeInt 32 0 + 7: TypePointer Function 6(int) + 8: TypeFloat 32 + 9: TypeVector 8(float) 4 + 10: TypeFunction 9(fvec4) 7(ptr) + 14: TypeRuntimeArray 6(int) + 15(sbuf): TypeStruct 14 + 16: TypePointer Uniform 15(sbuf) + 17(sbuf): 16(ptr) Variable Uniform + 18: TypeInt 32 1 + 19: 18(int) Constant 0 + 20: 18(int) Constant 8 + 21: 18(int) Constant 2 + 23: TypePointer Uniform 6(int) + 25: 18(int) Constant 1 + 26: 6(int) Constant 1 + 27: 6(int) Constant 0 + 79: TypePointer Input 6(int) + 80(pos): 79(ptr) Variable Input + 82: TypePointer Output 9(fvec4) +83(@entryPointOutput): 82(ptr) Variable Output + 4(main): 2 Function None 3 + 5: Label + 78(pos): 7(ptr) Variable Function + 84(param): 7(ptr) Variable Function + 81: 6(int) Load 80(pos) + Store 78(pos) 81 + 85: 6(int) Load 78(pos) + Store 84(param) 85 + 86: 9(fvec4) FunctionCall 12(@main(u1;) 84(param) + Store 83(@entryPointOutput) 86 + Return + FunctionEnd + 12(@main(u1;): 9(fvec4) Function None 10 + 11(pos): 7(ptr) FunctionParameter + 13: Label + 29(u): 7(ptr) Variable Function + 22: 18(int) ShiftRightArithmetic 20 21 + 24: 23(ptr) AccessChain 17(sbuf) 19 22 + 28: 2 AtomicIAdd 24 26 27 25 + 30: 18(int) ShiftRightArithmetic 20 21 + 31: 23(ptr) AccessChain 17(sbuf) 19 30 + 32: 6(int) AtomicIAdd 31 26 27 25 + Store 29(u) 32 + 33: 18(int) ShiftRightArithmetic 20 21 + 34: 23(ptr) AccessChain 17(sbuf) 19 33 + 35: 2 AtomicAnd 34 26 27 25 + 36: 18(int) ShiftRightArithmetic 20 21 + 37: 23(ptr) AccessChain 17(sbuf) 19 36 + 38: 6(int) AtomicAnd 37 26 27 25 + Store 29(u) 38 + 39: 18(int) ShiftRightArithmetic 20 21 + 40: 23(ptr) AccessChain 17(sbuf) 19 39 + 41: 18(int) AtomicCompareExchange 40 26 27 27 21 25 + 42: 6(int) Bitcast 41 + Store 29(u) 42 + 43: 18(int) ShiftRightArithmetic 20 21 + 44: 23(ptr) AccessChain 17(sbuf) 19 43 + 45: 6(int) AtomicExchange 44 26 27 25 + Store 29(u) 45 + 46: 18(int) ShiftRightArithmetic 20 21 + 47: 23(ptr) AccessChain 17(sbuf) 19 46 + 48: 2 AtomicSMax 47 26 27 25 + 49: 18(int) ShiftRightArithmetic 20 21 + 50: 23(ptr) AccessChain 17(sbuf) 19 49 + 51: 6(int) AtomicUMax 50 26 27 25 + Store 29(u) 51 + 52: 18(int) ShiftRightArithmetic 20 21 + 53: 23(ptr) AccessChain 17(sbuf) 19 52 + 54: 2 AtomicSMin 53 26 27 25 + 55: 18(int) ShiftRightArithmetic 20 21 + 56: 23(ptr) AccessChain 17(sbuf) 19 55 + 57: 6(int) AtomicUMin 56 26 27 25 + Store 29(u) 57 + 58: 18(int) ShiftRightArithmetic 20 21 + 59: 23(ptr) AccessChain 17(sbuf) 19 58 + 60: 2 AtomicOr 59 26 27 25 + 61: 18(int) ShiftRightArithmetic 20 21 + 62: 23(ptr) AccessChain 17(sbuf) 19 61 + 63: 6(int) AtomicOr 62 26 27 25 + Store 29(u) 63 + 64: 18(int) ShiftRightArithmetic 20 21 + 65: 23(ptr) AccessChain 17(sbuf) 19 64 + 66: 2 AtomicXor 65 26 27 25 + 67: 18(int) ShiftRightArithmetic 20 21 + 68: 23(ptr) AccessChain 17(sbuf) 19 67 + 69: 6(int) AtomicXor 68 26 27 25 + Store 29(u) 69 + 70: 6(int) Load 11(pos) + 71: 18(int) ShiftRightLogical 70 21 + 72: 23(ptr) AccessChain 17(sbuf) 19 71 + 73: 6(int) Load 72 + 74: 8(float) ConvertUToF 73 + 75: 9(fvec4) CompositeConstruct 74 74 74 74 + ReturnValue 75 + FunctionEnd |