update failing test-cases
[platform/upstream/glslang.git] / Test / baseResults / spv.460.subgroupEXT.mesh.out
1 spv.460.subgroupEXT.mesh
2 // Module Version 10400
3 // Generated by (magic number): 8000b
4 // Id's are bound by 279
5
6                               Capability ClipDistance
7                               Capability CullDistance
8                               Capability GroupNonUniform
9                               Capability GroupNonUniformVote
10                               Capability GroupNonUniformArithmetic
11                               Capability GroupNonUniformBallot
12                               Capability GroupNonUniformShuffle
13                               Capability GroupNonUniformShuffleRelative
14                               Capability GroupNonUniformClustered
15                               Capability GroupNonUniformQuad
16                               Capability FragmentShadingRateKHR
17                               Capability MeshShadingEXT
18                               Extension  "SPV_EXT_mesh_shader"
19                               Extension  "SPV_KHR_fragment_shading_rate"
20                1:             ExtInstImport  "GLSL.std.450"
21                               MemoryModel Logical GLSL450
22                               EntryPoint MeshEXT 4  "main" 35 41 57 109 147 161 162 167 168 171 172 173 174 175
23                               ExecutionMode 4 LocalSize 32 1 1
24                               ExecutionMode 4 OutputVertices 81
25                               ExecutionMode 4 OutputPrimitivesNV 32
26                               ExecutionMode 4 OutputTrianglesNV
27                               Source GLSL 460
28                               SourceExtension  "GL_EXT_mesh_shader"
29                               SourceExtension  "GL_KHR_shader_subgroup_arithmetic"
30                               SourceExtension  "GL_KHR_shader_subgroup_ballot"
31                               SourceExtension  "GL_KHR_shader_subgroup_basic"
32                               SourceExtension  "GL_KHR_shader_subgroup_clustered"
33                               SourceExtension  "GL_KHR_shader_subgroup_quad"
34                               SourceExtension  "GL_KHR_shader_subgroup_shuffle"
35                               SourceExtension  "GL_KHR_shader_subgroup_shuffle_relative"
36                               SourceExtension  "GL_KHR_shader_subgroup_vote"
37                               Name 4  "main"
38                               Name 6  "basic_works("
39                               Name 13  "ballot_works(vf4;"
40                               Name 12  "f4"
41                               Name 16  "vote_works(vf4;"
42                               Name 15  "f4"
43                               Name 19  "shuffle_works(vf4;"
44                               Name 18  "f4"
45                               Name 22  "arith_works(vf4;"
46                               Name 21  "f4"
47                               Name 25  "clustered_works(vf4;"
48                               Name 24  "f4"
49                               Name 28  "quad_works(vf4;"
50                               Name 27  "f4"
51                               Name 32  "iid"
52                               Name 35  "gl_LocalInvocationID"
53                               Name 40  "gid"
54                               Name 41  "gl_WorkGroupID"
55                               Name 44  "vertexCount"
56                               Name 46  "primitiveCount"
57                               Name 54  "gl_MeshPerVertexEXT"
58                               MemberName 54(gl_MeshPerVertexEXT) 0  "gl_Position"
59                               MemberName 54(gl_MeshPerVertexEXT) 1  "gl_PointSize"
60                               MemberName 54(gl_MeshPerVertexEXT) 2  "gl_ClipDistance"
61                               MemberName 54(gl_MeshPerVertexEXT) 3  "gl_CullDistance"
62                               Name 57  "gl_MeshVerticesEXT"
63                               Name 106  "gl_MeshPerPrimitiveEXT"
64                               MemberName 106(gl_MeshPerPrimitiveEXT) 0  "gl_PrimitiveID"
65                               MemberName 106(gl_MeshPerPrimitiveEXT) 1  "gl_Layer"
66                               MemberName 106(gl_MeshPerPrimitiveEXT) 2  "gl_ViewportIndex"
67                               MemberName 106(gl_MeshPerPrimitiveEXT) 3  "gl_CullPrimitiveEXT"
68                               MemberName 106(gl_MeshPerPrimitiveEXT) 4  "gl_PrimitiveShadingRateEXT"
69                               Name 109  "gl_MeshPrimitivesEXT"
70                               Name 147  "gl_PrimitiveTriangleIndicesEXT"
71                               Name 161  "gl_SubgroupSize"
72                               Name 162  "gl_SubgroupInvocationID"
73                               Name 167  "gl_NumSubgroups"
74                               Name 168  "gl_SubgroupID"
75                               Name 171  "gl_SubgroupEqMask"
76                               Name 172  "gl_SubgroupGeMask"
77                               Name 173  "gl_SubgroupGtMask"
78                               Name 174  "gl_SubgroupLeMask"
79                               Name 175  "gl_SubgroupLtMask"
80                               Name 181  "ballot"
81                               Name 218  "ballot"
82                               Name 253  "ballot"
83                               Decorate 35(gl_LocalInvocationID) BuiltIn LocalInvocationId
84                               Decorate 41(gl_WorkGroupID) BuiltIn WorkgroupId
85                               MemberDecorate 54(gl_MeshPerVertexEXT) 0 BuiltIn Position
86                               MemberDecorate 54(gl_MeshPerVertexEXT) 1 BuiltIn PointSize
87                               MemberDecorate 54(gl_MeshPerVertexEXT) 2 BuiltIn ClipDistance
88                               MemberDecorate 54(gl_MeshPerVertexEXT) 3 BuiltIn CullDistance
89                               Decorate 54(gl_MeshPerVertexEXT) Block
90                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 0 PerPrimitiveNV
91                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 0 BuiltIn PrimitiveId
92                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 1 PerPrimitiveNV
93                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 1 BuiltIn Layer
94                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 2 PerPrimitiveNV
95                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 2 BuiltIn ViewportIndex
96                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 3 PerPrimitiveNV
97                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 3 BuiltIn CullPrimitiveEXT
98                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 4 PerPrimitiveNV
99                               MemberDecorate 106(gl_MeshPerPrimitiveEXT) 4 BuiltIn PrimitiveShadingRateKHR
100                               Decorate 106(gl_MeshPerPrimitiveEXT) Block
101                               Decorate 147(gl_PrimitiveTriangleIndicesEXT) BuiltIn PrimitiveTriangleIndicesEXT
102                               Decorate 161(gl_SubgroupSize) RelaxedPrecision
103                               Decorate 161(gl_SubgroupSize) BuiltIn SubgroupSize
104                               Decorate 162(gl_SubgroupInvocationID) RelaxedPrecision
105                               Decorate 162(gl_SubgroupInvocationID) BuiltIn SubgroupLocalInvocationId
106                               Decorate 167(gl_NumSubgroups) BuiltIn NumSubgroups
107                               Decorate 168(gl_SubgroupID) BuiltIn SubgroupId
108                               Decorate 171(gl_SubgroupEqMask) BuiltIn SubgroupEqMaskKHR
109                               Decorate 172(gl_SubgroupGeMask) BuiltIn SubgroupGeMaskKHR
110                               Decorate 173(gl_SubgroupGtMask) BuiltIn SubgroupGtMaskKHR
111                               Decorate 174(gl_SubgroupLeMask) BuiltIn SubgroupLeMaskKHR
112                               Decorate 175(gl_SubgroupLtMask) BuiltIn SubgroupLtMaskKHR
113                               Decorate 278 BuiltIn WorkgroupSize
114                2:             TypeVoid
115                3:             TypeFunction 2
116                8:             TypeFloat 32
117                9:             TypeVector 8(float) 4
118               10:             TypePointer Function 9(fvec4)
119               11:             TypeFunction 2 10(ptr)
120               30:             TypeInt 32 0
121               31:             TypePointer Function 30(int)
122               33:             TypeVector 30(int) 3
123               34:             TypePointer Input 33(ivec3)
124 35(gl_LocalInvocationID):     34(ptr) Variable Input
125               36:     30(int) Constant 0
126               37:             TypePointer Input 30(int)
127 41(gl_WorkGroupID):     34(ptr) Variable Input
128               45:     30(int) Constant 81
129               47:     30(int) Constant 32
130               50:     30(int) Constant 4
131               51:             TypeArray 8(float) 50
132               52:     30(int) Constant 3
133               53:             TypeArray 8(float) 52
134 54(gl_MeshPerVertexEXT):             TypeStruct 9(fvec4) 8(float) 51 53
135               55:             TypeArray 54(gl_MeshPerVertexEXT) 45
136               56:             TypePointer Output 55
137 57(gl_MeshVerticesEXT):     56(ptr) Variable Output
138               59:             TypeInt 32 1
139               60:     59(int) Constant 0
140               61:    8(float) Constant 1065353216
141               62:    9(fvec4) ConstantComposite 61 61 61 61
142               63:             TypePointer Output 9(fvec4)
143               66:     59(int) Constant 1
144               67:    8(float) Constant 1073741824
145               68:             TypePointer Output 8(float)
146               71:     59(int) Constant 2
147               72:     59(int) Constant 3
148               73:    8(float) Constant 1077936128
149               76:    8(float) Constant 1082130432
150               78:     30(int) Constant 1
151               79:     30(int) Constant 264
152               80:     30(int) Constant 2
153              105:             TypeBool
154 106(gl_MeshPerPrimitiveEXT):             TypeStruct 59(int) 59(int) 59(int) 105(bool) 59(int)
155              107:             TypeArray 106(gl_MeshPerPrimitiveEXT) 47
156              108:             TypePointer Output 107
157 109(gl_MeshPrimitivesEXT):    108(ptr) Variable Output
158              111:     59(int) Constant 6
159              112:             TypePointer Output 59(int)
160              115:     59(int) Constant 7
161              118:     59(int) Constant 8
162              121:   105(bool) ConstantFalse
163              122:             TypePointer Output 105(bool)
164              145:             TypeArray 33(ivec3) 47
165              146:             TypePointer Output 145
166 147(gl_PrimitiveTriangleIndicesEXT):    146(ptr) Variable Output
167              148:   33(ivec3) ConstantComposite 78 78 78
168              149:             TypePointer Output 33(ivec3)
169              153:   33(ivec3) ConstantComposite 80 80 80
170 161(gl_SubgroupSize):     37(ptr) Variable Input
171 162(gl_SubgroupInvocationID):     37(ptr) Variable Input
172              163:     30(int) Constant 3400
173              164:     30(int) Constant 72
174              165:     30(int) Constant 2056
175 167(gl_NumSubgroups):     37(ptr) Variable Input
176 168(gl_SubgroupID):     37(ptr) Variable Input
177              169:             TypeVector 30(int) 4
178              170:             TypePointer Input 169(ivec4)
179 171(gl_SubgroupEqMask):    170(ptr) Variable Input
180 172(gl_SubgroupGeMask):    170(ptr) Variable Input
181 173(gl_SubgroupGtMask):    170(ptr) Variable Input
182 174(gl_SubgroupLeMask):    170(ptr) Variable Input
183 175(gl_SubgroupLtMask):    170(ptr) Variable Input
184              180:             TypePointer Function 169(ivec4)
185              183:  169(ivec4) ConstantComposite 78 78 78 78
186              197:   105(bool) ConstantTrue
187              254:     30(int) Constant 85
188              255:  169(ivec4) ConstantComposite 254 36 36 36
189              278:   33(ivec3) ConstantComposite 47 78 78
190          4(main):           2 Function None 3
191                5:             Label
192          32(iid):     31(ptr) Variable Function
193          40(gid):     31(ptr) Variable Function
194  44(vertexCount):     31(ptr) Variable Function
195 46(primitiveCount):     31(ptr) Variable Function
196               38:     37(ptr) AccessChain 35(gl_LocalInvocationID) 36
197               39:     30(int) Load 38
198                               Store 32(iid) 39
199               42:     37(ptr) AccessChain 41(gl_WorkGroupID) 36
200               43:     30(int) Load 42
201                               Store 40(gid) 43
202                               Store 44(vertexCount) 45
203                               Store 46(primitiveCount) 47
204               48:     30(int) Load 44(vertexCount)
205               49:     30(int) Load 46(primitiveCount)
206                               SetMeshOutputsEXT 48 49
207               58:     30(int) Load 32(iid)
208               64:     63(ptr) AccessChain 57(gl_MeshVerticesEXT) 58 60
209                               Store 64 62
210               65:     30(int) Load 32(iid)
211               69:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 65 66
212                               Store 69 67
213               70:     30(int) Load 32(iid)
214               74:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 70 71 72
215                               Store 74 73
216               75:     30(int) Load 32(iid)
217               77:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 75 72 71
218                               Store 77 76
219                               MemoryBarrier 78 79
220                               ControlBarrier 80 80 79
221               81:     30(int) Load 32(iid)
222               82:     30(int) IAdd 81 78
223               83:     30(int) Load 32(iid)
224               84:     63(ptr) AccessChain 57(gl_MeshVerticesEXT) 83 60
225               85:    9(fvec4) Load 84
226               86:     63(ptr) AccessChain 57(gl_MeshVerticesEXT) 82 60
227                               Store 86 85
228               87:     30(int) Load 32(iid)
229               88:     30(int) IAdd 87 78
230               89:     30(int) Load 32(iid)
231               90:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 89 66
232               91:    8(float) Load 90
233               92:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 88 66
234                               Store 92 91
235               93:     30(int) Load 32(iid)
236               94:     30(int) IAdd 93 78
237               95:     30(int) Load 32(iid)
238               96:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 95 71 72
239               97:    8(float) Load 96
240               98:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 94 71 72
241                               Store 98 97
242               99:     30(int) Load 32(iid)
243              100:     30(int) IAdd 99 78
244              101:     30(int) Load 32(iid)
245              102:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 101 72 71
246              103:    8(float) Load 102
247              104:     68(ptr) AccessChain 57(gl_MeshVerticesEXT) 100 72 71
248                               Store 104 103
249                               MemoryBarrier 78 79
250                               ControlBarrier 80 80 79
251              110:     30(int) Load 32(iid)
252              113:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 110 60
253                               Store 113 111
254              114:     30(int) Load 32(iid)
255              116:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 114 66
256                               Store 116 115
257              117:     30(int) Load 32(iid)
258              119:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 117 71
259                               Store 119 118
260              120:     30(int) Load 32(iid)
261              123:    122(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 120 72
262                               Store 123 121
263                               MemoryBarrier 78 79
264                               ControlBarrier 80 80 79
265              124:     30(int) Load 32(iid)
266              125:     30(int) IAdd 124 78
267              126:     30(int) Load 32(iid)
268              127:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 126 60
269              128:     59(int) Load 127
270              129:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 125 60
271                               Store 129 128
272              130:     30(int) Load 32(iid)
273              131:     30(int) IAdd 130 78
274              132:     30(int) Load 32(iid)
275              133:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 132 66
276              134:     59(int) Load 133
277              135:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 131 66
278                               Store 135 134
279              136:     30(int) Load 32(iid)
280              137:     30(int) IAdd 136 78
281              138:     30(int) Load 32(iid)
282              139:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 138 71
283              140:     59(int) Load 139
284              141:    112(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 137 71
285                               Store 141 140
286              142:     30(int) Load 32(iid)
287              143:     30(int) IAdd 142 78
288              144:    122(ptr) AccessChain 109(gl_MeshPrimitivesEXT) 143 72
289                               Store 144 121
290                               MemoryBarrier 78 79
291                               ControlBarrier 80 80 79
292              150:    149(ptr) AccessChain 147(gl_PrimitiveTriangleIndicesEXT) 60
293                               Store 150 148
294              151:     30(int) Load 46(primitiveCount)
295              152:     30(int) ISub 151 78
296              154:    149(ptr) AccessChain 147(gl_PrimitiveTriangleIndicesEXT) 152
297                               Store 154 153
298              155:     30(int) Load 40(gid)
299              156:     30(int) Load 40(gid)
300              157:     30(int) ISub 156 78
301              158:    149(ptr) AccessChain 147(gl_PrimitiveTriangleIndicesEXT) 157
302              159:   33(ivec3) Load 158
303              160:    149(ptr) AccessChain 147(gl_PrimitiveTriangleIndicesEXT) 155
304                               Store 160 159
305                               MemoryBarrier 78 79
306                               ControlBarrier 80 80 79
307                               Return
308                               FunctionEnd
309  6(basic_works():           2 Function None 3
310                7:             Label
311                               ControlBarrier 52 52 163
312                               MemoryBarrier 52 163
313                               MemoryBarrier 52 164
314                               MemoryBarrier 52 165
315              166:   105(bool) GroupNonUniformElect 52
316                               MemoryBarrier 52 79
317                               Return
318                               FunctionEnd
319 13(ballot_works(vf4;):           2 Function None 11
320           12(f4):     10(ptr) FunctionParameter
321               14:             Label
322      181(ballot):    180(ptr) Variable Function
323              176:    9(fvec4) Load 12(f4)
324              177:    9(fvec4) GroupNonUniformBroadcast 52 176 36
325              178:    9(fvec4) Load 12(f4)
326              179:    9(fvec4) GroupNonUniformBroadcastFirst 52 178
327              182:  169(ivec4) GroupNonUniformBallot 52 121
328                               Store 181(ballot) 182
329              184:   105(bool) GroupNonUniformInverseBallot 52 183
330              185:  169(ivec4) Load 181(ballot)
331              186:   105(bool) GroupNonUniformBallotBitExtract 52 185 36
332              187:  169(ivec4) Load 181(ballot)
333              188:     30(int) GroupNonUniformBallotBitCount 52 Reduce 187
334              189:  169(ivec4) Load 181(ballot)
335              190:     30(int) GroupNonUniformBallotBitCount 52 InclusiveScan 189
336              191:  169(ivec4) Load 181(ballot)
337              192:     30(int) GroupNonUniformBallotBitCount 52 ExclusiveScan 191
338              193:  169(ivec4) Load 181(ballot)
339              194:     30(int) GroupNonUniformBallotFindLSB 52 193
340              195:  169(ivec4) Load 181(ballot)
341              196:     30(int) GroupNonUniformBallotFindMSB 52 195
342                               Return
343                               FunctionEnd
344 16(vote_works(vf4;):           2 Function None 11
345           15(f4):     10(ptr) FunctionParameter
346               17:             Label
347              198:   105(bool) GroupNonUniformAll 52 197
348              199:   105(bool) GroupNonUniformAny 52 121
349              200:    9(fvec4) Load 15(f4)
350              201:   105(bool) GroupNonUniformAllEqual 52 200
351                               Return
352                               FunctionEnd
353 19(shuffle_works(vf4;):           2 Function None 11
354           18(f4):     10(ptr) FunctionParameter
355               20:             Label
356              202:    9(fvec4) Load 18(f4)
357              203:    9(fvec4) GroupNonUniformShuffle 52 202 36
358              204:    9(fvec4) Load 18(f4)
359              205:    9(fvec4) GroupNonUniformShuffleXor 52 204 78
360              206:    9(fvec4) Load 18(f4)
361              207:    9(fvec4) GroupNonUniformShuffleUp 52 206 78
362              208:    9(fvec4) Load 18(f4)
363              209:    9(fvec4) GroupNonUniformShuffleDown 52 208 78
364                               Return
365                               FunctionEnd
366 22(arith_works(vf4;):           2 Function None 11
367           21(f4):     10(ptr) FunctionParameter
368               23:             Label
369      218(ballot):    180(ptr) Variable Function
370              210:    9(fvec4) Load 21(f4)
371              211:    9(fvec4) GroupNonUniformFAdd 52 Reduce 210
372              212:    9(fvec4) Load 21(f4)
373              213:    9(fvec4) GroupNonUniformFMul 52 Reduce 212
374              214:    9(fvec4) Load 21(f4)
375              215:    9(fvec4) GroupNonUniformFMin 52 Reduce 214
376              216:    9(fvec4) Load 21(f4)
377              217:    9(fvec4) GroupNonUniformFMax 52 Reduce 216
378              219:  169(ivec4) Load 218(ballot)
379              220:  169(ivec4) GroupNonUniformBitwiseAnd 52 Reduce 219
380              221:  169(ivec4) Load 218(ballot)
381              222:  169(ivec4) GroupNonUniformBitwiseOr 52 Reduce 221
382              223:  169(ivec4) Load 218(ballot)
383              224:  169(ivec4) GroupNonUniformBitwiseXor 52 Reduce 223
384              225:    9(fvec4) Load 21(f4)
385              226:    9(fvec4) GroupNonUniformFAdd 52 InclusiveScan 225
386              227:    9(fvec4) Load 21(f4)
387              228:    9(fvec4) GroupNonUniformFMul 52 InclusiveScan 227
388              229:    9(fvec4) Load 21(f4)
389              230:    9(fvec4) GroupNonUniformFMin 52 InclusiveScan 229
390              231:    9(fvec4) Load 21(f4)
391              232:    9(fvec4) GroupNonUniformFMax 52 InclusiveScan 231
392              233:  169(ivec4) Load 218(ballot)
393              234:  169(ivec4) GroupNonUniformBitwiseAnd 52 InclusiveScan 233
394              235:  169(ivec4) Load 218(ballot)
395              236:  169(ivec4) GroupNonUniformBitwiseOr 52 InclusiveScan 235
396              237:  169(ivec4) Load 218(ballot)
397              238:  169(ivec4) GroupNonUniformBitwiseXor 52 InclusiveScan 237
398              239:    9(fvec4) Load 21(f4)
399              240:    9(fvec4) GroupNonUniformFAdd 52 ExclusiveScan 239
400              241:    9(fvec4) Load 21(f4)
401              242:    9(fvec4) GroupNonUniformFMul 52 ExclusiveScan 241
402              243:    9(fvec4) Load 21(f4)
403              244:    9(fvec4) GroupNonUniformFMin 52 ExclusiveScan 243
404              245:    9(fvec4) Load 21(f4)
405              246:    9(fvec4) GroupNonUniformFMax 52 ExclusiveScan 245
406              247:  169(ivec4) Load 218(ballot)
407              248:  169(ivec4) GroupNonUniformBitwiseAnd 52 ExclusiveScan 247
408              249:  169(ivec4) Load 218(ballot)
409              250:  169(ivec4) GroupNonUniformBitwiseOr 52 ExclusiveScan 249
410              251:  169(ivec4) Load 218(ballot)
411              252:  169(ivec4) GroupNonUniformBitwiseXor 52 ExclusiveScan 251
412                               Return
413                               FunctionEnd
414 25(clustered_works(vf4;):           2 Function None 11
415           24(f4):     10(ptr) FunctionParameter
416               26:             Label
417      253(ballot):    180(ptr) Variable Function
418                               Store 253(ballot) 255
419              256:    9(fvec4) Load 24(f4)
420              257:    9(fvec4) GroupNonUniformFAdd 52 ClusteredReduce 256 80
421              258:    9(fvec4) Load 24(f4)
422              259:    9(fvec4) GroupNonUniformFMul 52 ClusteredReduce 258 80
423              260:    9(fvec4) Load 24(f4)
424              261:    9(fvec4) GroupNonUniformFMin 52 ClusteredReduce 260 80
425              262:    9(fvec4) Load 24(f4)
426              263:    9(fvec4) GroupNonUniformFMax 52 ClusteredReduce 262 80
427              264:  169(ivec4) Load 253(ballot)
428              265:  169(ivec4) GroupNonUniformBitwiseAnd 52 ClusteredReduce 264 80
429              266:  169(ivec4) Load 253(ballot)
430              267:  169(ivec4) GroupNonUniformBitwiseOr 52 ClusteredReduce 266 80
431              268:  169(ivec4) Load 253(ballot)
432              269:  169(ivec4) GroupNonUniformBitwiseXor 52 ClusteredReduce 268 80
433                               Return
434                               FunctionEnd
435 28(quad_works(vf4;):           2 Function None 11
436           27(f4):     10(ptr) FunctionParameter
437               29:             Label
438              270:    9(fvec4) Load 27(f4)
439              271:    9(fvec4) GroupNonUniformQuadBroadcast 52 270 36
440              272:    9(fvec4) Load 27(f4)
441              273:    9(fvec4) GroupNonUniformQuadSwap 52 272 36
442              274:    9(fvec4) Load 27(f4)
443              275:    9(fvec4) GroupNonUniformQuadSwap 52 274 78
444              276:    9(fvec4) Load 27(f4)
445              277:    9(fvec4) GroupNonUniformQuadSwap 52 276 80
446                               Return
447                               FunctionEnd