aboutsummaryrefslogtreecommitdiff
path: root/Test/baseResults/spv.atomicAdd.bufferReference.comp.out
blob: a00c45a3f35bc531a922524d4f94c96ee5122700 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
spv.atomicAdd.bufferReference.comp
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 188

                              Capability Shader
                              Capability VulkanMemoryModelKHR
                              Capability VulkanMemoryModelDeviceScopeKHR
                              Capability PhysicalStorageBufferAddressesEXT
                              Extension  "SPV_KHR_physical_storage_buffer"
                              Extension  "SPV_KHR_storage_buffer_storage_class"
                              Extension  "SPV_KHR_vulkan_memory_model"
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel PhysicalStorageBuffer64EXT VulkanKHR
                              EntryPoint GLCompute 4  "main" 37 81 133
                              ExecutionMode 4 LocalSize 1 1 1
                              Source GLSL 450
                              SourceExtension  "GL_ARB_gpu_shader_int64"
                              SourceExtension  "GL_EXT_buffer_reference"
                              SourceExtension  "GL_KHR_memory_scope_semantics"
                              SourceExtension  "GL_KHR_shader_subgroup_ballot"
                              SourceExtension  "GL_KHR_shader_subgroup_basic"
                              SourceExtension  "GL_KHR_shader_subgroup_shuffle"
                              Name 4  "main"
                              Name 8  "pass"
                              Name 10  "skip"
                              Name 13  "sharedSkip"
                              Name 18  "PayloadRef"
                              MemberName 18(PayloadRef) 0  "x"
                              Name 20  "payload"
                              Name 22  "PC"
                              MemberName 22(PC) 0  "payloadref"
                              MemberName 22(PC) 1  "guard"
                              Name 24  "GuardRef"
                              MemberName 24(GuardRef) 0  "x"
                              Name 26  ""
                              Name 34  "globalId"
                              Name 37  "gl_GlobalInvocationID"
                              Name 42  "partnerGlobalId"
                              Name 43  "DIM"
                              Name 44  "NUM_WORKGROUP_EACH_DIM"
                              Name 54  "bufferCoord"
                              Name 66  "partnerBufferCoord"
                              Name 75  "imageCoord"
                              Name 77  "partnerImageCoord"
                              Name 79  "globalId00"
                              Name 81  "gl_WorkGroupID"
                              Name 86  "partnerGlobalId00"
                              Name 95  "bufferCoord00"
                              Name 104  "partnerBufferCoord00"
                              Name 113  "imageCoord00"
                              Name 115  "partnerImageCoord00"
                              Name 133  "gl_LocalInvocationID"
                              Name 163  "r"
                              Name 179  "Fail"
                              MemberName 179(Fail) 0  "x"
                              Name 181  "fail"
                              Decorate 17 ArrayStride 4
                              MemberDecorate 18(PayloadRef) 0 Offset 0
                              Decorate 18(PayloadRef) Block
                              Decorate 20(payload) DecorationAliasedPointerEXT
                              MemberDecorate 22(PC) 0 Offset 0
                              MemberDecorate 22(PC) 1 Offset 8
                              Decorate 22(PC) Block
                              Decorate 23 ArrayStride 4
                              MemberDecorate 24(GuardRef) 0 Offset 0
                              Decorate 24(GuardRef) Block
                              Decorate 37(gl_GlobalInvocationID) BuiltIn GlobalInvocationId
                              Decorate 43(DIM) SpecId 0
                              Decorate 44(NUM_WORKGROUP_EACH_DIM) SpecId 1
                              Decorate 81(gl_WorkGroupID) BuiltIn WorkgroupId
                              Decorate 133(gl_LocalInvocationID) BuiltIn LocalInvocationId
                              Decorate 178 ArrayStride 4
                              MemberDecorate 179(Fail) 0 Offset 0
                              Decorate 179(Fail) Block
                              Decorate 181(fail) DescriptorSet 0
                              Decorate 181(fail) Binding 2
                              Decorate 185 SpecId 0
                              Decorate 186 SpecId 0
                              Decorate 187 BuiltIn WorkgroupSize
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeBool
               7:             TypePointer Function 6(bool)
               9:     6(bool) ConstantTrue
              11:     6(bool) ConstantFalse
              12:             TypePointer Workgroup 6(bool)
  13(sharedSkip):     12(ptr) Variable Workgroup
              14:             TypeInt 32 0
              15:     14(int) Constant 2
                              TypeForwardPointer 16 PhysicalStorageBufferEXT
              17:             TypeRuntimeArray 14(int)
  18(PayloadRef):             TypeStruct 17
              16:             TypePointer PhysicalStorageBufferEXT 18(PayloadRef)
              19:             TypePointer Function 16(ptr)
                              TypeForwardPointer 21 PhysicalStorageBufferEXT
          22(PC):             TypeStruct 16(ptr) 21
              23:             TypeRuntimeArray 14(int)
    24(GuardRef):             TypeStruct 23
              21:             TypePointer PhysicalStorageBufferEXT 24(GuardRef)
              25:             TypePointer PushConstant 22(PC)
              26:     25(ptr) Variable PushConstant
              27:             TypeInt 32 1
              28:     27(int) Constant 0
              29:             TypePointer PushConstant 16(ptr)
              32:             TypeVector 27(int) 2
              33:             TypePointer Function 32(ivec2)
              35:             TypeVector 14(int) 3
              36:             TypePointer Input 35(ivec3)
