You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

686 lines
33 KiB

spv.int64.frag
Validation failed
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 489
Capability Shader
Capability Float64
Capability Int64
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main"
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_ARB_gpu_shader_int64"
SourceExtension "GL_EXT_shader_explicit_arithmetic_types_int64"
Name 4 "main"
Name 6 "literal("
Name 8 "typeCast("
Name 10 "operators("
Name 12 "builtinFuncs("
Name 16 "u64Max"
Name 20 "i64"
Name 28 "Uniforms"
MemberName 28(Uniforms) 0 "index"
Name 30 ""
Name 37 "indexable"
Name 41 "u64"
Name 49 "indexable"
Name 54 "i64v"
Name 58 "bv"
Name 67 "u64v"
Name 76 "iv"
Name 83 "uv"
Name 91 "fv"
Name 97 "dv"
Name 134 "u64v"
Name 139 "i64"
Name 159 "i"
Name 166 "uv"
Name 226 "b"
Name 286 "i64v"
Name 289 "i64"
Name 299 "u64v"
Name 301 "u64"
Name 373 "dv"
Name 392 "iv"
Name 397 "uv"
Name 401 "bv"
Name 462 "Block"
MemberName 462(Block) 0 "i64v"
MemberName 462(Block) 1 "u64"
Name 464 "block"
Name 465 "si64"
Name 466 "su64"
Name 467 "si"
Name 468 "su"
Name 469 "sb"
Name 470 "su64inc"
Name 471 "i64_to_b"
Name 472 "u64_to_b"
Name 473 "b_to_i64"
Name 474 "b_to_u64"
Name 475 "i64_to_i"
Name 476 "i_to_i64"
Name 477 "u64_to_u"
Name 478 "u_to_u64"
Name 479 "u64_to_i64"
Name 480 "i64_to_u64"
Name 482 "u64_to_i"
Name 484 "i_to_u64"
Name 486 "i64_to_u"
Name 488 "u_to_i64"
MemberDecorate 28(Uniforms) 0 Offset 0
Decorate 28(Uniforms) Block
Decorate 30 DescriptorSet 0
Decorate 30 Binding 0
MemberDecorate 462(Block) 0 Offset 0
MemberDecorate 462(Block) 1 Offset 24
Decorate 462(Block) Block
Decorate 464(block) DescriptorSet 0
Decorate 464(block) Binding 1
Decorate 465(si64) SpecId 100
Decorate 466(su64) SpecId 101
Decorate 467(si) SpecId 102
Decorate 468(su) SpecId 103
Decorate 469(sb) SpecId 104
Decorate 470(su64inc) SpecId 105
2: TypeVoid
3: TypeFunction 2
14: TypeInt 64 0
15: TypePointer Private 14(int64_t)
16(u64Max): 15(ptr) Variable Private
17: 14(int64_t) Constant 4294967295 4294967295
18: TypeInt 64 1
19: TypePointer Function 18(int64_t)
21: TypeInt 32 0
22: 21(int) Constant 3
23: TypeArray 18(int64_t) 22
24: 18(int64_t) Constant 4008636143 4008636142
25: 18(int64_t) Constant 4294967295 4294967295
26: 18(int64_t) Constant 0 1
27: 23 ConstantComposite 24 25 26
28(Uniforms): TypeStruct 21(int)
29: TypePointer Uniform 28(Uniforms)
30: 29(ptr) Variable Uniform
31: TypeInt 32 1
32: 31(int) Constant 0
33: TypePointer Uniform 21(int)
36: TypePointer Function 23
40: TypePointer Function 14(int64_t)
42: TypeArray 14(int64_t) 22
43: 14(int64_t) Constant 0 1
44: 14(int64_t) Constant 4294967295 1
45: 42 ConstantComposite 17 43 44
48: TypePointer Function 42
52: TypeVector 18(int64_t) 2
53: TypePointer Function 52(i64vec2)
55: TypeBool
56: TypeVector 55(bool) 2
57: TypePointer Function 56(bvec2)
60: 18(int64_t) Constant 0 0
61: 18(int64_t) Constant 1 0
62: 52(i64vec2) ConstantComposite 60 60
63: 52(i64vec2) ConstantComposite 61 61
65: TypeVector 14(int64_t) 2
66: TypePointer Function 65(i64vec2)
69: 14(int64_t) Constant 0 0
70: 14(int64_t) Constant 1 0
71: 65(i64vec2) ConstantComposite 69 69
72: 65(i64vec2) ConstantComposite 70 70
74: TypeVector 31(int) 2
75: TypePointer Function 74(ivec2)
81: TypeVector 21(int) 2
82: TypePointer Function 81(ivec2)
88: TypeFloat 32
89: TypeVector 88(float) 2
90: TypePointer Function 89(fvec2)
94: TypeFloat 64
95: TypeVector 94(float64_t) 2
96: TypePointer Function 95(f64vec2)
132: TypeVector 14(int64_t) 3
133: TypePointer Function 132(i64vec3)
136: TypeVector 18(int64_t) 3
158: TypePointer Function 31(int)
164: TypeVector 21(int) 3
165: TypePointer Function 164(ivec3)
199: TypeVector 31(int) 3
203: 21(int) Constant 1
204: TypePointer Function 21(int)
217: 21(int) Constant 2
225: TypePointer Function 55(bool)
227: 21(int) Constant 0
297: 52(i64vec2) ConstantComposite 25 25
306:132(i64vec3) ConstantComposite 69 69 69
348: 55(bool) ConstantTrue
355: 55(bool) ConstantFalse
356: 56(bvec2) ConstantComposite 355 355
368: TypeVector 55(bool) 3
369: 368(bvec3) ConstantComposite 355 355 355
371: TypeVector 94(float64_t) 3
372: TypePointer Function 371(f64vec3)
377: TypePointer Function 94(float64_t)
388: 31(int) Constant 1
389: 31(int) Constant 2
390: 74(ivec2) ConstantComposite 388 389
395: 81(ivec2) ConstantComposite 217 22
400: TypePointer Function 368(bvec3)
462(Block): TypeStruct 136(i64vec3) 14(int64_t)
463: TypePointer Uniform 462(Block)
464(block): 463(ptr) Variable Uniform
465(si64): 18(int64_t) SpecConstant 4294967286 4294967295
466(su64): 14(int64_t) SpecConstant 20 0
467(si): 31(int) SpecConstant 4294967291
468(su): 21(int) SpecConstant 4
469(sb): 55(bool) SpecConstantTrue
470(su64inc): 14(int64_t) SpecConstantOp 128 466(su64) 70
471(i64_to_b): 55(bool) SpecConstantOp 171 465(si64) 69
472(u64_to_b): 55(bool) SpecConstantOp 171 466(su64) 69
473(b_to_i64): 18(int64_t) SpecConstantOp 169 469(sb) 61 60
474(b_to_u64): 14(int64_t) SpecConstantOp 169 469(sb) 70 69
475(i64_to_i): 31(int) SpecConstantOp 114 465(si64)
476(i_to_i64): 18(int64_t) SpecConstantOp 114 467(si)
477(u64_to_u): 21(int) SpecConstantOp 113 466(su64)
478(u_to_u64): 14(int64_t) SpecConstantOp 113 468(su)
479(u64_to_i64): 18(int64_t) SpecConstantOp 128 466(su64) 69
480(i64_to_u64): 14(int64_t) SpecConstantOp 128 465(si64) 69
481: 21(int) SpecConstantOp 113 466(su64)
482(u64_to_i): 31(int) SpecConstantOp 128 481 227
483: 18(int64_t) SpecConstantOp 114 467(si)
484(i_to_u64): 14(int64_t) SpecConstantOp 128 483 69
485: 31(int) SpecConstantOp 114 465(si64)
486(i64_to_u): 21(int) SpecConstantOp 128 485 227
487: 14(int64_t) SpecConstantOp 113 468(su)
488(u_to_i64): 18(int64_t) SpecConstantOp 128 487 69
4(main): 2 Function None 3
5: Label
Store 16(u64Max) 17
Return
FunctionEnd
6(literal(): 2 Function None 3
7: Label
20(i64): 19(ptr) Variable Function
37(indexable): 36(ptr) Variable Function
41(u64): 40(ptr) Variable Function
49(indexable): 48(ptr) Variable Function
34: 33(ptr) AccessChain 30 32
35: 21(int) Load 34
Store 37(indexable) 27
38: 19(ptr) AccessChain 37(indexable) 35
39: 18(int64_t) Load 38
Store 20(i64) 39
46: 33(ptr) AccessChain 30 32
47: 21(int) Load 46
Store 49(indexable) 45
50: 40(ptr) AccessChain 49(indexable) 47
51: 14(int64_t) Load 50
Store 41(u64) 51
Return
FunctionEnd
8(typeCast(): 2 Function None 3
9: Label
54(i64v): 53(ptr) Variable Function
58(bv): 57(ptr) Variable Function
67(u64v): 66(ptr) Variable Function
76(iv): 75(ptr) Variable Function
83(uv): 82(ptr) Variable Function
91(fv): 90(ptr) Variable Function
97(dv): 96(ptr) Variable Function
59: 56(bvec2) Load 58(bv)
64: 52(i64vec2) Select 59 63 62
Store 54(i64v) 64
68: 56(bvec2) Load 58(bv)
73: 65(i64vec2) Select 68 72 71
Store 67(u64v) 73
77: 74(ivec2) Load 76(iv)
78: 52(i64vec2) SConvert 77
Store 54(i64v) 78
79: 52(i64vec2) Load 54(i64v)
80: 74(ivec2) SConvert 79
Store 76(iv) 80
84: 81(ivec2) Load 83(uv)
85: 65(i64vec2) UConvert 84
Store 67(u64v) 85
86: 65(i64vec2) Load 67(u64v)
87: 81(ivec2) UConvert 86
Store 83(uv) 87
92: 52(i64vec2) Load 54(i64v)
93: 89(fvec2) ConvertSToF 92
Store 91(fv) 93
98: 52(i64vec2) Load 54(i64v)
99: 95(f64vec2) ConvertSToF 98
Store 97(dv) 99
100: 65(i64vec2) Load 67(u64v)
101: 89(fvec2) ConvertUToF 100
Store 91(fv) 101
102: 65(i64vec2) Load 67(u64v)
103: 95(f64vec2) ConvertUToF 102
Store 97(dv) 103
104: 89(fvec2) Load 91(fv)
105: 52(i64vec2) ConvertFToS 104
Store 54(i64v) 105
106: 95(f64vec2) Load 97(dv)
107: 52(i64vec2) ConvertFToS 106
Store 54(i64v) 107
108: 89(fvec2) Load 91(fv)
109: 65(i64vec2) ConvertFToU 108
Store 67(u64v) 109
110: 95(f64vec2) Load 97(dv)
111: 65(i64vec2) ConvertFToU 110
Store 67(u64v) 111
112: 52(i64vec2) Load 54(i64v)
113: 56(bvec2) INotEqual 112 71
Store 58(bv) 113
114: 65(i64vec2) Load 67(u64v)
115: 56(bvec2) INotEqual 114 71
Store 58(bv) 115
116: 52(i64vec2) Load 54(i64v)
117: 65(i64vec2) Bitcast 116
Store 67(u64v) 117
118: 65(i64vec2) Load 67(u64v)
119: 52(i64vec2) Bitcast 118
Store 54(i64v) 119
120: 52(i64vec2) Load 54(i64v)
121: 74(ivec2) SConvert 120
122: 81(ivec2) Bitcast 121
Store 83(uv) 122
123: 81(ivec2) Load 83(uv)
124: 65(i64vec2) UConvert 123
125: 52(i64vec2) Bitcast 124
Store 54(i64v) 125
126: 65(i64vec2) Load 67(u64v)
127: 81(ivec2) UConvert 126
128: 74(ivec2) Bitcast 127
Store 76(iv) 128
129: 74(ivec2) Load 76(iv)
130: 52(i64vec2) SConvert 129
131: 65(i64vec2) Bitcast 130
Store 67(u64v) 131
Return
FunctionEnd
10(operators(): 2 Function None 3
11: Label
134(u64v): 133(ptr) Variable Function
139(i64): 19(ptr) Variable Function
159(i): 158(ptr) Variable Function
166(uv): 165(ptr) Variable Function
226(b): 225(ptr) Variable Function
135:132(i64vec3) Load 134(u64v)
137:136(i64vec3) CompositeConstruct 61 61 61
138:132(i64vec3) IAdd 135 137
Store 134(u64v) 138
140: 18(int64_t) Load 139(i64)
141: 18(int64_t) ISub 140 61
Store 139(i64) 141
142: 18(int64_t) Load 139(i64)
143: 18(int64_t) IAdd 142 61
Store 139(i64) 143
144:132(i64vec3) Load 134(u64v)
145:136(i64vec3) CompositeConstruct 61 61 61
146:132(i64vec3) ISub 144 145
Store 134(u64v) 146
147:132(i64vec3) Load 134(u64v)
148:132(i64vec3) Not 147
Store 134(u64v) 148
149: 18(int64_t) Load 139(i64)
Store 139(i64) 149
150:132(i64vec3) Load 134(u64v)
151:132(i64vec3) SNegate 150
Store 134(u64v) 151
152: 18(int64_t) Load 139(i64)
153: 18(int64_t) Load 139(i64)
154: 18(int64_t) IAdd 153 152
Store 139(i64) 154
155:132(i64vec3) Load 134(u64v)
156:132(i64vec3) Load 134(u64v)
157:132(i64vec3) ISub 156 155
Store 134(u64v) 157
160: 31(int) Load 159(i)
161: 18(int64_t) SConvert 160
162: 18(int64_t) Load 139(i64)
163: 18(int64_t) IMul 162 161
Store 139(i64) 163
167: 164(ivec3) Load 166(uv)
168:132(i64vec3) UConvert 167
169:132(i64vec3) Load 134(u64v)
170:132(i64vec3) UDiv 169 168
Store 134(u64v) 170
171: 31(int) Load 159(i)
172: 18(int64_t) SConvert 171
173: 14(int64_t) Bitcast 172
174:132(i64vec3) Load 134(u64v)
175:132(i64vec3) CompositeConstruct 173 173 173
176:132(i64vec3) UMod 174 175
Store 134(u64v) 176
177:132(i64vec3) Load 134(u64v)
178: 164(ivec3) Load 166(uv)
179:132(i64vec3) UConvert 178
180:132(i64vec3) IAdd 177 179
Store 134(u64v) 180
181: 18(int64_t) Load 139(i64)
182: 31(int) Load 159(i)
183: 18(int64_t) SConvert 182
184: 18(int64_t) ISub 181 183
Store 139(i64) 184
185:132(i64vec3) Load 134(u64v)
186: 164(ivec3) Load 166(uv)
187:132(i64vec3) UConvert 186
188:132(i64vec3) IMul 185 187
Store 134(u64v) 188
189: 18(int64_t) Load 139(i64)
190: 31(int) Load 159(i)
191: 18(int64_t) SConvert 190
192: 18(int64_t) IMul 189 191
Store 139(i64) 192
193: 18(int64_t) Load 139(i64)
194: 31(int) Load 159(i)
195: 18(int64_t) SConvert 194
196: 18(int64_t) SMod 193 195
Store 139(i64) 196
197:132(i64vec3) Load 134(u64v)
198: 31(int) Load 159(i)
200: 199(ivec3) CompositeConstruct 198 198 198
201:132(i64vec3) ShiftLeftLogical 197 200
Store 134(u64v) 201
202: 18(int64_t) Load 139(i64)
205: 204(ptr) AccessChain 166(uv) 203
206: 21(int) Load 205
207: 18(int64_t) ShiftRightArithmetic 202 206
Store 139(i64) 207
208: 31(int) Load 159(i)
209:132(i64vec3) Load 134(u64v)
210: 199(ivec3) CompositeConstruct 208 208 208
211:132(i64vec3) ShiftLeftLogical 209 210
Store 134(u64v) 211
212: 204(ptr) AccessChain 166(uv) 203
213: 21(int) Load 212
214: 18(int64_t) Load 139(i64)
215: 18(int64_t) ShiftRightArithmetic 214 213
Store 139(i64) 215
216: 18(int64_t) Load 139(i64)
218: 40(ptr) AccessChain 134(u64v) 217
219: 14(int64_t) Load 218
220: 18(int64_t) ShiftLeftLogical 216 219
Store 139(i64) 220
221:132(i64vec3) Load 134(u64v)
222: 18(int64_t) Load 139(i64)
223:136(i64vec3) CompositeConstruct 222 222 222
224:132(i64vec3) ShiftLeftLogical 221 223
Store 134(u64v) 224
228: 40(ptr) AccessChain 134(u64v) 227
229: 14(int64_t) Load 228
230: 18(int64_t) Load 139(i64)
231: 14(int64_t) Bitcast 230
232: 55(bool) INotEqual 229 231
Store 226(b) 232
233: 18(int64_t) Load 139(i64)
234: 14(int64_t) Bitcast 233
235: 40(ptr) AccessChain 134(u64v) 227
236: 14(int64_t) Load 235
237: 55(bool) IEqual 234 236
Store 226(b) 237
238: 40(ptr) AccessChain 134(u64v) 227
239: 14(int64_t) Load 238
240: 204(ptr) AccessChain 166(uv) 203
241: 21(int) Load 240
242: 14(int64_t) UConvert 241
243: 55(bool) UGreaterThan 239 242
Store 226(b) 243
244: 18(int64_t) Load 139(i64)
245: 31(int) Load 159(i)
246: 18(int64_t) SConvert 245
247: 55(bool) SLessThan 244 246
Store 226(b) 247
248: 40(ptr) AccessChain 134(u64v) 203
249: 14(int64_t) Load 248
250: 204(ptr) AccessChain 166(uv) 227
251: 21(int) Load 250
252: 14(int64_t) UConvert 251
253: 55(bool) UGreaterThanEqual 249 252
Store 226(b) 253
254: 18(int64_t) Load 139(i64)
255: 31(int) Load 159(i)
256: 18(int64_t) SConvert 255
257: 55(bool) SLessThanEqual 254 256
Store 226(b) 257
258: 31(int) Load 159(i)
259: 18(int64_t) SConvert 258
260: 14(int64_t) Bitcast 259
261:132(i64vec3) Load 134(u64v)
262:132(i64vec3) CompositeConstruct 260 260 260
263:132(i64vec3) BitwiseOr 261 262
Store 134(u64v) 263
264: 18(int64_t) Load 139(i64)
265: 31(int) Load 159(i)
266: 18(int64_t) SConvert 265
267: 18(int64_t) BitwiseOr 264 266
Store 139(i64) 267
268: 31(int) Load 159(i)
269: 18(int64_t) SConvert 268
270: 18(int64_t) Load 139(i64)
271: 18(int64_t) BitwiseAnd 270 269
Store 139(i64) 271
272:132(i64vec3) Load 134(u64v)
273: 164(ivec3) Load 166(uv)
274:132(i64vec3) UConvert 273
275:132(i64vec3) BitwiseAnd 272 274
Store 134(u64v) 275
276: 18(int64_t) Load 139(i64)
277: 14(int64_t) Bitcast 276
278:132(i64vec3) Load 134(u64v)
279:132(i64vec3) CompositeConstruct 277 277 277
280:132(i64vec3) BitwiseXor 278 279
Store 134(u64v) 280
281:132(i64vec3) Load 134(u64v)
282: 18(int64_t) Load 139(i64)
283: 14(int64_t) Bitcast 282
284:132(i64vec3) CompositeConstruct 283 283 283
285:132(i64vec3) BitwiseXor 281 284
Store 134(u64v) 285
Return
FunctionEnd
12(builtinFuncs(): 2 Function None 3
13: Label
286(i64v): 53(ptr) Variable Function
289(i64): 19(ptr) Variable Function
299(u64v): 133(ptr) Variable Function
301(u64): 40(ptr) Variable Function
373(dv): 372(ptr) Variable Function
392(iv): 75(ptr) Variable Function
397(uv): 82(ptr) Variable Function
401(bv): 400(ptr) Variable Function
287: 52(i64vec2) Load 286(i64v)
288: 52(i64vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 287
Store 286(i64v) 288
290: 18(int64_t) Load 289(i64)
291: 18(int64_t) ExtInst 1(GLSL.std.450) 7(SSign) 290
Store 289(i64) 291
292: 52(i64vec2) Load 286(i64v)
293: 18(int64_t) Load 289(i64)
294: 52(i64vec2) CompositeConstruct 293 293
295: 52(i64vec2) ExtInst 1(GLSL.std.450) 39(SMin) 292 294
Store 286(i64v) 295
296: 52(i64vec2) Load 286(i64v)
298: 52(i64vec2) ExtInst 1(GLSL.std.450) 39(SMin) 296 297
Store 286(i64v) 298
300:132(i64vec3) Load 299(u64v)
302: 14(int64_t) Load 301(u64)
303:132(i64vec3) CompositeConstruct 302 302 302
304:132(i64vec3) ExtInst 1(GLSL.std.450) 38(UMin) 300 303
Store 299(u64v) 304
305:132(i64vec3) Load 299(u64v)
307:132(i64vec3) ExtInst 1(GLSL.std.450) 38(UMin) 305 306
Store 299(u64v) 307
308: 52(i64vec2) Load 286(i64v)
309: 18(int64_t) Load 289(i64)
310: 52(i64vec2) CompositeConstruct 309 309
311: 52(i64vec2) ExtInst 1(GLSL.std.450) 42(SMax) 308 310
Store 286(i64v) 311
312: 52(i64vec2) Load 286(i64v)
313: 52(i64vec2) ExtInst 1(GLSL.std.450) 42(SMax) 312 297
Store 286(i64v) 313
314:132(i64vec3) Load 299(u64v)
315: 14(int64_t) Load 301(u64)
316:132(i64vec3) CompositeConstruct 315 315 315
317:132(i64vec3) ExtInst 1(GLSL.std.450) 41(UMax) 314 316
Store 299(u64v) 317
318:132(i64vec3) Load 299(u64v)
319:132(i64vec3) ExtInst 1(GLSL.std.450) 41(UMax) 318 306
Store 299(u64v) 319
320: 52(i64vec2) Load 286(i64v)
321: 18(int64_t) Load 289(i64)
322: 18(int64_t) SNegate 321
323: 18(int64_t) Load 289(i64)
324: 52(i64vec2) CompositeConstruct 322 322
325: 52(i64vec2) CompositeConstruct 323 323
326: 52(i64vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 320 324 325
Store 286(i64v) 326
327: 52(i64vec2) Load 286(i64v)
328: 52(i64vec2) Load 286(i64v)
329: 52(i64vec2) SNegate 328
330: 52(i64vec2) Load 286(i64v)
331: 52(i64vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 327 329 330
Store 286(i64v) 331
332:132(i64vec3) Load 299(u64v)
333: 14(int64_t) Load 301(u64)
334: 14(int64_t) SNegate 333
335: 14(int64_t) Load 301(u64)
336:132(i64vec3) CompositeConstruct 334 334 334
337:132(i64vec3) CompositeConstruct 335 335 335
338:132(i64vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 332 336 337
Store 299(u64v) 338
339:132(i64vec3) Load 299(u64v)
340:132(i64vec3) Load 299(u64v)
341:132(i64vec3) SNegate 340
342:132(i64vec3) Load 299(u64v)
343:132(i64vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 339 341 342
Store 299(u64v) 343
344: 19(ptr) AccessChain 286(i64v) 227
345: 18(int64_t) Load 344
346: 19(ptr) AccessChain 286(i64v) 203
347: 18(int64_t) Load 346
349: 18(int64_t) Select 348 347 345
Store 289(i64) 349
350: 18(int64_t) Load 289(i64)
351: 52(i64vec2) CompositeConstruct 350 350
352: 18(int64_t) Load 289(i64)
353: 18(int64_t) SNegate 352
354: 52(i64vec2) CompositeConstruct 353 353
357: 52(i64vec2) Select 356 354 351
Store 286(i64v) 357
358: 40(ptr) AccessChain 299(u64v) 227
359: 14(int64_t) Load 358
360: 40(ptr) AccessChain 299(u64v) 203
361: 14(int64_t) Load 360
362: 14(int64_t) Select 348 361 359
Store 301(u64) 362
363: 14(int64_t) Load 301(u64)
364:132(i64vec3) CompositeConstruct 363 363 363
365: 14(int64_t) Load 301(u64)
366: 14(int64_t) SNegate 365
367:132(i64vec3) CompositeConstruct 366 366 366
370:132(i64vec3) Select 369 367 364
Store 299(u64v) 370
374:371(f64vec3) Load 373(dv)
375: 95(f64vec2) VectorShuffle 374 374 0 1
376: 52(i64vec2) Bitcast 375
Store 286(i64v) 376
378: 377(ptr) AccessChain 373(dv) 217
379:94(float64_t) Load 378
380: 14(int64_t) Bitcast 379
381: 40(ptr) AccessChain 299(u64v) 227
Store 381 380
382: 52(i64vec2) Load 286(i64v)
383: 95(f64vec2) Bitcast 382
384:371(f64vec3) Load 373(dv)
385:371(f64vec3) VectorShuffle 384 383 3 4 2
Store 373(dv) 385
386:132(i64vec3) Load 299(u64v)
387:371(f64vec3) Bitcast 386
Store 373(dv) 387
391: 18(int64_t) Bitcast 390
Store 289(i64) 391
393: 18(int64_t) Load 289(i64)
394: 74(ivec2) Bitcast 393
Store 392(iv) 394
396: 14(int64_t) Bitcast 395
Store 301(u64) 396
398: 14(int64_t) Load 301(u64)
399: 81(ivec2) Bitcast 398
Store 397(uv) 399
402:132(i64vec3) Load 299(u64v)
403: 14(int64_t) Load 301(u64)
404:132(i64vec3) CompositeConstruct 403 403 403
405: 368(bvec3) ULessThan 402 404
Store 401(bv) 405
406: 52(i64vec2) Load 286(i64v)
407: 18(int64_t) Load 289(i64)
408: 52(i64vec2) CompositeConstruct 407 407
409: 56(bvec2) SLessThan 406 408
410: 368(bvec3) Load 401(bv)
411: 368(bvec3) VectorShuffle 410 409 3 4 2
Store 401(bv) 411
412:132(i64vec3) Load 299(u64v)
413: 14(int64_t) Load 301(u64)
414:132(i64vec3) CompositeConstruct 413 413 413
415: 368(bvec3) ULessThanEqual 412 414
Store 401(bv) 415
416: 52(i64vec2) Load 286(i64v)
417: 18(int64_t) Load 289(i64)
418: 52(i64vec2) CompositeConstruct 417 417
419: 56(bvec2) SLessThanEqual 416 418
420: 368(bvec3) Load 401(bv)
421: 368(bvec3) VectorShuffle 420 419 3 4 2
Store 401(bv) 421
422:132(i64vec3) Load 299(u64v)
423: 14(int64_t) Load 301(u64)
424:132(i64vec3) CompositeConstruct 423 423 423
425: 368(bvec3) UGreaterThan 422 424
Store 401(bv) 425
426: 52(i64vec2) Load 286(i64v)
427: 18(int64_t) Load 289(i64)
428: 52(i64vec2) CompositeConstruct 427 427
429: 56(bvec2) SGreaterThan 426 428
430: 368(bvec3) Load 401(bv)
431: 368(bvec3) VectorShuffle 430 429 3 4 2
Store 401(bv) 431
432:132(i64vec3) Load 299(u64v)
433: 14(int64_t) Load 301(u64)
434:132(i64vec3) CompositeConstruct 433 433 433
435: 368(bvec3) UGreaterThanEqual 432 434
Store 401(bv) 435
436: 52(i64vec2) Load 286(i64v)
437: 18(int64_t) Load 289(i64)
438: 52(i64vec2) CompositeConstruct 437 437
439: 56(bvec2) SGreaterThanEqual 436 438
440: 368(bvec3) Load 401(bv)
441: 368(bvec3) VectorShuffle 440 439 3 4 2
Store 401(bv) 441
442:132(i64vec3) Load 299(u64v)
443: 14(int64_t) Load 301(u64)
444:132(i64vec3) CompositeConstruct 443 443 443
445: 368(bvec3) IEqual 442 444
Store 401(bv) 445
446: 52(i64vec2) Load 286(i64v)
447: 18(int64_t) Load 289(i64)
448: 52(i64vec2) CompositeConstruct 447 447
449: 56(bvec2) IEqual 446 448
450: 368(bvec3) Load 401(bv)
451: 368(bvec3) VectorShuffle 450 449 3 4 2
Store 401(bv) 451
452:132(i64vec3) Load 299(u64v)
453: 14(int64_t) Load 301(u64)
454:132(i64vec3) CompositeConstruct 453 453 453
455: 368(bvec3) INotEqual 452 454
Store 401(bv) 455
456: 52(i64vec2) Load 286(i64v)
457: 18(int64_t) Load 289(i64)
458: 52(i64vec2) CompositeConstruct 457 457
459: 56(bvec2) INotEqual 456 458
460: 368(bvec3) Load 401(bv)
461: 368(bvec3) VectorShuffle 460 459 3 4 2
Store 401(bv) 461
Return
FunctionEnd