yum-mirror/glslang

git clone https://git.yummers.dev/yum-mirror/glslang

Spencer FrickeRevert "`local_size_*_id` and SPIR-V 1.2 (#4052)" (#4403)e7e245dd

main
15.9 KiB303 linesraw
1spv.atomicAdd.bufferReference.comp
2// Module Version 10300
3// Generated by (magic number): 8000b
4// Id's are bound by 188
5
6                              Capability Shader
7                              Capability VulkanMemoryModelKHR
8                              Capability VulkanMemoryModelDeviceScopeKHR
9                              Capability PhysicalStorageBufferAddressesEXT
10                              Extension  "SPV_KHR_physical_storage_buffer"
11                              Extension  "SPV_KHR_vulkan_memory_model"
12               1:             ExtInstImport  "GLSL.std.450"
13                              MemoryModel PhysicalStorageBuffer64EXT VulkanKHR
14                              EntryPoint GLCompute 4  "main" 37 81 133
15                              ExecutionMode 4 LocalSize 1 1 1
16                              Source GLSL 450
17                              SourceExtension  "GL_ARB_gpu_shader_int64"
18                              SourceExtension  "GL_EXT_buffer_reference"
19                              SourceExtension  "GL_KHR_memory_scope_semantics"
20                              SourceExtension  "GL_KHR_shader_subgroup_ballot"
21                              SourceExtension  "GL_KHR_shader_subgroup_basic"
22                              SourceExtension  "GL_KHR_shader_subgroup_shuffle"
23                              Name 4  "main"
24                              Name 8  "pass"
25                              Name 10  "skip"
26                              Name 13  "sharedSkip"
27                              Name 18  "PayloadRef"
28                              MemberName 18(PayloadRef) 0  "x"
29                              Name 20  "payload"
30                              Name 22  "PC"
31                              MemberName 22(PC) 0  "payloadref"
32                              MemberName 22(PC) 1  "guard"
33                              Name 24  "GuardRef"
34                              MemberName 24(GuardRef) 0  "x"
35                              Name 26  ""
36                              Name 34  "globalId"
37                              Name 37  "gl_GlobalInvocationID"
38                              Name 42  "partnerGlobalId"
39                              Name 43  "DIM"
40                              Name 44  "NUM_WORKGROUP_EACH_DIM"
41                              Name 54  "bufferCoord"
42                              Name 66  "partnerBufferCoord"
43                              Name 75  "imageCoord"
44                              Name 77  "partnerImageCoord"
45                              Name 79  "globalId00"
46                              Name 81  "gl_WorkGroupID"
47                              Name 86  "partnerGlobalId00"
48                              Name 95  "bufferCoord00"
49                              Name 104  "partnerBufferCoord00"
50                              Name 113  "imageCoord00"
51                              Name 115  "partnerImageCoord00"
52                              Name 133  "gl_LocalInvocationID"
53                              Name 163  "r"
54                              Name 179  "Fail"
55                              MemberName 179(Fail) 0  "x"
56                              Name 181  "fail"
57                              Decorate 17 ArrayStride 4
58                              Decorate 18(PayloadRef) Block
59                              MemberDecorate 18(PayloadRef) 0 Offset 0
60                              Decorate 20(payload) DecorationAliasedPointerEXT
61                              Decorate 22(PC) Block
62                              MemberDecorate 22(PC) 0 Offset 0
63                              MemberDecorate 22(PC) 1 Offset 8
64                              Decorate 23 ArrayStride 4
65                              Decorate 24(GuardRef) Block
66                              MemberDecorate 24(GuardRef) 0 Offset 0
67                              Decorate 37(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
68                              Decorate 43(DIM) SpecId 0
69                              Decorate 44(NUM_WORKGROUP_EACH_DIM) SpecId 1
70                              Decorate 81(gl_WorkGroupID) BuiltIn WorkgroupId
71                              Decorate 133(gl_LocalInvocationID) BuiltIn LocalInvocationId
72                              Decorate 178 ArrayStride 4
73                              Decorate 179(Fail) Block
74                              MemberDecorate 179(Fail) 0 Offset 0
75                              Decorate 181(fail) Binding 2
76                              Decorate 181(fail) DescriptorSet 0
77                              Decorate 185 SpecId 0
78                              Decorate 186 SpecId 0
79                              Decorate 187 BuiltIn WorkgroupSize
80               2:             TypeVoid
81               3:             TypeFunction 2
82               6:             TypeBool
83               7:             TypePointer Function 6(bool)
84               9:     6(bool) ConstantTrue
85              11:     6(bool) ConstantFalse
86              12:             TypePointer Workgroup 6(bool)
87  13(sharedSkip):     12(ptr) Variable Workgroup
88              14:             TypeInt 32 0
89              15:     14(int) Constant 2
90                              TypeForwardPointer 16 PhysicalStorageBufferEXT
91              17:             TypeRuntimeArray 14(int)
92  18(PayloadRef):             TypeStruct 17
93              16:             TypePointer PhysicalStorageBufferEXT 18(PayloadRef)
94              19:             TypePointer Function 16(ptr)
95                              TypeForwardPointer 21 PhysicalStorageBufferEXT
96          22(PC):             TypeStruct 16(ptr) 21
97              23:             TypeRuntimeArray 14(int)
98    24(GuardRef):             TypeStruct 23
99              21:             TypePointer PhysicalStorageBufferEXT 24(GuardRef)
100              25:             TypePointer PushConstant 22(PC)
101              26:     25(ptr) Variable PushConstant
102              27:             TypeInt 32 1
103              28:     27(int) Constant 0
104              29:             TypePointer PushConstant 16(ptr)
105              32:             TypeVector 27(int) 2
106              33:             TypePointer Function 32(ivec2)
107              35:             TypeVector 14(int) 3
108              36:             TypePointer Input 35(ivec3)
10937(gl_GlobalInvocationID):     36(ptr) Variable Input
110              38:             TypeVector 14(int) 2
111         43(DIM):     27(int) SpecConstant 1
11244(NUM_WORKGROUP_EACH_DIM):     27(int) SpecConstant 1
113              45:     27(int) SpecConstantOp 132 43(DIM) 44(NUM_WORKGROUP_EACH_DIM)
114              46:     27(int) Constant 1
115              47:     27(int) SpecConstantOp 130 45 46
116              48:   32(ivec2) SpecConstantComposite 47 47
117              53:             TypePointer Function 14(int)
118              55:     14(int) Constant 1
119              56:             TypePointer Function 27(int)
120              61:     14(int) Constant 0
121              80:   32(ivec2) SpecConstantComposite 43(DIM) 43(DIM)
12281(gl_WorkGroupID):     36(ptr) Variable Input
123              87:   32(ivec2) SpecConstantComposite 43(DIM) 43(DIM)
124              88:     27(int) SpecConstantOp 130 44(NUM_WORKGROUP_EACH_DIM) 46
125              89:   32(ivec2) SpecConstantComposite 88 88
126             122:             TypePointer PhysicalStorageBufferEXT 14(int)
127             125:     27(int) Constant 31
128             129:     27(int) Constant 2
129             130:     27(int) Constant 320
130             131:     27(int) Constant 8200
131             132:     14(int) Constant 8520
132133(gl_LocalInvocationID):     36(ptr) Variable Input
133             136:   38(ivec2) ConstantComposite 61 61
134             137:             TypeVector 6(bool) 2
135             142:             TypePointer PushConstant 21(ptr)
136             147:     27(int) Constant 64
137             148:     27(int) Constant 8196
138             149:     14(int) Constant 5
139             150:     14(int) Constant 8260
140             155:     27(int) Constant 16386
141             156:     14(int) Constant 16450
142             160:     27(int) Constant 16392
143             161:     14(int) Constant 16712
144             178:             TypeRuntimeArray 14(int)
145       179(Fail):             TypeStruct 178
146             180:             TypePointer StorageBuffer 179(Fail)
147       181(fail):    180(ptr) Variable StorageBuffer
148             183:             TypePointer StorageBuffer 14(int)
149             185:     14(int) SpecConstant 1
150             186:     14(int) SpecConstant 1
151             187:   35(ivec3) SpecConstantComposite 185 186 55
152         4(main):           2 Function None 3
153               5:             Label
154         8(pass):      7(ptr) Variable Function
155        10(skip):      7(ptr) Variable Function
156     20(payload):     19(ptr) Variable Function
157    34(globalId):     33(ptr) Variable Function
15842(partnerGlobalId):     33(ptr) Variable Function
159 54(bufferCoord):     53(ptr) Variable Function
16066(partnerBufferCoord):     53(ptr) Variable Function
161  75(imageCoord):     33(ptr) Variable Function
16277(partnerImageCoord):     33(ptr) Variable Function
163  79(globalId00):     33(ptr) Variable Function
16486(partnerGlobalId00):     33(ptr) Variable Function
16595(bufferCoord00):     53(ptr) Variable Function
166104(partnerBufferCoord00):     53(ptr) Variable Function
167113(imageCoord00):     33(ptr) Variable Function
168115(partnerImageCoord00):     33(ptr) Variable Function
169          163(r):     53(ptr) Variable Function
170                              Store 8(pass) 9
171                              Store 10(skip) 11
172                              Store 13(sharedSkip) 11 MakePointerAvailableKHR NonPrivatePointerKHR 15
173              30:     29(ptr) AccessChain 26 28
174              31:     16(ptr) Load 30
175                              Store 20(payload) 31
176              39:   35(ivec3) Load 37(gl_GlobalInvocationID)
177              40:   38(ivec2) VectorShuffle 39 39 0 1
178              41:   32(ivec2) Bitcast 40
179                              Store 34(globalId) 41
180              49:   35(ivec3) Load 37(gl_GlobalInvocationID)
181              50:   38(ivec2) VectorShuffle 49 49 0 1
182              51:   32(ivec2) Bitcast 50
183              52:   32(ivec2) ISub 48 51
184                              Store 42(partnerGlobalId) 52
185              57:     56(ptr) AccessChain 34(globalId) 55
186              58:     27(int) Load 57
187              59:     27(int) IMul 58 43(DIM)
188              60:     27(int) IMul 59 44(NUM_WORKGROUP_EACH_DIM)
189              62:     56(ptr) AccessChain 34(globalId) 61
190              63:     27(int) Load 62
191              64:     27(int) IAdd 60 63
192              65:     14(int) Bitcast 64
193                              Store 54(bufferCoord) 65
194              67:     56(ptr) AccessChain 42(partnerGlobalId) 55
195              68:     27(int) Load 67
196              69:     27(int) IMul 68 43(DIM)
197              70:     27(int) IMul 69 44(NUM_WORKGROUP_EACH_DIM)
198              71:     56(ptr) AccessChain 42(partnerGlobalId) 61
199              72:     27(int) Load 71
200              73:     27(int) IAdd 70 72
201              74:     14(int) Bitcast 73
202                              Store 66(partnerBufferCoord) 74
203              76:   32(ivec2) Load 34(globalId)
204                              Store 75(imageCoord) 76
205              78:   32(ivec2) Load 42(partnerGlobalId)
206                              Store 77(partnerImageCoord) 78
207              82:   35(ivec3) Load 81(gl_WorkGroupID)
208              83:   38(ivec2) VectorShuffle 82 82 0 1
209              84:   32(ivec2) Bitcast 83
210              85:   32(ivec2) IMul 80 84
211                              Store 79(globalId00) 85
212              90:   35(ivec3) Load 81(gl_WorkGroupID)
213              91:   38(ivec2) VectorShuffle 90 90 0 1
214              92:   32(ivec2) Bitcast 91
215              93:   32(ivec2) ISub 89 92
216              94:   32(ivec2) IMul 87 93
217                              Store 86(partnerGlobalId00) 94
218              96:     56(ptr) AccessChain 79(globalId00) 55
219              97:     27(int) Load 96
220              98:     27(int) IMul 97 43(DIM)
221              99:     27(int) IMul 98 44(NUM_WORKGROUP_EACH_DIM)
222             100:     56(ptr) AccessChain 79(globalId00) 61
223             101:     27(int) Load 100
224             102:     27(int) IAdd 99 101
225             103:     14(int) Bitcast 102
226                              Store 95(bufferCoord00) 103
227             105:     56(ptr) AccessChain 86(partnerGlobalId00) 55
228             106:     27(int) Load 105
229             107:     27(int) IMul 106 43(DIM)
230             108:     27(int) IMul 107 44(NUM_WORKGROUP_EACH_DIM)
231             109:     56(ptr) AccessChain 86(partnerGlobalId00) 61
232             110:     27(int) Load 109
233             111:     27(int) IAdd 108 110
234             112:     14(int) Bitcast 111
235                              Store 104(partnerBufferCoord00) 112
236             114:   32(ivec2) Load 79(globalId00)
237                              Store 113(imageCoord00) 114
238             116:   32(ivec2) Load 86(partnerGlobalId00)
239                              Store 115(partnerImageCoord00) 116
240             117:     16(ptr) Load 20(payload)
241             118:     14(int) Load 54(bufferCoord)
242             119:     14(int) Load 54(bufferCoord)
243             120:     16(ptr) Load 20(payload)
244             121:     14(int) Load 66(partnerBufferCoord)
245             123:    122(ptr) AccessChain 120 28 121
246             124:     14(int) Load 123 Aligned NonPrivatePointerKHR 4
247             126:     14(int) ShiftRightLogical 124 125
248             127:     14(int) IAdd 119 126
249             128:    122(ptr) AccessChain 117 28 118
250                              Store 128 127 Aligned NonPrivatePointerKHR 4
251                              ControlBarrier 15 15 132
252             134:   35(ivec3) Load 133(gl_LocalInvocationID)
253             135:   38(ivec2) VectorShuffle 134 134 0 1
254             138:  137(bvec2) IEqual 135 136
255             139:     6(bool) All 138
256                              SelectionMerge 141 None
257                              BranchConditional 139 140 141
258             140:               Label
259             143:    142(ptr)   AccessChain 26 46
260             144:     21(ptr)   Load 143
261             145:     14(int)   Load 54(bufferCoord)
262             146:    122(ptr)   AccessChain 144 28 145
263                                AtomicStore 146 46 150 55
264             151:    142(ptr)   AccessChain 26 46
265             152:     21(ptr)   Load 151
266             153:     14(int)   Load 104(partnerBufferCoord00)
267             154:    122(ptr)   AccessChain 152 28 153
268             157:     14(int)   AtomicLoad 154 46 156
269             158:     6(bool)   IEqual 157 61
270                                Store 10(skip) 158
271             159:     6(bool)   Load 10(skip)
272                                Store 13(sharedSkip) 159 MakePointerAvailableKHR NonPrivatePointerKHR 15
273                                Branch 141
274             141:             Label
275                              ControlBarrier 15 15 161
276             162:     6(bool) Load 13(sharedSkip) MakePointerVisibleKHR NonPrivatePointerKHR 15
277                              Store 10(skip) 162
278             164:     16(ptr) Load 20(payload)
279             165:     14(int) Load 66(partnerBufferCoord)
280             166:    122(ptr) AccessChain 164 28 165
281             167:     14(int) Load 166 Aligned NonPrivatePointerKHR 4
282                              Store 163(r) 167
283             168:     6(bool) Load 10(skip)
284             169:     6(bool) LogicalNot 168
285                              SelectionMerge 171 None
286                              BranchConditional 169 170 171
287             170:               Label
288             172:     14(int)   Load 163(r)
289             173:     14(int)   Load 66(partnerBufferCoord)
290             174:     6(bool)   INotEqual 172 173
291                                Branch 171
292             171:             Label
293             175:     6(bool) Phi 169 141 174 170
294                              SelectionMerge 177 None
295                              BranchConditional 175 176 177
296             176:               Label
297             182:     14(int)   Load 54(bufferCoord)
298             184:    183(ptr)   AccessChain 181(fail) 28 182
299                                Store 184 55
300                                Branch 177
301             177:             Label
302                              Return
303                              FunctionEnd