37(gl_GlobalInvocationID):     36(ptr) Variable Input
              38:             TypeVector 14(int) 2
         43(DIM):     27(int) SpecConstant 1
44(NUM_WORKGROUP_EACH_DIM):     27(int) SpecConstant 1
              45:     27(int) SpecConstantOp 132 43(DIM) 44(NUM_WORKGROUP_EACH_DIM)
              46:     27(int) Constant 1
              47:     27(int) SpecConstantOp 130 45 46
              48:   32(ivec2) SpecConstantComposite 47 47
              53:             TypePointer Function 14(int)
              55:     14(int) Constant 1
              56:             TypePointer Function 27(int)
              61:     14(int) Constant 0
              80:   32(ivec2) SpecConstantComposite 43(DIM) 43(DIM)
81(gl_WorkGroupID):     36(ptr) Variable Input
              87:   32(ivec2) SpecConstantComposite 43(DIM) 43(DIM)
              88:     27(int) SpecConstantOp 130 44(NUM_WORKGROUP_EACH_DIM) 46
              89:   32(ivec2) SpecConstantComposite 88 88
             122:             TypePointer PhysicalStorageBufferEXT 14(int)
             125:     27(int) Constant 31
             129:     27(int) Constant 2
             130:     27(int) Constant 320
             131:     27(int) Constant 8200
             132:     14(int) Constant 8520
133(gl_LocalInvocationID):     36(ptr) Variable Input
             136:   38(ivec2) ConstantComposite 61 61
             137:             TypeVector 6(bool) 2
             142:             TypePointer PushConstant 21(ptr)
             147:     27(int) Constant 64
             148:     27(int) Constant 8196
             149:     14(int) Constant 5
             150:     14(int) Constant 8260
             155:     27(int) Constant 16386
             156:     14(int) Constant 16450
             160:     27(int) Constant 16392
             161:     14(int) Constant 16712
             178:             TypeRuntimeArray 14(int)
       179(Fail):             TypeStruct 178
             180:             TypePointer StorageBuffer 179(Fail)
       181(fail):    180(ptr) Variable StorageBuffer
             183:             TypePointer StorageBuffer 14(int)
             185:     14(int) SpecConstant 1
             186:     14(int) SpecConstant 1
             187:   35(ivec3) SpecConstantComposite 185 186 55
         4(main):           2 Function None 3
               5:             Label
         8(pass):      7(ptr) Variable Function
        10(skip):      7(ptr) Variable Function
     20(payload):     19(ptr) Variable Function
    34(globalId):     33(ptr) Variable Function
