6fde1f938b055cac8eb21b9d90e07e784f888b1d
[platform/upstream/glslang.git] / Test / baseResults / spv.subgroupExtendedTypesVote.comp.out
1 spv.subgroupExtendedTypesVote.comp
2 // Module Version 10300
3 // Generated by (magic number): 8000a
4 // Id's are bound by 277
5
6                               Capability Shader
7                               Capability Float16
8                               Capability Int64
9                               Capability Int16
10                               Capability Int8
11                               Capability GroupNonUniform
12                               Capability GroupNonUniformVote
13                               Capability StorageUniformBufferBlock16
14                               Capability StorageBuffer8BitAccess
15                               Extension  "SPV_KHR_8bit_storage"
16                1:             ExtInstImport  "GLSL.std.450"
17                               MemoryModel Logical GLSL450
18                               EntryPoint GLCompute 4  "main" 10 12
19                               ExecutionMode 4 LocalSize 8 1 1
20                               Source GLSL 450
21                               SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_float16"
22                               SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int16"
23                               SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int64"
24                               SourceExtension  "GL_EXT_shader_explicit_arithmetic_types_int8"
25                               SourceExtension  "GL_EXT_shader_subgroup_extended_types_float16"
26                               SourceExtension  "GL_EXT_shader_subgroup_extended_types_int16"
27                               SourceExtension  "GL_EXT_shader_subgroup_extended_types_int64"
28                               SourceExtension  "GL_EXT_shader_subgroup_extended_types_int8"
29                               SourceExtension  "GL_KHR_shader_subgroup_basic"
30                               SourceExtension  "GL_KHR_shader_subgroup_vote"
31                               Name 4  "main"
32                               Name 8  "invocation"
33                               Name 10  "gl_SubgroupInvocationID"
34                               Name 12  "gl_SubgroupSize"
35                               Name 32  "Buffers"
36                               MemberName 32(Buffers) 0  "i8"
37                               MemberName 32(Buffers) 1  "u8"
38                               MemberName 32(Buffers) 2  "i16"
39                               MemberName 32(Buffers) 3  "u16"
40                               MemberName 32(Buffers) 4  "i64"
41                               MemberName 32(Buffers) 5  "u64"
42                               MemberName 32(Buffers) 6  "f16"
43                               MemberName 32(Buffers) 7  "r"
44                               Name 35  "data"
45                               Decorate 10(gl_SubgroupInvocationID) RelaxedPrecision
46                               Decorate 10(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
47                               Decorate 11 RelaxedPrecision
48                               Decorate 12(gl_SubgroupSize) RelaxedPrecision
49                               Decorate 12(gl_SubgroupSize) BuiltIn SubgroupSize
50                               Decorate 13 RelaxedPrecision
51                               Decorate 14 RelaxedPrecision
52                               Decorate 16 RelaxedPrecision
53                               MemberDecorate 32(Buffers) 0 Offset 0
54                               MemberDecorate 32(Buffers) 1 Offset 4
55                               MemberDecorate 32(Buffers) 2 Offset 8
56                               MemberDecorate 32(Buffers) 3 Offset 16
57                               MemberDecorate 32(Buffers) 4 Offset 32
58                               MemberDecorate 32(Buffers) 5 Offset 64
59                               MemberDecorate 32(Buffers) 6 Offset 96
60                               MemberDecorate 32(Buffers) 7 Offset 104
61                               Decorate 32(Buffers) Block
62                               Decorate 35(data) DescriptorSet 0
63                               Decorate 35(data) Binding 0
64                               Decorate 276 BuiltIn WorkgroupSize
65                2:             TypeVoid
66                3:             TypeFunction 2
67                6:             TypeInt 32 0
68                7:             TypePointer Function 6(int)
69                9:             TypePointer Input 6(int)
70 10(gl_SubgroupInvocationID):      9(ptr) Variable Input
71 12(gl_SubgroupSize):      9(ptr) Variable Input
72               15:      6(int) Constant 4
73               17:             TypeInt 8 1
74               18:             TypeVector 17(int8_t) 4
75               19:             TypeInt 8 0
76               20:             TypeVector 19(int8_t) 4
77               21:             TypeInt 16 1
78               22:             TypeVector 21(int16_t) 4
79               23:             TypeInt 16 0
80               24:             TypeVector 23(int16_t) 4
81               25:             TypeInt 64 1
82               26:             TypeVector 25(int64_t) 4
83               27:             TypeInt 64 0
84               28:             TypeVector 27(int64_t) 4
85               29:             TypeFloat 16
86               30:             TypeVector 29(float16_t) 4
87               31:             TypeInt 32 1
88      32(Buffers):             TypeStruct 18(i8vec4) 20(i8vec4) 22(i16vec4) 24(i16vec4) 26(i64vec4) 28(i64vec4) 30(f16vec4) 31(int)
89               33:             TypeArray 32(Buffers) 15
90               34:             TypePointer StorageBuffer 33
91         35(data):     34(ptr) Variable StorageBuffer
92               37:     31(int) Constant 7
93               38:             TypePointer StorageBuffer 31(int)
94               41:     31(int) Constant 0
95               42:             TypeBool
96               44:      6(int) Constant 3
97               49:      6(int) Constant 0
98               50:             TypePointer StorageBuffer 17(int8_t)
99               54:     31(int) Constant 1
100               58:             TypeVector 17(int8_t) 2
101               59:             TypePointer StorageBuffer 18(i8vec4)
102               67:     31(int) Constant 2
103               68:             TypeVector 17(int8_t) 3
104               76:     31(int) Constant 3
105               83:             TypePointer StorageBuffer 19(int8_t)
106               90:             TypeVector 19(int8_t) 2
107               91:             TypePointer StorageBuffer 20(i8vec4)
108               99:             TypeVector 19(int8_t) 3
109              113:             TypePointer StorageBuffer 21(int16_t)
110              120:             TypeVector 21(int16_t) 2
111              121:             TypePointer StorageBuffer 22(i16vec4)
112              129:             TypeVector 21(int16_t) 3
113              143:             TypePointer StorageBuffer 23(int16_t)
114              150:             TypeVector 23(int16_t) 2
115              151:             TypePointer StorageBuffer 24(i16vec4)
116              159:             TypeVector 23(int16_t) 3
117              181:     31(int) Constant 4
118              182:             TypePointer StorageBuffer 25(int64_t)
119              189:             TypeVector 25(int64_t) 2
120              190:             TypePointer StorageBuffer 26(i64vec4)
121              198:             TypeVector 25(int64_t) 3
122              212:     31(int) Constant 5
123              213:             TypePointer StorageBuffer 27(int64_t)
124              220:             TypeVector 27(int64_t) 2
125              221:             TypePointer StorageBuffer 28(i64vec4)
126              229:             TypeVector 27(int64_t) 3
127              243:     31(int) Constant 6
128              244:             TypePointer StorageBuffer 29(float16_t)
129              251:             TypeVector 29(float16_t) 2
130              252:             TypePointer StorageBuffer 30(f16vec4)
131              260:             TypeVector 29(float16_t) 3
132              273:             TypeVector 6(int) 3
133              274:      6(int) Constant 8
134              275:      6(int) Constant 1
135              276:  273(ivec3) ConstantComposite 274 275 275
136          4(main):           2 Function None 3
137                5:             Label
138    8(invocation):      7(ptr) Variable Function
139               11:      6(int) Load 10(gl_SubgroupInvocationID)
140               13:      6(int) Load 12(gl_SubgroupSize)
141               14:      6(int) IAdd 11 13
142               16:      6(int) UMod 14 15
143                               Store 8(invocation) 16
144               36:      6(int) Load 8(invocation)
145               39:     38(ptr) AccessChain 35(data) 36 37
146               40:     31(int) Load 39
147               43:    42(bool) SLessThan 40 41
148               45:    42(bool) GroupNonUniformAll 44 43
149                               SelectionMerge 47 None
150                               BranchConditional 45 46 172
151               46:               Label
152               48:      6(int)   Load 8(invocation)
153               51:     50(ptr)   AccessChain 35(data) 41 41 49
154               52:  17(int8_t)   Load 51
155               53:    42(bool)   GroupNonUniformAllEqual 44 52
156               55:     31(int)   Select 53 54 41
157               56:     38(ptr)   AccessChain 35(data) 48 37
158                                 Store 56 55
159               57:      6(int)   Load 8(invocation)
160               60:     59(ptr)   AccessChain 35(data) 54 41
161               61:  18(i8vec4)   Load 60
162               62:  58(i8vec2)   VectorShuffle 61 61 0 1
163               63:    42(bool)   GroupNonUniformAllEqual 44 62
164               64:     31(int)   Select 63 54 41
165               65:     38(ptr)   AccessChain 35(data) 57 37
166                                 Store 65 64
167               66:      6(int)   Load 8(invocation)
168               69:     59(ptr)   AccessChain 35(data) 67 41
169               70:  18(i8vec4)   Load 69
170               71:  68(i8vec3)   VectorShuffle 70 70 0 1 2
171               72:    42(bool)   GroupNonUniformAllEqual 44 71
172               73:     31(int)   Select 72 54 41
173               74:     38(ptr)   AccessChain 35(data) 66 37
174                                 Store 74 73
175               75:      6(int)   Load 8(invocation)
176               77:     59(ptr)   AccessChain 35(data) 76 41
177               78:  18(i8vec4)   Load 77
178               79:    42(bool)   GroupNonUniformAllEqual 44 78
179               80:     31(int)   Select 79 54 41
180               81:     38(ptr)   AccessChain 35(data) 75 37
181                                 Store 81 80
182               82:      6(int)   Load 8(invocation)
183               84:     83(ptr)   AccessChain 35(data) 41 54 49
184               85:  19(int8_t)   Load 84
185               86:    42(bool)   GroupNonUniformAllEqual 44 85
186               87:     31(int)   Select 86 54 41
187               88:     38(ptr)   AccessChain 35(data) 82 37
188                                 Store 88 87
189               89:      6(int)   Load 8(invocation)
190               92:     91(ptr)   AccessChain 35(data) 54 54
191               93:  20(i8vec4)   Load 92
192               94:  90(i8vec2)   VectorShuffle 93 93 0 1
193               95:    42(bool)   GroupNonUniformAllEqual 44 94
194               96:     31(int)   Select 95 54 41
195               97:     38(ptr)   AccessChain 35(data) 89 37
196                                 Store 97 96
197               98:      6(int)   Load 8(invocation)
198              100:     91(ptr)   AccessChain 35(data) 67 54
199              101:  20(i8vec4)   Load 100
200              102:  99(i8vec3)   VectorShuffle 101 101 0 1 2
201              103:    42(bool)   GroupNonUniformAllEqual 44 102
202              104:     31(int)   Select 103 54 41
203              105:     38(ptr)   AccessChain 35(data) 98 37
204                                 Store 105 104
205              106:      6(int)   Load 8(invocation)
206              107:     91(ptr)   AccessChain 35(data) 76 54
207              108:  20(i8vec4)   Load 107
208              109:    42(bool)   GroupNonUniformAllEqual 44 108
209              110:     31(int)   Select 109 54 41
210              111:     38(ptr)   AccessChain 35(data) 106 37
211                                 Store 111 110
212              112:      6(int)   Load 8(invocation)
213              114:    113(ptr)   AccessChain 35(data) 41 67 49
214              115: 21(int16_t)   Load 114
215              116:    42(bool)   GroupNonUniformAllEqual 44 115
216              117:     31(int)   Select 116 54 41
217              118:     38(ptr)   AccessChain 35(data) 112 37
218                                 Store 118 117
219              119:      6(int)   Load 8(invocation)
220              122:    121(ptr)   AccessChain 35(data) 54 67
221              123: 22(i16vec4)   Load 122
222              124:120(i16vec2)   VectorShuffle 123 123 0 1
223              125:    42(bool)   GroupNonUniformAllEqual 44 124
224              126:     31(int)   Select 125 54 41
225              127:     38(ptr)   AccessChain 35(data) 119 37
226                                 Store 127 126
227              128:      6(int)   Load 8(invocation)
228              130:    121(ptr)   AccessChain 35(data) 67 67
229              131: 22(i16vec4)   Load 130
230              132:129(i16vec3)   VectorShuffle 131 131 0 1 2
231              133:    42(bool)   GroupNonUniformAllEqual 44 132
232              134:     31(int)   Select 133 54 41
233              135:     38(ptr)   AccessChain 35(data) 128 37
234                                 Store 135 134
235              136:      6(int)   Load 8(invocation)
236              137:    121(ptr)   AccessChain 35(data) 76 67
237              138: 22(i16vec4)   Load 137
238              139:    42(bool)   GroupNonUniformAllEqual 44 138
239              140:     31(int)   Select 139 54 41
240              141:     38(ptr)   AccessChain 35(data) 136 37
241                                 Store 141 140
242              142:      6(int)   Load 8(invocation)
243              144:    143(ptr)   AccessChain 35(data) 41 76 49
244              145: 23(int16_t)   Load 144
245              146:    42(bool)   GroupNonUniformAllEqual 44 145
246              147:     31(int)   Select 146 54 41
247              148:     38(ptr)   AccessChain 35(data) 142 37
248                                 Store 148 147
249              149:      6(int)   Load 8(invocation)
250              152:    151(ptr)   AccessChain 35(data) 54 76
251              153: 24(i16vec4)   Load 152
252              154:150(i16vec2)   VectorShuffle 153 153 0 1
253              155:    42(bool)   GroupNonUniformAllEqual 44 154
254              156:     31(int)   Select 155 54 41
255              157:     38(ptr)   AccessChain 35(data) 149 37
256                                 Store 157 156
257              158:      6(int)   Load 8(invocation)
258              160:    151(ptr)   AccessChain 35(data) 67 76
259              161: 24(i16vec4)   Load 160
260              162:159(i16vec3)   VectorShuffle 161 161 0 1 2
261              163:    42(bool)   GroupNonUniformAllEqual 44 162
262              164:     31(int)   Select 163 54 41
263              165:     38(ptr)   AccessChain 35(data) 158 37
264                                 Store 165 164
265              166:      6(int)   Load 8(invocation)
266              167:    151(ptr)   AccessChain 35(data) 76 76
267              168: 24(i16vec4)   Load 167
268              169:    42(bool)   GroupNonUniformAllEqual 44 168
269              170:     31(int)   Select 169 54 41
270              171:     38(ptr)   AccessChain 35(data) 166 37
271                                 Store 171 170
272                                 Branch 47
273              172:               Label
274              173:      6(int)   Load 8(invocation)
275              174:     38(ptr)   AccessChain 35(data) 173 37
276              175:     31(int)   Load 174
277              176:    42(bool)   SLessThan 175 41
278              177:    42(bool)   GroupNonUniformAny 44 176
279                                 SelectionMerge 179 None
280                                 BranchConditional 177 178 179
281              178:                 Label
282              180:      6(int)     Load 8(invocation)
283              183:    182(ptr)     AccessChain 35(data) 41 181 49
284              184: 25(int64_t)     Load 183
285              185:    42(bool)     GroupNonUniformAllEqual 44 184
286              186:     31(int)     Select 185 54 41
287              187:     38(ptr)     AccessChain 35(data) 180 37
288                                   Store 187 186
289              188:      6(int)     Load 8(invocation)
290              191:    190(ptr)     AccessChain 35(data) 54 181
291              192: 26(i64vec4)     Load 191
292              193:189(i64vec2)     VectorShuffle 192 192 0 1
293              194:    42(bool)     GroupNonUniformAllEqual 44 193
294              195:     31(int)     Select 194 54 41
295              196:     38(ptr)     AccessChain 35(data) 188 37
296                                   Store 196 195
297              197:      6(int)     Load 8(invocation)
298              199:    190(ptr)     AccessChain 35(data) 67 181
299              200: 26(i64vec4)     Load 199
300              201:198(i64vec3)     VectorShuffle 200 200 0 1 2
301              202:    42(bool)     GroupNonUniformAllEqual 44 201
302              203:     31(int)     Select 202 54 41
303              204:     38(ptr)     AccessChain 35(data) 197 37
304                                   Store 204 203
305              205:      6(int)     Load 8(invocation)
306              206:    190(ptr)     AccessChain 35(data) 76 181
307              207: 26(i64vec4)     Load 206
308              208:    42(bool)     GroupNonUniformAllEqual 44 207
309              209:     31(int)     Select 208 54 41
310              210:     38(ptr)     AccessChain 35(data) 205 37
311                                   Store 210 209
312              211:      6(int)     Load 8(invocation)
313              214:    213(ptr)     AccessChain 35(data) 41 212 49
314              215: 27(int64_t)     Load 214
315              216:    42(bool)     GroupNonUniformAllEqual 44 215
316              217:     31(int)     Select 216 54 41
317              218:     38(ptr)     AccessChain 35(data) 211 37
318                                   Store 218 217
319              219:      6(int)     Load 8(invocation)
320              222:    221(ptr)     AccessChain 35(data) 54 212
321              223: 28(i64vec4)     Load 222
322              224:220(i64vec2)     VectorShuffle 223 223 0 1
323              225:    42(bool)     GroupNonUniformAllEqual 44 224
324              226:     31(int)     Select 225 54 41
325              227:     38(ptr)     AccessChain 35(data) 219 37
326                                   Store 227 226
327              228:      6(int)     Load 8(invocation)
328              230:    221(ptr)     AccessChain 35(data) 67 212
329              231: 28(i64vec4)     Load 230
330              232:229(i64vec3)     VectorShuffle 231 231 0 1 2
331              233:    42(bool)     GroupNonUniformAllEqual 44 232
332              234:     31(int)     Select 233 54 41
333              235:     38(ptr)     AccessChain 35(data) 228 37
334                                   Store 235 234
335              236:      6(int)     Load 8(invocation)
336              237:    221(ptr)     AccessChain 35(data) 76 212
337              238: 28(i64vec4)     Load 237
338              239:    42(bool)     GroupNonUniformAllEqual 44 238
339              240:     31(int)     Select 239 54 41
340              241:     38(ptr)     AccessChain 35(data) 236 37
341                                   Store 241 240
342              242:      6(int)     Load 8(invocation)
343              245:    244(ptr)     AccessChain 35(data) 41 243 49
344              246:29(float16_t)     Load 245
345              247:    42(bool)     GroupNonUniformAllEqual 44 246
346              248:     31(int)     Select 247 54 41
347              249:     38(ptr)     AccessChain 35(data) 242 37
348                                   Store 249 248
349              250:      6(int)     Load 8(invocation)
350              253:    252(ptr)     AccessChain 35(data) 54 243
351              254: 30(f16vec4)     Load 253
352              255:251(f16vec2)     VectorShuffle 254 254 0 1
353              256:    42(bool)     GroupNonUniformAllEqual 44 255
354              257:     31(int)     Select 256 54 41
355              258:     38(ptr)     AccessChain 35(data) 250 37
356                                   Store 258 257
357              259:      6(int)     Load 8(invocation)
358              261:    252(ptr)     AccessChain 35(data) 67 243
359              262: 30(f16vec4)     Load 261
360              263:260(f16vec3)     VectorShuffle 262 262 0 1 2
361              264:    42(bool)     GroupNonUniformAllEqual 44 263
362              265:     31(int)     Select 264 54 41
363              266:     38(ptr)     AccessChain 35(data) 259 37
364                                   Store 266 265
365              267:      6(int)     Load 8(invocation)
366              268:    252(ptr)     AccessChain 35(data) 76 243
367              269: 30(f16vec4)     Load 268
368              270:    42(bool)     GroupNonUniformAllEqual 44 269
369              271:     31(int)     Select 270 54 41
370              272:     38(ptr)     AccessChain 35(data) 267 37
371                                   Store 272 271
372                                   Branch 179
373              179:               Label
374                                 Branch 47
375               47:             Label
376                               Return
377                               FunctionEnd