yum-mirror/glslang
git clone https://git.yummers.dev/yum-mirror/glslang
9c4f12c5
main
1spv.atomic.comp 2// Module Version 10000 3// Generated by (magic number): 8000b 4// Id's are bound by 76 5 6 Capability Shader 7 Capability AtomicStorage 8 1: ExtInstImport "GLSL.std.450" 9 MemoryModel Logical GLSL450 10 EntryPoint GLCompute 4 "main" 11 ExecutionMode 4 LocalSize 1 1 1 12 Source GLSL 450 13 Name 4 "main" 14 Name 10 "func(au1;" 15 Name 9 "c" 16 Name 12 "atoms(" 17 Name 20 "counter" 18 Name 23 "val" 19 Name 27 "countArr" 20 Name 37 "origi" 21 Name 39 "atomi" 22 Name 42 "origu" 23 Name 44 "atomu" 24 Name 45 "value" 25 Name 62 "dataSSB" 26 MemberName 62(dataSSB) 0 "f" 27 MemberName 62(dataSSB) 1 "n_frames_rendered" 28 Name 64 "result" 29 Name 73 "arrX" 30 Name 74 "arrY" 31 Name 75 "arrZ" 32 Decorate 20(counter) Binding 0 33 Decorate 20(counter) DescriptorSet 0 34 Decorate 20(counter) Offset 0 35 Decorate 27(countArr) Binding 0 36 Decorate 27(countArr) DescriptorSet 0 37 Decorate 27(countArr) Offset 4 38 Decorate 62(dataSSB) BufferBlock 39 MemberDecorate 62(dataSSB) 0 Restrict 40 MemberDecorate 62(dataSSB) 0 Offset 0 41 MemberDecorate 62(dataSSB) 1 Restrict 42 MemberDecorate 62(dataSSB) 1 Offset 16 43 Decorate 64(result) Restrict 44 Decorate 64(result) Binding 0 45 Decorate 64(result) DescriptorSet 0 46 Decorate 70 BuiltIn WorkgroupSize 47 2: TypeVoid 48 3: TypeFunction 2 49 6: TypeInt 32 0 50 7: TypePointer AtomicCounter 6(int) 51 8: TypeFunction 6(int) 7(ptr) 52 14: 6(int) Constant 1 53 15: 6(int) Constant 0 54 19: 6(int) Constant 1032 55 20(counter): 7(ptr) Variable AtomicCounter 56 22: TypePointer Function 6(int) 57 24: 6(int) Constant 4 58 25: TypeArray 6(int) 24 59 26: TypePointer AtomicCounter 25 60 27(countArr): 26(ptr) Variable AtomicCounter 61 28: TypeInt 32 1 62 29: 28(int) Constant 2 63 33: 28(int) Constant 1 64 36: TypePointer Function 28(int) 65 38: TypePointer Workgroup 28(int) 66 39(atomi): 38(ptr) Variable Workgroup 67 40: 28(int) Constant 3 68 43: TypePointer Workgroup 6(int) 69 44(atomu): 43(ptr) Variable Workgroup 70 45(value): 43(ptr) Variable Workgroup 71 48: 6(int) Constant 7 72 53: 28(int) Constant 7 73 57: 6(int) Constant 10 74 60: TypeFloat 32 75 61: TypeVector 28(int) 4 76 62(dataSSB): TypeStruct 60(float) 61(ivec4) 77 63: TypePointer Uniform 62(dataSSB) 78 64(result): 63(ptr) Variable Uniform 79 65: 6(int) Constant 2 80 66: TypePointer Uniform 28(int) 81 69: TypeVector 6(int) 3 82 70: 69(ivec3) ConstantComposite 14 14 14 83 71: TypeArray 28(int) 14 84 72: TypePointer Private 71 85 73(arrX): 72(ptr) Variable Private 86 74(arrY): 72(ptr) Variable Private 87 75(arrZ): 72(ptr) Variable Private 88 4(main): 2 Function None 3 89 5: Label 90 23(val): 22(ptr) Variable Function 91 MemoryBarrier 14 19 92 21: 6(int) FunctionCall 10(func(au1;) 20(counter) 93 30: 7(ptr) AccessChain 27(countArr) 29 94 31: 6(int) AtomicLoad 30 14 15 95 Store 23(val) 31 96 32: 6(int) AtomicIDecrement 20(counter) 14 15 97 34: 6(int) ISub 32 33 98 35: 6(int) AtomicIIncrement 20(counter) 14 15 99 Return 100 FunctionEnd 101 10(func(au1;): 6(int) Function None 8 102 9(c): 7(ptr) FunctionParameter 103 11: Label 104 16: 6(int) AtomicIIncrement 9(c) 14 15 105 ReturnValue 16 106 FunctionEnd 107 12(atoms(): 2 Function None 3 108 13: Label 109 37(origi): 36(ptr) Variable Function 110 42(origu): 22(ptr) Variable Function 111 41: 28(int) AtomicIAdd 39(atomi) 14 15 40 112 Store 37(origi) 41 113 46: 6(int) Load 45(value) 114 47: 6(int) AtomicAnd 44(atomu) 14 15 46 115 Store 42(origu) 47 116 49: 6(int) AtomicOr 44(atomu) 14 15 48 117 Store 42(origu) 49 118 50: 6(int) AtomicXor 44(atomu) 14 15 48 119 Store 42(origu) 50 120 51: 6(int) Load 45(value) 121 52: 6(int) AtomicUMin 44(atomu) 14 15 51 122 Store 42(origu) 52 123 54: 28(int) AtomicSMax 39(atomi) 14 15 53 124 Store 37(origi) 54 125 55: 28(int) Load 37(origi) 126 56: 28(int) AtomicExchange 39(atomi) 14 15 55 127 Store 37(origi) 56 128 58: 6(int) Load 45(value) 129 59: 6(int) AtomicCompareExchange 44(atomu) 14 15 15 58 57 130 Store 42(origu) 59 131 67: 66(ptr) AccessChain 64(result) 33 65 132 68: 28(int) AtomicIAdd 67 14 15 33 133 Return 134 FunctionEnd