42(partnerGlobalId):     33(ptr) Variable Function
 54(bufferCoord):     53(ptr) Variable Function
66(partnerBufferCoord):     53(ptr) Variable Function
  75(imageCoord):     33(ptr) Variable Function
77(partnerImageCoord):     33(ptr) Variable Function
  79(globalId00):     33(ptr) Variable Function
86(partnerGlobalId00):     33(ptr) Variable Function
95(bufferCoord00):     53(ptr) Variable Function
104(partnerBufferCoord00):     53(ptr) Variable Function
113(imageCoord00):     33(ptr) Variable Function
115(partnerImageCoord00):     33(ptr) Variable Function
          163(r):     53(ptr) Variable Function
                              Store 8(pass) 9
                              Store 10(skip) 11
                              Store 13(sharedSkip) 11 MakePointerAvailableKHR NonPrivatePointerKHR 15
              30:     29(ptr) AccessChain 26 28
              31:     16(ptr) Load 30
                              Store 20(payload) 31
              39:   35(ivec3) Load 37(gl_GlobalInvocationID)
              40:   38(ivec2) VectorShuffle 39 39 0 1
              41:   32(ivec2) Bitcast 40
                              Store 34(globalId) 41
              49:   35(ivec3) Load 37(gl_GlobalInvocationID)
              50:   38(ivec2) VectorShuffle 49 49 0 1
              51:   32(ivec2) Bitcast 50
              52:   32(ivec2) ISub 48 51
                              Store 42(partnerGlobalId) 52
              57:     56(ptr) AccessChain 34(globalId) 55
              58:     27(int) Load 57
              59:     27(int) IMul 58 43(DIM)
              60:     27(int) IMul 59 44(NUM_WORKGROUP_EACH_DIM)
              62:     56(ptr) AccessChain 34(globalId) 61
              63:     27(int) Load 62
              64:     27(int) IAdd 60 63
              65:     14(int) Bitcast 64
                              Store 54(bufferCoord) 65
              67:     56(ptr) AccessChain 42(partnerGlobalId) 55
              68:     27(int) Load 67
              69:     27(int) IMul 68 43(DIM)
              70:     27(int) IMul 69 44(NUM_WORKGROUP_EACH_DIM)
              71:     56(ptr) AccessChain 42(partnerGlobalId) 61
              72:     27(int) Load 71
              73:     27(int) IAdd 70 72
              74:     14(int) Bitcast 73
                              Store 66(partnerBufferCoord) 74
              76:   32(ivec2) Load 34(globalId)
                              Store 75(imageCoord) 76
              78:   32(ivec2) Load 42(partnerGlobalId)
                              Store 77(partnerImageCoord) 78
              82:   35(ivec3) Load 81(gl_WorkGroupID)
              83:   38(ivec2) VectorShuffle 82 82 0 1
              84:   32(ivec2) Bitcast 83
              85:   32(ivec2) IMul 80 84
                              Store 79(globalId00) 85
              90:   35(ivec3) Load 81(gl_WorkGroupID)
              91:   38(ivec2) VectorShuffle 90 90 0 1
              92:   32(ivec2) Bitcast 91
              93:   32(ivec2) ISub 89 92
              94:   32(ivec2) IMul 87 93
                              Store 86(partnerGlobalId00) 94
              96:     56(ptr) AccessChain 79(globalId00) 55
              97:     27(int) Load 96
              98:     27(int) IMul 97 43(DIM)
              99:     27(int) IMul 98 44(NUM_WORKGROUP_EACH_DIM)
             100:     56(ptr) AccessChain 79(globalId00) 61
             101:     27(int) Load 100
             102:     27(int) IAdd 99 101
             103:     14(int) Bitcast 102
                              Store 95(bufferCoord00) 103
             105:     56(ptr) AccessChain 86(partnerGlobalId00) 55
             106:     27(int) Load 105
             107:     27(int) IMul 106 43(DIM)
             108:     27(int) IMul 107 44(NUM_WORKGROUP_EACH_DIM)
             109:     56(ptr) AccessChain 86(partnerGlobalId00) 61
             110:     27(int) Load 109
             111:     27(int) IAdd 108 110
             112:     14(int) Bitcast 111
                              Store 104(partnerBufferCoord00) 112
             114:   32(ivec2) Load 79(globalId00)
                              Store 113(imageCoord00) 114
             116:   32(ivec2) Load 86(partnerGlobalId00)
                              Store 115(partnerImageCoord00) 116
             117:     16(ptr) Load 20(payload)
             118:     14(int) Load 54(bufferCoord)
             119:     14(int) Load 54(bufferCoord)
             120:     16(ptr) Load 20(payload)
             121:     14(int) Load 66(partnerBufferCoord)
             123:    122(ptr) AccessChain 120 28 121
             124:     14(int) Load 123 Aligned NonPrivatePointerKHR 4
             126:     14(int) ShiftRightLogical 124 125
             127:     14(int) IAdd 119 126
             128:    122(ptr) AccessChain 117 28 118
                              Store 128 127 Aligned NonPrivatePointerKHR 4
                              ControlBarrier 15 15 132
             134:   35(ivec3) Load 133(gl_LocalInvocationID)
             135:   38(ivec2) VectorShuffle 134 134 0 1
             138:  137(bvec2) IEqual 135 136
             139:     6(bool) All 138
                              SelectionMerge 141 None
                              BranchConditional 139 140 141
             140:               Label
             143:    142(ptr)   AccessChain 26 46
             144:     21(ptr)   Load 143
             145:     14(int)   Load 54(bufferCoord)
             146:    122(ptr)   AccessChain 144 28 145
                                AtomicStore 146 46 150 55
             151:    142(ptr)   AccessChain 26 46
             152:     21(ptr)   Load 151
             153:     14(int)   Load 104(partnerBufferCoord00)
             154:    122(ptr)   AccessChain 152 28 153
             157:     14(int)   AtomicLoad 154 46 156
             158:     6(bool)   IEqual 157 61
                                Store 10(skip) 158
             159:     6(bool)   Load 10(skip)
                                Store 13(sharedSkip) 159 MakePointerAvailableKHR NonPrivatePointerKHR 15
                                Branch 141
             141:             Label
                              ControlBarrier 15 15 161
             162:     6(bool) Load 13(sharedSkip) MakePointerVisibleKHR NonPrivatePointerKHR 15
                              Store 10(skip) 162
             164:     16(ptr) Load 20(payload)
             165:     14(int) Load 66(partnerBufferCoord)
             166:    122(ptr) AccessChain 164 28 165
             167:     14(int) Load 166 Aligned NonPrivatePointerKHR 4
                              Store 163(r) 167
             168:     6(bool) Load 10(skip)
             169:     6(bool) LogicalNot 168
                              SelectionMerge 171 None
                              BranchConditional 169 170 171
             170:               Label
             172:     14(int)   Load 163(r)
             173:     14(int)   Load 66(partnerBufferCoord)
             174:     6(bool)   INotEqual 172 173
                                Branch 171
             171:             Label
             175:     6(bool) Phi 169 141 174 170
                              SelectionMerge 177 None
                              BranchConditional 175 176 177
             176:               Label
             182:     14(int)   Load 54(bufferCoord)
             184:    183(ptr)   AccessChain 181(fail) 28 182
                                Store 184 55
                                Branch 177
             177:             Label
                              Return
                              FunctionEnd