Commit 1790a40c by John Kessenich

SPV: Add missing break statements in type declarations.

This means the previously emitted code was incorrect.
parent d481e071
......@@ -2471,6 +2471,7 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
case glslang::EbtUint8:
builder.addCapability(spv::CapabilityInt8);
spvType = builder.makeUintType(8);
break;
case glslang::EbtInt16:
builder.addCapability(spv::CapabilityInt16);
#ifdef AMD_EXTENSIONS
......@@ -2484,6 +2485,7 @@ spv::Id TGlslangToSpvTraverser::convertGlslangToSpvType(const glslang::TType& ty
builder.addExtension(spv::E_SPV_AMD_gpu_shader_int16);
#endif
spvType = builder.makeUintType(16);
break;
case glslang::EbtInt:
spvType = builder.makeIntType(32);
break;
......
......@@ -179,6 +179,7 @@ private:
range_t constRange(spv::Op opCode) const;
unsigned typeSizeInWords(spv::Id id) const;
unsigned idTypeSizeInWords(spv::Id id) const;
spv::Id& asId(unsigned word) { return spv[word]; }
const spv::Id& asId(unsigned word) const { return spv[word]; }
spv::Op asOpCode(unsigned word) const { return opOpCode(spv[word]); }
......
spv.float32.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 528
// Id's are bound by 530
Capability Shader
Capability Float16
......@@ -15,7 +15,7 @@ spv.float32.frag
Extension "SPV_AMD_gpu_shader_int16"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 466
EntryPoint Fragment 4 "main" 468
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_KHX_shader_explicit_arithmetic_types"
......@@ -51,80 +51,80 @@ spv.float32.frag
Name 195 "i32v"
Name 201 "i64v"
Name 204 "u8v"
Name 208 "u16v"
Name 213 "u32v"
Name 219 "u64v"
Name 224 "f32v2"
Name 225 "f32v1"
Name 257 "f32v2"
Name 258 "f32v1"
Name 274 "f32v2"
Name 275 "f32v1"
Name 296 "f32"
Name 300 "f32v3"
Name 340 "bv"
Name 361 "b"
Name 371 "iv"
Name 372 "ResType"
Name 379 "f32"
Name 380 "f32v1"
Name 384 "f32v2"
Name 390 "f32v3"
Name 409 "f32m3"
Name 410 "f32m1"
Name 412 "f32m2"
Name 421 "f32v1"
Name 423 "f32v2"
Name 428 "f32m4"
Name 431 "f32"
Name 434 "f32m5"
Name 439 "f32m6"
Name 440 "f32m7"
Name 443 "bv"
Name 444 "f32v1"
Name 446 "f32v2"
Name 464 "f32v"
Name 466 "if32v"
Name 515 "S"
MemberName 515(S) 0 "x"
MemberName 515(S) 1 "y"
MemberName 515(S) 2 "z"
Name 517 "B1"
MemberName 517(B1) 0 "a"
MemberName 517(B1) 1 "b"
MemberName 517(B1) 2 "c"
MemberName 517(B1) 3 "d"
MemberName 517(B1) 4 "e"
MemberName 517(B1) 5 "f"
MemberName 517(B1) 6 "g"
MemberName 517(B1) 7 "h"
Name 519 ""
Name 520 "sf16"
Name 521 "sf"
Name 522 "sd"
Decorate 513 ArrayStride 16
Decorate 514 ArrayStride 32
MemberDecorate 515(S) 0 Offset 0
MemberDecorate 515(S) 1 Offset 8
MemberDecorate 515(S) 2 Offset 16
Name 210 "u16v"
Name 215 "u32v"
Name 221 "u64v"
Name 226 "f32v2"
Name 227 "f32v1"
Name 259 "f32v2"
Name 260 "f32v1"
Name 276 "f32v2"
Name 277 "f32v1"
Name 298 "f32"
Name 302 "f32v3"
Name 342 "bv"
Name 363 "b"
Name 373 "iv"
Name 374 "ResType"
Name 381 "f32"
Name 382 "f32v1"
Name 386 "f32v2"
Name 392 "f32v3"
Name 411 "f32m3"
Name 412 "f32m1"
Name 414 "f32m2"
Name 423 "f32v1"
Name 425 "f32v2"
Name 430 "f32m4"
Name 433 "f32"
Name 436 "f32m5"
Name 441 "f32m6"
Name 442 "f32m7"
Name 445 "bv"
Name 446 "f32v1"
Name 448 "f32v2"
Name 466 "f32v"
Name 468 "if32v"
Name 517 "S"
MemberName 517(S) 0 "x"
MemberName 517(S) 1 "y"
MemberName 517(S) 2 "z"
Name 519 "B1"
MemberName 519(B1) 0 "a"
MemberName 519(B1) 1 "b"
MemberName 519(B1) 2 "c"
MemberName 519(B1) 3 "d"
MemberName 519(B1) 4 "e"
MemberName 519(B1) 5 "f"
MemberName 519(B1) 6 "g"
MemberName 519(B1) 7 "h"
Name 521 ""
Name 522 "sf16"
Name 523 "sf"
Name 524 "sd"
Decorate 515 ArrayStride 16
Decorate 516 ArrayStride 32
MemberDecorate 517(B1) 0 Offset 0
MemberDecorate 517(B1) 1 Offset 8
MemberDecorate 517(B1) 2 Offset 16
MemberDecorate 517(B1) 3 Offset 32
MemberDecorate 517(B1) 4 ColMajor
MemberDecorate 517(B1) 4 Offset 64
MemberDecorate 517(B1) 4 MatrixStride 16
MemberDecorate 517(B1) 5 ColMajor
MemberDecorate 517(B1) 5 Offset 96
MemberDecorate 517(B1) 5 MatrixStride 16
MemberDecorate 517(B1) 6 Offset 160
MemberDecorate 517(B1) 7 Offset 192
Decorate 517(B1) Block
Decorate 519 DescriptorSet 0
Decorate 520(sf16) SpecId 100
Decorate 521(sf) SpecId 101
Decorate 522(sd) SpecId 102
MemberDecorate 517(S) 0 Offset 0
MemberDecorate 517(S) 1 Offset 8
MemberDecorate 517(S) 2 Offset 16
Decorate 518 ArrayStride 32
MemberDecorate 519(B1) 0 Offset 0
MemberDecorate 519(B1) 1 Offset 8
MemberDecorate 519(B1) 2 Offset 16
MemberDecorate 519(B1) 3 Offset 32
MemberDecorate 519(B1) 4 ColMajor
MemberDecorate 519(B1) 4 Offset 64
MemberDecorate 519(B1) 4 MatrixStride 16
MemberDecorate 519(B1) 5 ColMajor
MemberDecorate 519(B1) 5 Offset 96
MemberDecorate 519(B1) 5 MatrixStride 16
MemberDecorate 519(B1) 6 Offset 160
MemberDecorate 519(B1) 7 Offset 192
Decorate 519(B1) Block
Decorate 521 DescriptorSet 0
Decorate 522(sf16) SpecId 100
Decorate 523(sf) SpecId 101
Decorate 524(sd) SpecId 102
2: TypeVoid
3: TypeFunction 2
26: TypeFloat 32
......@@ -169,44 +169,46 @@ spv.float32.frag
199: TypeVector 198(int) 3
200: TypePointer Function 199(ivec3)
207: TypeInt 16 0
211: TypeVector 31(int) 3
212: TypePointer Function 211(ivec3)
216: TypeInt 64 0
217: TypeVector 216(int) 3
218: TypePointer Function 217(ivec3)
222: TypeVector 26(float) 4
223: TypePointer Function 222(fvec4)
372(ResType): TypeStruct 153(fvec3) 193(ivec3)
407: TypeMatrix 153(fvec3) 2
408: TypePointer Function 407
426: TypeMatrix 27(fvec2) 3
427: TypePointer Function 426
432: TypeMatrix 153(fvec3) 3
433: TypePointer Function 432
437: TypeMatrix 222(fvec4) 4
438: TypePointer Function 437
465: TypePointer Input 153(fvec3)
466(if32v): 465(ptr) Variable Input
467: TypePointer Input 26(float)
504: 192(int) Constant 1
509: 26(float) Constant 1056964608
510: 27(fvec2) ConstantComposite 509 509
512: 31(int) Constant 2
513: TypeArray 26(float) 512
514: TypeArray 407 512
515(S): TypeStruct 26(float) 27(fvec2) 153(fvec3)
516: TypeArray 515(S) 512
517(B1): TypeStruct 26(float) 27(fvec2) 153(fvec3) 513 407 514 515(S) 516
518: TypePointer Uniform 517(B1)
519: 518(ptr) Variable Uniform
520(sf16): 172(float) SpecConstant 12288
521(sf): 26(float) SpecConstant 1048576000
522(sd): 149(float) SpecConstant 0 1071644672
523: 26(float) SpecConstantOp 115 520(sf16)
524: 26(float) SpecConstantOp 115 520(sf16)
525: 149(float) SpecConstantOp 115 524
526: 172(float) SpecConstantOp 115 521(sf)
527: 172(float) SpecConstantOp 115 522(sd)
208: TypeVector 207(int) 3
209: TypePointer Function 208(ivec3)
213: TypeVector 31(int) 3
214: TypePointer Function 213(ivec3)
218: TypeInt 64 0
219: TypeVector 218(int) 3
220: TypePointer Function 219(ivec3)
224: TypeVector 26(float) 4
225: TypePointer Function 224(fvec4)
374(ResType): TypeStruct 153(fvec3) 193(ivec3)
409: TypeMatrix 153(fvec3) 2
410: TypePointer Function 409
428: TypeMatrix 27(fvec2) 3
429: TypePointer Function 428
434: TypeMatrix 153(fvec3) 3
435: TypePointer Function 434
439: TypeMatrix 224(fvec4) 4
440: TypePointer Function 439
467: TypePointer Input 153(fvec3)
468(if32v): 467(ptr) Variable Input
469: TypePointer Input 26(float)
506: 192(int) Constant 1
511: 26(float) Constant 1056964608
512: 27(fvec2) ConstantComposite 511 511
514: 31(int) Constant 2
515: TypeArray 26(float) 514
516: TypeArray 409 514
517(S): TypeStruct 26(float) 27(fvec2) 153(fvec3)
518: TypeArray 517(S) 514
519(B1): TypeStruct 26(float) 27(fvec2) 153(fvec3) 515 409 516 517(S) 518
520: TypePointer Uniform 519(B1)
521: 520(ptr) Variable Uniform
522(sf16): 172(float) SpecConstant 12288
523(sf): 26(float) SpecConstant 1048576000
524(sd): 149(float) SpecConstant 0 1071644672
525: 26(float) SpecConstantOp 115 522(sf16)
526: 26(float) SpecConstantOp 115 522(sf16)
527: 149(float) SpecConstantOp 115 526
528: 172(float) SpecConstantOp 115 523(sf)
529: 172(float) SpecConstantOp 115 524(sd)
4(main): 2 Function None 3
5: Label
Return
......@@ -364,9 +366,9 @@ spv.float32.frag
195(i32v): 194(ptr) Variable Function
201(i64v): 200(ptr) Variable Function
204(u8v): 182(ptr) Variable Function
208(u16v): 194(ptr) Variable Function
213(u32v): 212(ptr) Variable Function
219(u64v): 218(ptr) Variable Function
210(u16v): 209(ptr) Variable Function
215(u32v): 214(ptr) Variable Function
221(u64v): 220(ptr) Variable Function
156: 153(fvec3) Load 155(f32v)
157: 150(fvec3) FConvert 156
Store 152(f64v) 157
......@@ -403,398 +405,398 @@ spv.float32.frag
205: 153(fvec3) Load 155(f32v)
206: 181(ivec3) ConvertFToS 205
Store 204(u8v) 206
209: 153(fvec3) Load 155(f32v)
210: 193(ivec3) ConvertFToU 209
Store 208(u16v) 210
214: 153(fvec3) Load 155(f32v)
215: 211(ivec3) ConvertFToU 214
Store 213(u32v) 215
220: 153(fvec3) Load 155(f32v)
221: 217(ivec3) ConvertFToU 220
Store 219(u64v) 221
211: 153(fvec3) Load 155(f32v)
212: 208(ivec3) ConvertFToU 211
Store 210(u16v) 212
216: 153(fvec3) Load 155(f32v)
217: 213(ivec3) ConvertFToU 216
Store 215(u32v) 217
222: 153(fvec3) Load 155(f32v)
223: 219(ivec3) ConvertFToU 222
Store 221(u64v) 223
Return
FunctionEnd
12(builtinAngleTrigFuncs(): 2 Function None 3
13: Label
224(f32v2): 223(ptr) Variable Function
225(f32v1): 223(ptr) Variable Function
226: 222(fvec4) Load 225(f32v1)
227: 222(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 226
Store 224(f32v2) 227
228: 222(fvec4) Load 225(f32v1)
229: 222(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 228
Store 224(f32v2) 229
230: 222(fvec4) Load 225(f32v1)
231: 222(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 230
Store 224(f32v2) 231
232: 222(fvec4) Load 225(f32v1)
233: 222(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 232
Store 224(f32v2) 233
234: 222(fvec4) Load 225(f32v1)
235: 222(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 234
Store 224(f32v2) 235
236: 222(fvec4) Load 225(f32v1)
237: 222(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 236
Store 224(f32v2) 237
238: 222(fvec4) Load 225(f32v1)
239: 222(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 238
Store 224(f32v2) 239
240: 222(fvec4) Load 225(f32v1)
241: 222(fvec4) Load 224(f32v2)
242: 222(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 240 241
Store 224(f32v2) 242
243: 222(fvec4) Load 225(f32v1)
244: 222(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 243
Store 224(f32v2) 244
245: 222(fvec4) Load 225(f32v1)
246: 222(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 245
Store 224(f32v2) 246
247: 222(fvec4) Load 225(f32v1)
248: 222(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 247
Store 224(f32v2) 248
249: 222(fvec4) Load 225(f32v1)
250: 222(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 249
Store 224(f32v2) 250
251: 222(fvec4) Load 225(f32v1)
252: 222(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 251
Store 224(f32v2) 252
253: 222(fvec4) Load 225(f32v1)
254: 222(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 253
Store 224(f32v2) 254
255: 222(fvec4) Load 225(f32v1)
256: 222(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 255
Store 224(f32v2) 256
226(f32v2): 225(ptr) Variable Function
227(f32v1): 225(ptr) Variable Function
228: 224(fvec4) Load 227(f32v1)
229: 224(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 228
Store 226(f32v2) 229
230: 224(fvec4) Load 227(f32v1)
231: 224(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 230
Store 226(f32v2) 231
232: 224(fvec4) Load 227(f32v1)
233: 224(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 232
Store 226(f32v2) 233
234: 224(fvec4) Load 227(f32v1)
235: 224(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 234
Store 226(f32v2) 235
236: 224(fvec4) Load 227(f32v1)
237: 224(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 236
Store 226(f32v2) 237
238: 224(fvec4) Load 227(f32v1)
239: 224(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 238
Store 226(f32v2) 239
240: 224(fvec4) Load 227(f32v1)
241: 224(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 240
Store 226(f32v2) 241
242: 224(fvec4) Load 227(f32v1)
243: 224(fvec4) Load 226(f32v2)
244: 224(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 242 243
Store 226(f32v2) 244
245: 224(fvec4) Load 227(f32v1)
246: 224(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 245
Store 226(f32v2) 246
247: 224(fvec4) Load 227(f32v1)
248: 224(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 247
Store 226(f32v2) 248
249: 224(fvec4) Load 227(f32v1)
250: 224(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 249
Store 226(f32v2) 250
251: 224(fvec4) Load 227(f32v1)
252: 224(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 251
Store 226(f32v2) 252
253: 224(fvec4) Load 227(f32v1)
254: 224(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 253
Store 226(f32v2) 254
255: 224(fvec4) Load 227(f32v1)
256: 224(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 255
Store 226(f32v2) 256
257: 224(fvec4) Load 227(f32v1)
258: 224(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 257
Store 226(f32v2) 258
Return
FunctionEnd
14(builtinExpFuncs(): 2 Function None 3
15: Label
257(f32v2): 28(ptr) Variable Function
258(f32v1): 28(ptr) Variable Function
259: 27(fvec2) Load 258(f32v1)
260: 27(fvec2) Load 257(f32v2)
261: 27(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 259 260
Store 257(f32v2) 261
262: 27(fvec2) Load 258(f32v1)
263: 27(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 262
Store 257(f32v2) 263
264: 27(fvec2) Load 258(f32v1)
265: 27(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 264
Store 257(f32v2) 265
266: 27(fvec2) Load 258(f32v1)
267: 27(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 266
Store 257(f32v2) 267
268: 27(fvec2) Load 258(f32v1)
269: 27(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 268
Store 257(f32v2) 269
270: 27(fvec2) Load 258(f32v1)
271: 27(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 270
Store 257(f32v2) 271
272: 27(fvec2) Load 258(f32v1)
273: 27(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 272
Store 257(f32v2) 273
259(f32v2): 28(ptr) Variable Function
260(f32v1): 28(ptr) Variable Function
261: 27(fvec2) Load 260(f32v1)
262: 27(fvec2) Load 259(f32v2)
263: 27(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 261 262
Store 259(f32v2) 263
264: 27(fvec2) Load 260(f32v1)
265: 27(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 264
Store 259(f32v2) 265
266: 27(fvec2) Load 260(f32v1)
267: 27(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 266
Store 259(f32v2) 267
268: 27(fvec2) Load 260(f32v1)
269: 27(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 268
Store 259(f32v2) 269
270: 27(fvec2) Load 260(f32v1)
271: 27(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 270
Store 259(f32v2) 271
272: 27(fvec2) Load 260(f32v1)
273: 27(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 272
Store 259(f32v2) 273
274: 27(fvec2) Load 260(f32v1)
275: 27(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 274
Store 259(f32v2) 275
Return
FunctionEnd
16(builtinCommonFuncs(): 2 Function None 3
17: Label
274(f32v2): 154(ptr) Variable Function
275(f32v1): 154(ptr) Variable Function
296(f32): 33(ptr) Variable Function
300(f32v3): 154(ptr) Variable Function
340(bv): 159(ptr) Variable Function
361(b): 108(ptr) Variable Function
371(iv): 194(ptr) Variable Function
276: 153(fvec3) Load 275(f32v1)
277: 153(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 276
Store 274(f32v2) 277
278: 153(fvec3) Load 275(f32v1)
279: 153(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 278
Store 274(f32v2) 279
280: 153(fvec3) Load 275(f32v1)
281: 153(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 280
Store 274(f32v2) 281
282: 153(fvec3) Load 275(f32v1)
283: 153(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 282
Store 274(f32v2) 283
284: 153(fvec3) Load 275(f32v1)
285: 153(fvec3) ExtInst 1(GLSL.std.450) 1(Round) 284
Store 274(f32v2) 285
286: 153(fvec3) Load 275(f32v1)
287: 153(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 286
Store 274(f32v2) 287
288: 153(fvec3) Load 275(f32v1)
289: 153(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 288
Store 274(f32v2) 289
290: 153(fvec3) Load 275(f32v1)
291: 153(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 290
Store 274(f32v2) 291
292: 153(fvec3) Load 275(f32v1)
293: 153(fvec3) Load 274(f32v2)
294: 153(fvec3) FMod 292 293
Store 274(f32v2) 294
295: 153(fvec3) Load 275(f32v1)
297: 26(float) Load 296(f32)
298: 153(fvec3) CompositeConstruct 297 297 297
299: 153(fvec3) FMod 295 298
Store 274(f32v2) 299
301: 153(fvec3) Load 275(f32v1)
302: 153(fvec3) ExtInst 1(GLSL.std.450) 35(Modf) 301 274(f32v2)
Store 300(f32v3) 302
303: 153(fvec3) Load 275(f32v1)
304: 153(fvec3) Load 274(f32v2)
305: 153(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 303 304
Store 300(f32v3) 305
306: 153(fvec3) Load 275(f32v1)
307: 26(float) Load 296(f32)
308: 153(fvec3) CompositeConstruct 307 307 307
309: 153(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 306 308
Store 300(f32v3) 309
310: 153(fvec3) Load 275(f32v1)
311: 153(fvec3) Load 274(f32v2)
312: 153(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 310 311
Store 300(f32v3) 312
313: 153(fvec3) Load 275(f32v1)
314: 26(float) Load 296(f32)
315: 153(fvec3) CompositeConstruct 314 314 314
316: 153(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 313 315
Store 300(f32v3) 316
317: 153(fvec3) Load 275(f32v1)
318: 26(float) Load 296(f32)
319: 33(ptr) AccessChain 274(f32v2) 32
320: 26(float) Load 319
321: 153(fvec3) CompositeConstruct 318 318 318
322: 153(fvec3) CompositeConstruct 320 320 320
323: 153(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 317 321 322
Store 300(f32v3) 323
324: 153(fvec3) Load 275(f32v1)
325: 153(fvec3) Load 274(f32v2)
326: 26(float) Load 296(f32)
327: 153(fvec3) CompositeConstruct 326 326 326
328: 153(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 324 325 327
Store 300(f32v3) 328
329: 153(fvec3) Load 275(f32v1)
330: 153(fvec3) Load 274(f32v2)
331: 26(float) Load 296(f32)
332: 153(fvec3) CompositeConstruct 331 331 331
333: 153(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 329 330 332
Store 300(f32v3) 333
334: 153(fvec3) Load 275(f32v1)
335: 153(fvec3) Load 274(f32v2)
336: 153(fvec3) Load 300(f32v3)
337: 153(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 334 335 336
Store 300(f32v3) 337
338: 153(fvec3) Load 275(f32v1)
339: 153(fvec3) Load 274(f32v2)
341: 158(bvec3) Load 340(bv)
342: 153(fvec3) Select 341 339 338
Store 300(f32v3) 342
343: 153(fvec3) Load 275(f32v1)
344: 153(fvec3) Load 274(f32v2)
345: 153(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 343 344
Store 300(f32v3) 345
346: 26(float) Load 296(f32)
347: 153(fvec3) Load 300(f32v3)
348: 153(fvec3) CompositeConstruct 346 346 346
349: 153(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 348 347
Store 300(f32v3) 349
350: 153(fvec3) Load 275(f32v1)
351: 153(fvec3) Load 274(f32v2)
352: 153(fvec3) Load 300(f32v3)
353: 153(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 350 351 352
Store 300(f32v3) 353
354: 26(float) Load 296(f32)
355: 33(ptr) AccessChain 275(f32v1) 32
356: 26(float) Load 355
357: 153(fvec3) Load 274(f32v2)
358: 153(fvec3) CompositeConstruct 354 354 354
359: 153(fvec3) CompositeConstruct 356 356 356
360: 153(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 358 359 357
Store 300(f32v3) 360
362: 26(float) Load 296(f32)
363: 107(bool) IsNan 362
Store 361(b) 363
364: 153(fvec3) Load 275(f32v1)
365: 158(bvec3) IsInf 364
Store 340(bv) 365
366: 153(fvec3) Load 275(f32v1)
367: 153(fvec3) Load 274(f32v2)
368: 153(fvec3) Load 300(f32v3)
369: 153(fvec3) ExtInst 1(GLSL.std.450) 50(Fma) 366 367 368
Store 300(f32v3) 369
370: 153(fvec3) Load 275(f32v1)
373:372(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 370
374: 193(ivec3) CompositeExtract 373 1
Store 371(iv) 374
375: 153(fvec3) CompositeExtract 373 0
Store 274(f32v2) 375
376: 153(fvec3) Load 275(f32v1)
377: 193(ivec3) Load 371(iv)
378: 153(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 376 377
Store 274(f32v2) 378
276(f32v2): 154(ptr) Variable Function
277(f32v1): 154(ptr) Variable Function
298(f32): 33(ptr) Variable Function
302(f32v3): 154(ptr) Variable Function
342(bv): 159(ptr) Variable Function
363(b): 108(ptr) Variable Function
373(iv): 194(ptr) Variable Function
278: 153(fvec3) Load 277(f32v1)
279: 153(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 278
Store 276(f32v2) 279
280: 153(fvec3) Load 277(f32v1)
281: 153(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 280
Store 276(f32v2) 281
282: 153(fvec3) Load 277(f32v1)
283: 153(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 282
Store 276(f32v2) 283
284: 153(fvec3) Load 277(f32v1)
285: 153(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 284
Store 276(f32v2) 285
286: 153(fvec3) Load 277(f32v1)
287: 153(fvec3) ExtInst 1(GLSL.std.450) 1(Round) 286
Store 276(f32v2) 287
288: 153(fvec3) Load 277(f32v1)
289: 153(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 288
Store 276(f32v2) 289
290: 153(fvec3) Load 277(f32v1)
291: 153(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 290
Store 276(f32v2) 291
292: 153(fvec3) Load 277(f32v1)
293: 153(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 292
Store 276(f32v2) 293
294: 153(fvec3) Load 277(f32v1)
295: 153(fvec3) Load 276(f32v2)
296: 153(fvec3) FMod 294 295
Store 276(f32v2) 296
297: 153(fvec3) Load 277(f32v1)
299: 26(float) Load 298(f32)
300: 153(fvec3) CompositeConstruct 299 299 299
301: 153(fvec3) FMod 297 300
Store 276(f32v2) 301
303: 153(fvec3) Load 277(f32v1)
304: 153(fvec3) ExtInst 1(GLSL.std.450) 35(Modf) 303 276(f32v2)
Store 302(f32v3) 304
305: 153(fvec3) Load 277(f32v1)
306: 153(fvec3) Load 276(f32v2)
307: 153(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 305 306
Store 302(f32v3) 307
308: 153(fvec3) Load 277(f32v1)
309: 26(float) Load 298(f32)
310: 153(fvec3) CompositeConstruct 309 309 309
311: 153(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 308 310
Store 302(f32v3) 311
312: 153(fvec3) Load 277(f32v1)
313: 153(fvec3) Load 276(f32v2)
314: 153(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 312 313
Store 302(f32v3) 314
315: 153(fvec3) Load 277(f32v1)
316: 26(float) Load 298(f32)
317: 153(fvec3) CompositeConstruct 316 316 316
318: 153(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 315 317
Store 302(f32v3) 318
319: 153(fvec3) Load 277(f32v1)
320: 26(float) Load 298(f32)
321: 33(ptr) AccessChain 276(f32v2) 32
322: 26(float) Load 321
323: 153(fvec3) CompositeConstruct 320 320 320
324: 153(fvec3) CompositeConstruct 322 322 322
325: 153(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 319 323 324
Store 302(f32v3) 325
326: 153(fvec3) Load 277(f32v1)
327: 153(fvec3) Load 276(f32v2)
328: 26(float) Load 298(f32)
329: 153(fvec3) CompositeConstruct 328 328 328
330: 153(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 326 327 329
Store 302(f32v3) 330
331: 153(fvec3) Load 277(f32v1)
332: 153(fvec3) Load 276(f32v2)
333: 26(float) Load 298(f32)
334: 153(fvec3) CompositeConstruct 333 333 333
335: 153(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 331 332 334
Store 302(f32v3) 335
336: 153(fvec3) Load 277(f32v1)
337: 153(fvec3) Load 276(f32v2)
338: 153(fvec3) Load 302(f32v3)
339: 153(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 336 337 338
Store 302(f32v3) 339
340: 153(fvec3) Load 277(f32v1)
341: 153(fvec3) Load 276(f32v2)
343: 158(bvec3) Load 342(bv)
344: 153(fvec3) Select 343 341 340
Store 302(f32v3) 344
345: 153(fvec3) Load 277(f32v1)
346: 153(fvec3) Load 276(f32v2)
347: 153(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 345 346
Store 302(f32v3) 347
348: 26(float) Load 298(f32)
349: 153(fvec3) Load 302(f32v3)
350: 153(fvec3) CompositeConstruct 348 348 348
351: 153(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 350 349
Store 302(f32v3) 351
352: 153(fvec3) Load 277(f32v1)
353: 153(fvec3) Load 276(f32v2)
354: 153(fvec3) Load 302(f32v3)
355: 153(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 352 353 354
Store 302(f32v3) 355
356: 26(float) Load 298(f32)
357: 33(ptr) AccessChain 277(f32v1) 32
358: 26(float) Load 357
359: 153(fvec3) Load 276(f32v2)
360: 153(fvec3) CompositeConstruct 356 356 356
361: 153(fvec3) CompositeConstruct 358 358 358
362: 153(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 360 361 359
Store 302(f32v3) 362
364: 26(float) Load 298(f32)
365: 107(bool) IsNan 364
Store 363(b) 365
366: 153(fvec3) Load 277(f32v1)
367: 158(bvec3) IsInf 366
Store 342(bv) 367
368: 153(fvec3) Load 277(f32v1)
369: 153(fvec3) Load 276(f32v2)
370: 153(fvec3) Load 302(f32v3)
371: 153(fvec3) ExtInst 1(GLSL.std.450) 50(Fma) 368 369 370
Store 302(f32v3) 371
372: 153(fvec3) Load 277(f32v1)
375:374(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 372
376: 193(ivec3) CompositeExtract 375 1
Store 373(iv) 376
377: 153(fvec3) CompositeExtract 375 0
Store 276(f32v2) 377
378: 153(fvec3) Load 277(f32v1)
379: 193(ivec3) Load 373(iv)
380: 153(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 378 379
Store 276(f32v2) 380
Return
FunctionEnd
18(builtinGeometryFuncs(): 2 Function None 3
19: Label
379(f32): 33(ptr) Variable Function
380(f32v1): 154(ptr) Variable Function
384(f32v2): 154(ptr) Variable Function
390(f32v3): 154(ptr) Variable Function
381: 153(fvec3) Load 380(f32v1)
382: 26(float) ExtInst 1(GLSL.std.450) 66(Length) 381
Store 379(f32) 382
383: 153(fvec3) Load 380(f32v1)
385: 153(fvec3) Load 384(f32v2)
386: 26(float) ExtInst 1(GLSL.std.450) 67(Distance) 383 385
Store 379(f32) 386
387: 153(fvec3) Load 380(f32v1)
388: 153(fvec3) Load 384(f32v2)
389: 26(float) Dot 387 388
Store 379(f32) 389
391: 153(fvec3) Load 380(f32v1)
392: 153(fvec3) Load 384(f32v2)
393: 153(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 391 392
Store 390(f32v3) 393
394: 153(fvec3) Load 380(f32v1)
395: 153(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 394
Store 384(f32v2) 395
396: 153(fvec3) Load 380(f32v1)
397: 153(fvec3) Load 384(f32v2)
398: 153(fvec3) Load 390(f32v3)
399: 153(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 396 397 398
Store 390(f32v3) 399
400: 153(fvec3) Load 380(f32v1)
401: 153(fvec3) Load 384(f32v2)
402: 153(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 400 401
Store 390(f32v3) 402
403: 153(fvec3) Load 380(f32v1)
404: 153(fvec3) Load 384(f32v2)
405: 26(float) Load 379(f32)
406: 153(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 403 404 405
Store 390(f32v3) 406
381(f32): 33(ptr) Variable Function
382(f32v1): 154(ptr) Variable Function
386(f32v2): 154(ptr) Variable Function
392(f32v3): 154(ptr) Variable Function
383: 153(fvec3) Load 382(f32v1)
384: 26(float) ExtInst 1(GLSL.std.450) 66(Length) 383
Store 381(f32) 384
385: 153(fvec3) Load 382(f32v1)
387: 153(fvec3) Load 386(f32v2)
388: 26(float) ExtInst 1(GLSL.std.450) 67(Distance) 385 387
Store 381(f32) 388
389: 153(fvec3) Load 382(f32v1)
390: 153(fvec3) Load 386(f32v2)
391: 26(float) Dot 389 390
Store 381(f32) 391
393: 153(fvec3) Load 382(f32v1)
394: 153(fvec3) Load 386(f32v2)
395: 153(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 393 394
Store 392(f32v3) 395
396: 153(fvec3) Load 382(f32v1)
397: 153(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 396
Store 386(f32v2) 397
398: 153(fvec3) Load 382(f32v1)
399: 153(fvec3) Load 386(f32v2)
400: 153(fvec3) Load 392(f32v3)
401: 153(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 398 399 400
Store 392(f32v3) 401
402: 153(fvec3) Load 382(f32v1)
403: 153(fvec3) Load 386(f32v2)
404: 153(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 402 403
Store 392(f32v3) 404
405: 153(fvec3) Load 382(f32v1)
406: 153(fvec3) Load 386(f32v2)
407: 26(float) Load 381(f32)
408: 153(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 405 406 407
Store 392(f32v3) 408
Return
FunctionEnd
20(builtinMatrixFuncs(): 2 Function None 3
21: Label
409(f32m3): 408(ptr) Variable Function
410(f32m1): 408(ptr) Variable Function
412(f32m2): 408(ptr) Variable Function
421(f32v1): 154(ptr) Variable Function
423(f32v2): 28(ptr) Variable Function
428(f32m4): 427(ptr) Variable Function
431(f32): 33(ptr) Variable Function
434(f32m5): 433(ptr) Variable Function
439(f32m6): 438(ptr) Variable Function
440(f32m7): 438(ptr) Variable Function
411: 407 Load 410(f32m1)
413: 407 Load 412(f32m2)
414: 153(fvec3) CompositeExtract 411 0
415: 153(fvec3) CompositeExtract 413 0
416: 153(fvec3) FMul 414 415
417: 153(fvec3) CompositeExtract 411 1
418: 153(fvec3) CompositeExtract 413 1
419: 153(fvec3) FMul 417 418
420: 407 CompositeConstruct 416 419
Store 409(f32m3) 420
422: 153(fvec3) Load 421(f32v1)
424: 27(fvec2) Load 423(f32v2)
425: 407 OuterProduct 422 424
Store 410(f32m1) 425
429: 407 Load 410(f32m1)
430: 426 Transpose 429
Store 428(f32m4) 430
435: 432 Load 434(f32m5)
436: 26(float) ExtInst 1(GLSL.std.450) 33(Determinant) 435
Store 431(f32) 436
441: 437 Load 440(f32m7)
442: 437 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 441
Store 439(f32m6) 442
411(f32m3): 410(ptr) Variable Function
412(f32m1): 410(ptr) Variable Function
414(f32m2): 410(ptr) Variable Function
423(f32v1): 154(ptr) Variable Function
425(f32v2): 28(ptr) Variable Function
430(f32m4): 429(ptr) Variable Function
433(f32): 33(ptr) Variable Function
436(f32m5): 435(ptr) Variable Function
441(f32m6): 440(ptr) Variable Function
442(f32m7): 440(ptr) Variable Function
413: 409 Load 412(f32m1)
415: 409 Load 414(f32m2)
416: 153(fvec3) CompositeExtract 413 0
417: 153(fvec3) CompositeExtract 415 0
418: 153(fvec3) FMul 416 417
419: 153(fvec3) CompositeExtract 413 1
420: 153(fvec3) CompositeExtract 415 1
421: 153(fvec3) FMul 419 420
422: 409 CompositeConstruct 418 421
Store 411(f32m3) 422
424: 153(fvec3) Load 423(f32v1)
426: 27(fvec2) Load 425(f32v2)
427: 409 OuterProduct 424 426
Store 412(f32m1) 427
431: 409 Load 412(f32m1)
432: 428 Transpose 431
Store 430(f32m4) 432
437: 434 Load 436(f32m5)
438: 26(float) ExtInst 1(GLSL.std.450) 33(Determinant) 437
Store 433(f32) 438
443: 439 Load 442(f32m7)
444: 439 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 443
Store 441(f32m6) 444
Return
FunctionEnd
22(builtinVecRelFuncs(): 2 Function None 3
23: Label
443(bv): 159(ptr) Variable Function
444(f32v1): 154(ptr) Variable Function
446(f32v2): 154(ptr) Variable Function
445: 153(fvec3) Load 444(f32v1)
447: 153(fvec3) Load 446(f32v2)
448: 158(bvec3) FOrdLessThan 445 447
Store 443(bv) 448
449: 153(fvec3) Load 444(f32v1)
450: 153(fvec3) Load 446(f32v2)
451: 158(bvec3) FOrdLessThanEqual 449 450
Store 443(bv) 451
452: 153(fvec3) Load 444(f32v1)
453: 153(fvec3) Load 446(f32v2)
454: 158(bvec3) FOrdGreaterThan 452 453
Store 443(bv) 454
455: 153(fvec3) Load 444(f32v1)
456: 153(fvec3) Load 446(f32v2)
457: 158(bvec3) FOrdGreaterThanEqual 455 456
Store 443(bv) 457
458: 153(fvec3) Load 444(f32v1)
459: 153(fvec3) Load 446(f32v2)
460: 158(bvec3) FOrdEqual 458 459
Store 443(bv) 460
461: 153(fvec3) Load 444(f32v1)
462: 153(fvec3) Load 446(f32v2)
463: 158(bvec3) FOrdNotEqual 461 462
Store 443(bv) 463
445(bv): 159(ptr) Variable Function
446(f32v1): 154(ptr) Variable Function
448(f32v2): 154(ptr) Variable Function
447: 153(fvec3) Load 446(f32v1)
449: 153(fvec3) Load 448(f32v2)
450: 158(bvec3) FOrdLessThan 447 449
Store 445(bv) 450
451: 153(fvec3) Load 446(f32v1)
452: 153(fvec3) Load 448(f32v2)
453: 158(bvec3) FOrdLessThanEqual 451 452
Store 445(bv) 453
454: 153(fvec3) Load 446(f32v1)
455: 153(fvec3) Load 448(f32v2)
456: 158(bvec3) FOrdGreaterThan 454 455
Store 445(bv) 456
457: 153(fvec3) Load 446(f32v1)
458: 153(fvec3) Load 448(f32v2)
459: 158(bvec3) FOrdGreaterThanEqual 457 458
Store 445(bv) 459
460: 153(fvec3) Load 446(f32v1)
461: 153(fvec3) Load 448(f32v2)
462: 158(bvec3) FOrdEqual 460 461
Store 445(bv) 462
463: 153(fvec3) Load 446(f32v1)
464: 153(fvec3) Load 448(f32v2)
465: 158(bvec3) FOrdNotEqual 463 464
Store 445(bv) 465
Return
FunctionEnd
24(builtinFragProcFuncs(): 2 Function None 3
25: Label
464(f32v): 154(ptr) Variable Function
468: 467(ptr) AccessChain 466(if32v) 32
469: 26(float) Load 468
470: 26(float) DPdx 469
471: 33(ptr) AccessChain 464(f32v) 32
Store 471 470
472: 467(ptr) AccessChain 466(if32v) 88
473: 26(float) Load 472
474: 26(float) DPdy 473
475: 33(ptr) AccessChain 464(f32v) 88
Store 475 474
476: 153(fvec3) Load 466(if32v)
477: 27(fvec2) VectorShuffle 476 476 0 1
478: 27(fvec2) DPdxFine 477
479: 153(fvec3) Load 464(f32v)
480: 153(fvec3) VectorShuffle 479 478 3 4 2
Store 464(f32v) 480
481: 153(fvec3) Load 466(if32v)
482: 27(fvec2) VectorShuffle 481 481 0 1
483: 27(fvec2) DPdyFine 482
484: 153(fvec3) Load 464(f32v)
485: 153(fvec3) VectorShuffle 484 483 3 4 2
Store 464(f32v) 485
486: 153(fvec3) Load 466(if32v)
487: 153(fvec3) DPdxCoarse 486
Store 464(f32v) 487
488: 153(fvec3) Load 466(if32v)
466(f32v): 154(ptr) Variable Function
470: 469(ptr) AccessChain 468(if32v) 32
471: 26(float) Load 470
472: 26(float) DPdx 471
473: 33(ptr) AccessChain 466(f32v) 32
Store 473 472
474: 469(ptr) AccessChain 468(if32v) 88
475: 26(float) Load 474
476: 26(float) DPdy 475
477: 33(ptr) AccessChain 466(f32v) 88
Store 477 476
478: 153(fvec3) Load 468(if32v)
479: 27(fvec2) VectorShuffle 478 478 0 1
480: 27(fvec2) DPdxFine 479
481: 153(fvec3) Load 466(f32v)
482: 153(fvec3) VectorShuffle 481 480 3 4 2
Store 466(f32v) 482
483: 153(fvec3) Load 468(if32v)
484: 27(fvec2) VectorShuffle 483 483 0 1
485: 27(fvec2) DPdyFine 484
486: 153(fvec3) Load 466(f32v)
487: 153(fvec3) VectorShuffle 486 485 3 4 2
Store 466(f32v) 487
488: 153(fvec3) Load 468(if32v)
489: 153(fvec3) DPdxCoarse 488
Store 464(f32v) 489
490: 467(ptr) AccessChain 466(if32v) 32
491: 26(float) Load 490
492: 26(float) Fwidth 491
493: 33(ptr) AccessChain 464(f32v) 32
Store 493 492
494: 153(fvec3) Load 466(if32v)
495: 27(fvec2) VectorShuffle 494 494 0 1
496: 27(fvec2) FwidthFine 495
497: 153(fvec3) Load 464(f32v)
498: 153(fvec3) VectorShuffle 497 496 3 4 2
Store 464(f32v) 498
499: 153(fvec3) Load 466(if32v)
500: 153(fvec3) FwidthCoarse 499
Store 464(f32v) 500
501: 467(ptr) AccessChain 466(if32v) 32
502: 26(float) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 501
503: 33(ptr) AccessChain 464(f32v) 32
Store 503 502
505: 153(fvec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 466(if32v) 504
506: 27(fvec2) VectorShuffle 505 505 0 1
507: 153(fvec3) Load 464(f32v)
508: 153(fvec3) VectorShuffle 507 506 3 4 2
Store 464(f32v) 508
511: 153(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 466(if32v) 510
Store 464(f32v) 511
Store 466(f32v) 489
490: 153(fvec3) Load 468(if32v)
491: 153(fvec3) DPdxCoarse 490
Store 466(f32v) 491
492: 469(ptr) AccessChain 468(if32v) 32
493: 26(float) Load 492
494: 26(float) Fwidth 493
495: 33(ptr) AccessChain 466(f32v) 32
Store 495 494
496: 153(fvec3) Load 468(if32v)
497: 27(fvec2) VectorShuffle 496 496 0 1
498: 27(fvec2) FwidthFine 497
499: 153(fvec3) Load 466(f32v)
500: 153(fvec3) VectorShuffle 499 498 3 4 2
Store 466(f32v) 500
501: 153(fvec3) Load 468(if32v)
502: 153(fvec3) FwidthCoarse 501
Store 466(f32v) 502
503: 469(ptr) AccessChain 468(if32v) 32
504: 26(float) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 503
505: 33(ptr) AccessChain 466(f32v) 32
Store 505 504
507: 153(fvec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 468(if32v) 506
508: 27(fvec2) VectorShuffle 507 507 0 1
509: 153(fvec3) Load 466(f32v)
510: 153(fvec3) VectorShuffle 509 508 3 4 2
Store 466(f32v) 510
513: 153(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 468(if32v) 512
Store 466(f32v) 513
Return
FunctionEnd
spv.float64.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 519
// Id's are bound by 521
Capability Shader
Capability Float16
......@@ -15,7 +15,7 @@ spv.float64.frag
Extension "SPV_AMD_gpu_shader_int16"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 456
EntryPoint Fragment 4 "main" 458
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_KHX_shader_explicit_arithmetic_types"
......@@ -50,81 +50,81 @@ spv.float64.frag
Name 185 "i32v"
Name 191 "i64v"
Name 194 "u8v"
Name 198 "u16v"
Name 203 "u32v"
Name 209 "u64v"
Name 214 "f64v2"
Name 215 "f64v1"
Name 247 "f64v2"
Name 248 "f64v1"
Name 264 "f64v2"
Name 265 "f64v1"
Name 286 "f64"
Name 290 "f64v3"
Name 330 "bv"
Name 351 "b"
Name 361 "iv"
Name 362 "ResType"
Name 369 "f64"
Name 370 "f64v1"
Name 374 "f64v2"
Name 380 "f64v3"
Name 399 "f64m3"
Name 400 "f64m1"
Name 402 "f64m2"
Name 411 "f64v1"
Name 413 "f64v2"
Name 418 "f64m4"
Name 421 "f64"
Name 424 "f64m5"
Name 429 "f64m6"
Name 430 "f64m7"
Name 433 "bv"
Name 434 "f64v1"
Name 436 "f64v2"
Name 454 "f64v"
Name 456 "if64v"
Name 505 "S"
MemberName 505(S) 0 "x"
MemberName 505(S) 1 "y"
MemberName 505(S) 2 "z"
Name 507 "B1"
MemberName 507(B1) 0 "a"
MemberName 507(B1) 1 "b"
MemberName 507(B1) 2 "c"
MemberName 507(B1) 3 "d"
MemberName 507(B1) 4 "e"
MemberName 507(B1) 5 "f"
MemberName 507(B1) 6 "g"
MemberName 507(B1) 7 "h"
Name 509 ""
Name 510 "sf16"
Name 512 "sf"
Name 513 "sd"
Decorate 456(if64v) Flat
Decorate 503 ArrayStride 16
Decorate 504 ArrayStride 64
MemberDecorate 505(S) 0 Offset 0
MemberDecorate 505(S) 1 Offset 16
MemberDecorate 505(S) 2 Offset 32
Name 200 "u16v"
Name 205 "u32v"
Name 211 "u64v"
Name 216 "f64v2"
Name 217 "f64v1"
Name 249 "f64v2"
Name 250 "f64v1"
Name 266 "f64v2"
Name 267 "f64v1"
Name 288 "f64"
Name 292 "f64v3"
Name 332 "bv"
Name 353 "b"
Name 363 "iv"
Name 364 "ResType"
Name 371 "f64"
Name 372 "f64v1"
Name 376 "f64v2"
Name 382 "f64v3"
Name 401 "f64m3"
Name 402 "f64m1"
Name 404 "f64m2"
Name 413 "f64v1"
Name 415 "f64v2"
Name 420 "f64m4"
Name 423 "f64"
Name 426 "f64m5"
Name 431 "f64m6"
Name 432 "f64m7"
Name 435 "bv"
Name 436 "f64v1"
Name 438 "f64v2"
Name 456 "f64v"
Name 458 "if64v"
Name 507 "S"
MemberName 507(S) 0 "x"
MemberName 507(S) 1 "y"
MemberName 507(S) 2 "z"
Name 509 "B1"
MemberName 509(B1) 0 "a"
MemberName 509(B1) 1 "b"
MemberName 509(B1) 2 "c"
MemberName 509(B1) 3 "d"
MemberName 509(B1) 4 "e"
MemberName 509(B1) 5 "f"
MemberName 509(B1) 6 "g"
MemberName 509(B1) 7 "h"
Name 511 ""
Name 512 "sf16"
Name 514 "sf"
Name 515 "sd"
Decorate 458(if64v) Flat
Decorate 505 ArrayStride 16
Decorate 506 ArrayStride 64
MemberDecorate 507(B1) 0 Offset 0
MemberDecorate 507(B1) 1 Offset 16
MemberDecorate 507(B1) 2 Offset 32
MemberDecorate 507(B1) 3 Offset 64
MemberDecorate 507(B1) 4 ColMajor
MemberDecorate 507(B1) 4 Offset 96
MemberDecorate 507(B1) 4 MatrixStride 32
MemberDecorate 507(B1) 5 ColMajor
MemberDecorate 507(B1) 5 Offset 160
MemberDecorate 507(B1) 5 MatrixStride 32
MemberDecorate 507(B1) 6 Offset 288
MemberDecorate 507(B1) 7 Offset 352
Decorate 507(B1) Block
Decorate 509 DescriptorSet 0
Decorate 510(sf16) SpecId 100
Decorate 512(sf) SpecId 101
Decorate 513(sd) SpecId 102
MemberDecorate 507(S) 0 Offset 0
MemberDecorate 507(S) 1 Offset 16
MemberDecorate 507(S) 2 Offset 32
Decorate 508 ArrayStride 64
MemberDecorate 509(B1) 0 Offset 0
MemberDecorate 509(B1) 1 Offset 16
MemberDecorate 509(B1) 2 Offset 32
MemberDecorate 509(B1) 3 Offset 64
MemberDecorate 509(B1) 4 ColMajor
MemberDecorate 509(B1) 4 Offset 96
MemberDecorate 509(B1) 4 MatrixStride 32
MemberDecorate 509(B1) 5 ColMajor
MemberDecorate 509(B1) 5 Offset 160
MemberDecorate 509(B1) 5 MatrixStride 32
MemberDecorate 509(B1) 6 Offset 288
MemberDecorate 509(B1) 7 Offset 352
Decorate 509(B1) Block
Decorate 511 DescriptorSet 0
Decorate 512(sf16) SpecId 100
Decorate 514(sf) SpecId 101
Decorate 515(sd) SpecId 102
2: TypeVoid
3: TypeFunction 2
26: TypeFloat 64
......@@ -166,45 +166,47 @@ spv.float64.frag
189: TypeVector 188(int) 3
190: TypePointer Function 189(ivec3)
197: TypeInt 16 0
201: TypeVector 31(int) 3
202: TypePointer Function 201(ivec3)
206: TypeInt 64 0
207: TypeVector 206(int) 3
208: TypePointer Function 207(ivec3)
212: TypeVector 26(float) 4
213: TypePointer Function 212(fvec4)
362(ResType): TypeStruct 149(fvec3) 183(ivec3)
397: TypeMatrix 149(fvec3) 2
398: TypePointer Function 397
416: TypeMatrix 27(fvec2) 3
417: TypePointer Function 416
422: TypeMatrix 149(fvec3) 3
423: TypePointer Function 422
427: TypeMatrix 212(fvec4) 4
428: TypePointer Function 427
455: TypePointer Input 149(fvec3)
456(if64v): 455(ptr) Variable Input
457: TypePointer Input 26(float)
494: 182(int) Constant 1
499: 26(float) Constant 0 1071644672
500: 27(fvec2) ConstantComposite 499 499
502: 31(int) Constant 2
503: TypeArray 26(float) 502
504: TypeArray 397 502
505(S): TypeStruct 26(float) 27(fvec2) 149(fvec3)
506: TypeArray 505(S) 502
507(B1): TypeStruct 26(float) 27(fvec2) 149(fvec3) 503 397 504 505(S) 506
508: TypePointer Uniform 507(B1)
509: 508(ptr) Variable Uniform
510(sf16): 162(float) SpecConstant 12288
511: TypeFloat 32
512(sf): 511(float) SpecConstant 1048576000
513(sd): 26(float) SpecConstant 0 1071644672
514: 511(float) SpecConstantOp 115 510(sf16)
515: 511(float) SpecConstantOp 115 510(sf16)
516: 26(float) SpecConstantOp 115 515
517: 162(float) SpecConstantOp 115 512(sf)
518: 162(float) SpecConstantOp 115 513(sd)
198: TypeVector 197(int) 3
199: TypePointer Function 198(ivec3)
203: TypeVector 31(int) 3
204: TypePointer Function 203(ivec3)
208: TypeInt 64 0
209: TypeVector 208(int) 3
210: TypePointer Function 209(ivec3)
214: TypeVector 26(float) 4
215: TypePointer Function 214(fvec4)
364(ResType): TypeStruct 149(fvec3) 183(ivec3)
399: TypeMatrix 149(fvec3) 2
400: TypePointer Function 399
418: TypeMatrix 27(fvec2) 3
419: TypePointer Function 418
424: TypeMatrix 149(fvec3) 3
425: TypePointer Function 424
429: TypeMatrix 214(fvec4) 4
430: TypePointer Function 429
457: TypePointer Input 149(fvec3)
458(if64v): 457(ptr) Variable Input
459: TypePointer Input 26(float)
496: 182(int) Constant 1
501: 26(float) Constant 0 1071644672
502: 27(fvec2) ConstantComposite 501 501
504: 31(int) Constant 2
505: TypeArray 26(float) 504
506: TypeArray 399 504
507(S): TypeStruct 26(float) 27(fvec2) 149(fvec3)
508: TypeArray 507(S) 504
509(B1): TypeStruct 26(float) 27(fvec2) 149(fvec3) 505 399 506 507(S) 508
510: TypePointer Uniform 509(B1)
511: 510(ptr) Variable Uniform
512(sf16): 162(float) SpecConstant 12288
513: TypeFloat 32
514(sf): 513(float) SpecConstant 1048576000
515(sd): 26(float) SpecConstant 0 1071644672
516: 513(float) SpecConstantOp 115 512(sf16)
517: 513(float) SpecConstantOp 115 512(sf16)
518: 26(float) SpecConstantOp 115 517
519: 162(float) SpecConstantOp 115 514(sf)
520: 162(float) SpecConstantOp 115 515(sd)
4(main): 2 Function None 3
5: Label
Return
......@@ -361,9 +363,9 @@ spv.float64.frag
185(i32v): 184(ptr) Variable Function
191(i64v): 190(ptr) Variable Function
194(u8v): 172(ptr) Variable Function
198(u16v): 184(ptr) Variable Function
203(u32v): 202(ptr) Variable Function
209(u64v): 208(ptr) Variable Function
200(u16v): 199(ptr) Variable Function
205(u32v): 204(ptr) Variable Function
211(u64v): 210(ptr) Variable Function
155: 152(bvec3) Load 154(bv)
159: 149(fvec3) Select 155 158 157
Store 151(f64v) 159
......@@ -391,398 +393,398 @@ spv.float64.frag
195: 149(fvec3) Load 151(f64v)
196: 171(ivec3) ConvertFToS 195
Store 194(u8v) 196
199: 149(fvec3) Load 151(f64v)
200: 183(ivec3) ConvertFToU 199
Store 198(u16v) 200
204: 149(fvec3) Load 151(f64v)
205: 201(ivec3) ConvertFToU 204
Store 203(u32v) 205
210: 149(fvec3) Load 151(f64v)
211: 207(ivec3) ConvertFToU 210
Store 209(u64v) 211
201: 149(fvec3) Load 151(f64v)
202: 198(ivec3) ConvertFToU 201
Store 200(u16v) 202
206: 149(fvec3) Load 151(f64v)
207: 203(ivec3) ConvertFToU 206
Store 205(u32v) 207
212: 149(fvec3) Load 151(f64v)
213: 209(ivec3) ConvertFToU 212
Store 211(u64v) 213
Return
FunctionEnd
12(builtinAngleTrigFuncs(): 2 Function None 3
13: Label
214(f64v2): 213(ptr) Variable Function
215(f64v1): 213(ptr) Variable Function
216: 212(fvec4) Load 215(f64v1)
217: 212(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 216
Store 214(f64v2) 217
218: 212(fvec4) Load 215(f64v1)
219: 212(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 218
Store 214(f64v2) 219
220: 212(fvec4) Load 215(f64v1)
221: 212(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 220
Store 214(f64v2) 221
222: 212(fvec4) Load 215(f64v1)
223: 212(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 222
Store 214(f64v2) 223
224: 212(fvec4) Load 215(f64v1)
225: 212(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 224
Store 214(f64v2) 225
226: 212(fvec4) Load 215(f64v1)
227: 212(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 226
Store 214(f64v2) 227
228: 212(fvec4) Load 215(f64v1)
229: 212(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 228
Store 214(f64v2) 229
230: 212(fvec4) Load 215(f64v1)
231: 212(fvec4) Load 214(f64v2)
232: 212(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 230 231
Store 214(f64v2) 232
233: 212(fvec4) Load 215(f64v1)
234: 212(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 233
Store 214(f64v2) 234
235: 212(fvec4) Load 215(f64v1)
236: 212(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 235
Store 214(f64v2) 236
237: 212(fvec4) Load 215(f64v1)
238: 212(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 237
Store 214(f64v2) 238
239: 212(fvec4) Load 215(f64v1)
240: 212(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 239
Store 214(f64v2) 240
241: 212(fvec4) Load 215(f64v1)
242: 212(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 241
Store 214(f64v2) 242
243: 212(fvec4) Load 215(f64v1)
244: 212(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 243
Store 214(f64v2) 244
245: 212(fvec4) Load 215(f64v1)
246: 212(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 245
Store 214(f64v2) 246
216(f64v2): 215(ptr) Variable Function
217(f64v1): 215(ptr) Variable Function
218: 214(fvec4) Load 217(f64v1)
219: 214(fvec4) ExtInst 1(GLSL.std.450) 11(Radians) 218
Store 216(f64v2) 219
220: 214(fvec4) Load 217(f64v1)
221: 214(fvec4) ExtInst 1(GLSL.std.450) 12(Degrees) 220
Store 216(f64v2) 221
222: 214(fvec4) Load 217(f64v1)
223: 214(fvec4) ExtInst 1(GLSL.std.450) 13(Sin) 222
Store 216(f64v2) 223
224: 214(fvec4) Load 217(f64v1)
225: 214(fvec4) ExtInst 1(GLSL.std.450) 14(Cos) 224
Store 216(f64v2) 225
226: 214(fvec4) Load 217(f64v1)
227: 214(fvec4) ExtInst 1(GLSL.std.450) 15(Tan) 226
Store 216(f64v2) 227
228: 214(fvec4) Load 217(f64v1)
229: 214(fvec4) ExtInst 1(GLSL.std.450) 16(Asin) 228
Store 216(f64v2) 229
230: 214(fvec4) Load 217(f64v1)
231: 214(fvec4) ExtInst 1(GLSL.std.450) 17(Acos) 230
Store 216(f64v2) 231
232: 214(fvec4) Load 217(f64v1)
233: 214(fvec4) Load 216(f64v2)
234: 214(fvec4) ExtInst 1(GLSL.std.450) 25(Atan2) 232 233
Store 216(f64v2) 234
235: 214(fvec4) Load 217(f64v1)
236: 214(fvec4) ExtInst 1(GLSL.std.450) 18(Atan) 235
Store 216(f64v2) 236
237: 214(fvec4) Load 217(f64v1)
238: 214(fvec4) ExtInst 1(GLSL.std.450) 19(Sinh) 237
Store 216(f64v2) 238
239: 214(fvec4) Load 217(f64v1)
240: 214(fvec4) ExtInst 1(GLSL.std.450) 20(Cosh) 239
Store 216(f64v2) 240
241: 214(fvec4) Load 217(f64v1)
242: 214(fvec4) ExtInst 1(GLSL.std.450) 21(Tanh) 241
Store 216(f64v2) 242
243: 214(fvec4) Load 217(f64v1)
244: 214(fvec4) ExtInst 1(GLSL.std.450) 22(Asinh) 243
Store 216(f64v2) 244
245: 214(fvec4) Load 217(f64v1)
246: 214(fvec4) ExtInst 1(GLSL.std.450) 23(Acosh) 245
Store 216(f64v2) 246
247: 214(fvec4) Load 217(f64v1)
248: 214(fvec4) ExtInst 1(GLSL.std.450) 24(Atanh) 247
Store 216(f64v2) 248
Return
FunctionEnd
14(builtinExpFuncs(): 2 Function None 3
15: Label
247(f64v2): 28(ptr) Variable Function
248(f64v1): 28(ptr) Variable Function
249: 27(fvec2) Load 248(f64v1)
250: 27(fvec2) Load 247(f64v2)
251: 27(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 249 250
Store 247(f64v2) 251
252: 27(fvec2) Load 248(f64v1)
253: 27(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 252
Store 247(f64v2) 253
254: 27(fvec2) Load 248(f64v1)
255: 27(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 254
Store 247(f64v2) 255
256: 27(fvec2) Load 248(f64v1)
257: 27(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 256
Store 247(f64v2) 257
258: 27(fvec2) Load 248(f64v1)
259: 27(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 258
Store 247(f64v2) 259
260: 27(fvec2) Load 248(f64v1)
261: 27(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 260
Store 247(f64v2) 261
262: 27(fvec2) Load 248(f64v1)
263: 27(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 262
Store 247(f64v2) 263
249(f64v2): 28(ptr) Variable Function
250(f64v1): 28(ptr) Variable Function
251: 27(fvec2) Load 250(f64v1)
252: 27(fvec2) Load 249(f64v2)
253: 27(fvec2) ExtInst 1(GLSL.std.450) 26(Pow) 251 252
Store 249(f64v2) 253
254: 27(fvec2) Load 250(f64v1)
255: 27(fvec2) ExtInst 1(GLSL.std.450) 27(Exp) 254
Store 249(f64v2) 255
256: 27(fvec2) Load 250(f64v1)
257: 27(fvec2) ExtInst 1(GLSL.std.450) 28(Log) 256
Store 249(f64v2) 257
258: 27(fvec2) Load 250(f64v1)
259: 27(fvec2) ExtInst 1(GLSL.std.450) 29(Exp2) 258
Store 249(f64v2) 259
260: 27(fvec2) Load 250(f64v1)
261: 27(fvec2) ExtInst 1(GLSL.std.450) 30(Log2) 260
Store 249(f64v2) 261
262: 27(fvec2) Load 250(f64v1)
263: 27(fvec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 262
Store 249(f64v2) 263
264: 27(fvec2) Load 250(f64v1)
265: 27(fvec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 264
Store 249(f64v2) 265
Return
FunctionEnd
16(builtinCommonFuncs(): 2 Function None 3
17: Label
264(f64v2): 150(ptr) Variable Function
265(f64v1): 150(ptr) Variable Function
286(f64): 33(ptr) Variable Function
290(f64v3): 150(ptr) Variable Function
330(bv): 153(ptr) Variable Function
351(b): 108(ptr) Variable Function
361(iv): 184(ptr) Variable Function
266: 149(fvec3) Load 265(f64v1)
267: 149(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 266
Store 264(f64v2) 267
268: 149(fvec3) Load 265(f64v1)
269: 149(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 268
Store 264(f64v2) 269
270: 149(fvec3) Load 265(f64v1)
271: 149(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 270
Store 264(f64v2) 271
272: 149(fvec3) Load 265(f64v1)
273: 149(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 272
Store 264(f64v2) 273
274: 149(fvec3) Load 265(f64v1)
275: 149(fvec3) ExtInst 1(GLSL.std.450) 1(Round) 274
Store 264(f64v2) 275
276: 149(fvec3) Load 265(f64v1)
277: 149(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 276
Store 264(f64v2) 277
278: 149(fvec3) Load 265(f64v1)
279: 149(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 278
Store 264(f64v2) 279
280: 149(fvec3) Load 265(f64v1)
281: 149(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 280
Store 264(f64v2) 281
282: 149(fvec3) Load 265(f64v1)
283: 149(fvec3) Load 264(f64v2)
284: 149(fvec3) FMod 282 283
Store 264(f64v2) 284
285: 149(fvec3) Load 265(f64v1)
287: 26(float) Load 286(f64)
288: 149(fvec3) CompositeConstruct 287 287 287
289: 149(fvec3) FMod 285 288
Store 264(f64v2) 289
291: 149(fvec3) Load 265(f64v1)
292: 149(fvec3) ExtInst 1(GLSL.std.450) 35(Modf) 291 264(f64v2)
Store 290(f64v3) 292
293: 149(fvec3) Load 265(f64v1)
294: 149(fvec3) Load 264(f64v2)
295: 149(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 293 294
Store 290(f64v3) 295
296: 149(fvec3) Load 265(f64v1)
297: 26(float) Load 286(f64)
298: 149(fvec3) CompositeConstruct 297 297 297
299: 149(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 296 298
Store 290(f64v3) 299
300: 149(fvec3) Load 265(f64v1)
301: 149(fvec3) Load 264(f64v2)
302: 149(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 300 301
Store 290(f64v3) 302
303: 149(fvec3) Load 265(f64v1)
304: 26(float) Load 286(f64)
305: 149(fvec3) CompositeConstruct 304 304 304
306: 149(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 303 305
Store 290(f64v3) 306
307: 149(fvec3) Load 265(f64v1)
308: 26(float) Load 286(f64)
309: 33(ptr) AccessChain 264(f64v2) 32
310: 26(float) Load 309
311: 149(fvec3) CompositeConstruct 308 308 308
312: 149(fvec3) CompositeConstruct 310 310 310
313: 149(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 307 311 312
Store 290(f64v3) 313
314: 149(fvec3) Load 265(f64v1)
315: 149(fvec3) Load 264(f64v2)
316: 26(float) Load 286(f64)
317: 149(fvec3) CompositeConstruct 316 316 316
318: 149(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 314 315 317
Store 290(f64v3) 318
319: 149(fvec3) Load 265(f64v1)
320: 149(fvec3) Load 264(f64v2)
321: 26(float) Load 286(f64)
322: 149(fvec3) CompositeConstruct 321 321 321
323: 149(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 319 320 322
Store 290(f64v3) 323
324: 149(fvec3) Load 265(f64v1)
325: 149(fvec3) Load 264(f64v2)
326: 149(fvec3) Load 290(f64v3)
327: 149(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 324 325 326
Store 290(f64v3) 327
328: 149(fvec3) Load 265(f64v1)
329: 149(fvec3) Load 264(f64v2)
331: 152(bvec3) Load 330(bv)
332: 149(fvec3) Select 331 329 328
Store 290(f64v3) 332
333: 149(fvec3) Load 265(f64v1)
334: 149(fvec3) Load 264(f64v2)
335: 149(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 333 334
Store 290(f64v3) 335
336: 26(float) Load 286(f64)
337: 149(fvec3) Load 290(f64v3)
338: 149(fvec3) CompositeConstruct 336 336 336
339: 149(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 338 337
Store 290(f64v3) 339
340: 149(fvec3) Load 265(f64v1)
341: 149(fvec3) Load 264(f64v2)
342: 149(fvec3) Load 290(f64v3)
343: 149(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 340 341 342
Store 290(f64v3) 343
344: 26(float) Load 286(f64)
345: 33(ptr) AccessChain 265(f64v1) 32
346: 26(float) Load 345
347: 149(fvec3) Load 264(f64v2)
348: 149(fvec3) CompositeConstruct 344 344 344
349: 149(fvec3) CompositeConstruct 346 346 346
350: 149(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 348 349 347
Store 290(f64v3) 350
352: 26(float) Load 286(f64)
353: 107(bool) IsNan 352
Store 351(b) 353
354: 149(fvec3) Load 265(f64v1)
355: 152(bvec3) IsInf 354
Store 330(bv) 355
356: 149(fvec3) Load 265(f64v1)
357: 149(fvec3) Load 264(f64v2)
358: 149(fvec3) Load 290(f64v3)
359: 149(fvec3) ExtInst 1(GLSL.std.450) 50(Fma) 356 357 358
Store 290(f64v3) 359
360: 149(fvec3) Load 265(f64v1)
363:362(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 360
364: 183(ivec3) CompositeExtract 363 1
Store 361(iv) 364
365: 149(fvec3) CompositeExtract 363 0
Store 264(f64v2) 365
366: 149(fvec3) Load 265(f64v1)
367: 183(ivec3) Load 361(iv)
368: 149(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 366 367
Store 264(f64v2) 368
266(f64v2): 150(ptr) Variable Function
267(f64v1): 150(ptr) Variable Function
288(f64): 33(ptr) Variable Function
292(f64v3): 150(ptr) Variable Function
332(bv): 153(ptr) Variable Function
353(b): 108(ptr) Variable Function
363(iv): 184(ptr) Variable Function
268: 149(fvec3) Load 267(f64v1)
269: 149(fvec3) ExtInst 1(GLSL.std.450) 4(FAbs) 268
Store 266(f64v2) 269
270: 149(fvec3) Load 267(f64v1)
271: 149(fvec3) ExtInst 1(GLSL.std.450) 6(FSign) 270
Store 266(f64v2) 271
272: 149(fvec3) Load 267(f64v1)
273: 149(fvec3) ExtInst 1(GLSL.std.450) 8(Floor) 272
Store 266(f64v2) 273
274: 149(fvec3) Load 267(f64v1)
275: 149(fvec3) ExtInst 1(GLSL.std.450) 3(Trunc) 274
Store 266(f64v2) 275
276: 149(fvec3) Load 267(f64v1)
277: 149(fvec3) ExtInst 1(GLSL.std.450) 1(Round) 276
Store 266(f64v2) 277
278: 149(fvec3) Load 267(f64v1)
279: 149(fvec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 278
Store 266(f64v2) 279
280: 149(fvec3) Load 267(f64v1)
281: 149(fvec3) ExtInst 1(GLSL.std.450) 9(Ceil) 280
Store 266(f64v2) 281
282: 149(fvec3) Load 267(f64v1)
283: 149(fvec3) ExtInst 1(GLSL.std.450) 10(Fract) 282
Store 266(f64v2) 283
284: 149(fvec3) Load 267(f64v1)
285: 149(fvec3) Load 266(f64v2)
286: 149(fvec3) FMod 284 285
Store 266(f64v2) 286
287: 149(fvec3) Load 267(f64v1)
289: 26(float) Load 288(f64)
290: 149(fvec3) CompositeConstruct 289 289 289
291: 149(fvec3) FMod 287 290
Store 266(f64v2) 291
293: 149(fvec3) Load 267(f64v1)
294: 149(fvec3) ExtInst 1(GLSL.std.450) 35(Modf) 293 266(f64v2)
Store 292(f64v3) 294
295: 149(fvec3) Load 267(f64v1)
296: 149(fvec3) Load 266(f64v2)
297: 149(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 295 296
Store 292(f64v3) 297
298: 149(fvec3) Load 267(f64v1)
299: 26(float) Load 288(f64)
300: 149(fvec3) CompositeConstruct 299 299 299
301: 149(fvec3) ExtInst 1(GLSL.std.450) 37(FMin) 298 300
Store 292(f64v3) 301
302: 149(fvec3) Load 267(f64v1)
303: 149(fvec3) Load 266(f64v2)
304: 149(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 302 303
Store 292(f64v3) 304
305: 149(fvec3) Load 267(f64v1)
306: 26(float) Load 288(f64)
307: 149(fvec3) CompositeConstruct 306 306 306
308: 149(fvec3) ExtInst 1(GLSL.std.450) 40(FMax) 305 307
Store 292(f64v3) 308
309: 149(fvec3) Load 267(f64v1)
310: 26(float) Load 288(f64)
311: 33(ptr) AccessChain 266(f64v2) 32
312: 26(float) Load 311
313: 149(fvec3) CompositeConstruct 310 310 310
314: 149(fvec3) CompositeConstruct 312 312 312
315: 149(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 309 313 314
Store 292(f64v3) 315
316: 149(fvec3) Load 267(f64v1)
317: 149(fvec3) Load 266(f64v2)
318: 26(float) Load 288(f64)
319: 149(fvec3) CompositeConstruct 318 318 318
320: 149(fvec3) ExtInst 1(GLSL.std.450) 43(FClamp) 316 317 319
Store 292(f64v3) 320
321: 149(fvec3) Load 267(f64v1)
322: 149(fvec3) Load 266(f64v2)
323: 26(float) Load 288(f64)
324: 149(fvec3) CompositeConstruct 323 323 323
325: 149(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 321 322 324
Store 292(f64v3) 325
326: 149(fvec3) Load 267(f64v1)
327: 149(fvec3) Load 266(f64v2)
328: 149(fvec3) Load 292(f64v3)
329: 149(fvec3) ExtInst 1(GLSL.std.450) 46(FMix) 326 327 328
Store 292(f64v3) 329
330: 149(fvec3) Load 267(f64v1)
331: 149(fvec3) Load 266(f64v2)
333: 152(bvec3) Load 332(bv)
334: 149(fvec3) Select 333 331 330
Store 292(f64v3) 334
335: 149(fvec3) Load 267(f64v1)
336: 149(fvec3) Load 266(f64v2)
337: 149(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 335 336
Store 292(f64v3) 337
338: 26(float) Load 288(f64)
339: 149(fvec3) Load 292(f64v3)
340: 149(fvec3) CompositeConstruct 338 338 338
341: 149(fvec3) ExtInst 1(GLSL.std.450) 48(Step) 340 339
Store 292(f64v3) 341
342: 149(fvec3) Load 267(f64v1)
343: 149(fvec3) Load 266(f64v2)
344: 149(fvec3) Load 292(f64v3)
345: 149(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 342 343 344
Store 292(f64v3) 345
346: 26(float) Load 288(f64)
347: 33(ptr) AccessChain 267(f64v1) 32
348: 26(float) Load 347
349: 149(fvec3) Load 266(f64v2)
350: 149(fvec3) CompositeConstruct 346 346 346
351: 149(fvec3) CompositeConstruct 348 348 348
352: 149(fvec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 350 351 349
Store 292(f64v3) 352
354: 26(float) Load 288(f64)
355: 107(bool) IsNan 354
Store 353(b) 355
356: 149(fvec3) Load 267(f64v1)
357: 152(bvec3) IsInf 356
Store 332(bv) 357
358: 149(fvec3) Load 267(f64v1)
359: 149(fvec3) Load 266(f64v2)
360: 149(fvec3) Load 292(f64v3)
361: 149(fvec3) ExtInst 1(GLSL.std.450) 50(Fma) 358 359 360
Store 292(f64v3) 361
362: 149(fvec3) Load 267(f64v1)
365:364(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 362
366: 183(ivec3) CompositeExtract 365 1
Store 363(iv) 366
367: 149(fvec3) CompositeExtract 365 0
Store 266(f64v2) 367
368: 149(fvec3) Load 267(f64v1)
369: 183(ivec3) Load 363(iv)
370: 149(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 368 369
Store 266(f64v2) 370
Return
FunctionEnd
18(builtinGeometryFuncs(): 2 Function None 3
19: Label
369(f64): 33(ptr) Variable Function
370(f64v1): 150(ptr) Variable Function
374(f64v2): 150(ptr) Variable Function
380(f64v3): 150(ptr) Variable Function
371: 149(fvec3) Load 370(f64v1)
372: 26(float) ExtInst 1(GLSL.std.450) 66(Length) 371
Store 369(f64) 372
373: 149(fvec3) Load 370(f64v1)
375: 149(fvec3) Load 374(f64v2)
376: 26(float) ExtInst 1(GLSL.std.450) 67(Distance) 373 375
Store 369(f64) 376
377: 149(fvec3) Load 370(f64v1)
378: 149(fvec3) Load 374(f64v2)
379: 26(float) Dot 377 378
Store 369(f64) 379
381: 149(fvec3) Load 370(f64v1)
382: 149(fvec3) Load 374(f64v2)
383: 149(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 381 382
Store 380(f64v3) 383
384: 149(fvec3) Load 370(f64v1)
385: 149(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 384
Store 374(f64v2) 385
386: 149(fvec3) Load 370(f64v1)
387: 149(fvec3) Load 374(f64v2)
388: 149(fvec3) Load 380(f64v3)
389: 149(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 386 387 388
Store 380(f64v3) 389
390: 149(fvec3) Load 370(f64v1)
391: 149(fvec3) Load 374(f64v2)
392: 149(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 390 391
Store 380(f64v3) 392
393: 149(fvec3) Load 370(f64v1)
394: 149(fvec3) Load 374(f64v2)
395: 26(float) Load 369(f64)
396: 149(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 393 394 395
Store 380(f64v3) 396
371(f64): 33(ptr) Variable Function
372(f64v1): 150(ptr) Variable Function
376(f64v2): 150(ptr) Variable Function
382(f64v3): 150(ptr) Variable Function
373: 149(fvec3) Load 372(f64v1)
374: 26(float) ExtInst 1(GLSL.std.450) 66(Length) 373
Store 371(f64) 374
375: 149(fvec3) Load 372(f64v1)
377: 149(fvec3) Load 376(f64v2)
378: 26(float) ExtInst 1(GLSL.std.450) 67(Distance) 375 377
Store 371(f64) 378
379: 149(fvec3) Load 372(f64v1)
380: 149(fvec3) Load 376(f64v2)
381: 26(float) Dot 379 380
Store 371(f64) 381
383: 149(fvec3) Load 372(f64v1)
384: 149(fvec3) Load 376(f64v2)
385: 149(fvec3) ExtInst 1(GLSL.std.450) 68(Cross) 383 384
Store 382(f64v3) 385
386: 149(fvec3) Load 372(f64v1)
387: 149(fvec3) ExtInst 1(GLSL.std.450) 69(Normalize) 386
Store 376(f64v2) 387
388: 149(fvec3) Load 372(f64v1)
389: 149(fvec3) Load 376(f64v2)
390: 149(fvec3) Load 382(f64v3)
391: 149(fvec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 388 389 390
Store 382(f64v3) 391
392: 149(fvec3) Load 372(f64v1)
393: 149(fvec3) Load 376(f64v2)
394: 149(fvec3) ExtInst 1(GLSL.std.450) 71(Reflect) 392 393
Store 382(f64v3) 394
395: 149(fvec3) Load 372(f64v1)
396: 149(fvec3) Load 376(f64v2)
397: 26(float) Load 371(f64)
398: 149(fvec3) ExtInst 1(GLSL.std.450) 72(Refract) 395 396 397
Store 382(f64v3) 398
Return
FunctionEnd
20(builtinMatrixFuncs(): 2 Function None 3
21: Label
399(f64m3): 398(ptr) Variable Function
400(f64m1): 398(ptr) Variable Function
402(f64m2): 398(ptr) Variable Function
411(f64v1): 150(ptr) Variable Function
413(f64v2): 28(ptr) Variable Function
418(f64m4): 417(ptr) Variable Function
421(f64): 33(ptr) Variable Function
424(f64m5): 423(ptr) Variable Function
429(f64m6): 428(ptr) Variable Function
430(f64m7): 428(ptr) Variable Function
401: 397 Load 400(f64m1)
403: 397 Load 402(f64m2)
404: 149(fvec3) CompositeExtract 401 0
405: 149(fvec3) CompositeExtract 403 0
406: 149(fvec3) FMul 404 405
407: 149(fvec3) CompositeExtract 401 1
408: 149(fvec3) CompositeExtract 403 1
409: 149(fvec3) FMul 407 408
410: 397 CompositeConstruct 406 409
Store 399(f64m3) 410
412: 149(fvec3) Load 411(f64v1)
414: 27(fvec2) Load 413(f64v2)
415: 397 OuterProduct 412 414
Store 400(f64m1) 415
419: 397 Load 400(f64m1)
420: 416 Transpose 419
Store 418(f64m4) 420
425: 422 Load 424(f64m5)
426: 26(float) ExtInst 1(GLSL.std.450) 33(Determinant) 425
Store 421(f64) 426
431: 427 Load 430(f64m7)
432: 427 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 431
Store 429(f64m6) 432
401(f64m3): 400(ptr) Variable Function
402(f64m1): 400(ptr) Variable Function
404(f64m2): 400(ptr) Variable Function
413(f64v1): 150(ptr) Variable Function
415(f64v2): 28(ptr) Variable Function
420(f64m4): 419(ptr) Variable Function
423(f64): 33(ptr) Variable Function
426(f64m5): 425(ptr) Variable Function
431(f64m6): 430(ptr) Variable Function
432(f64m7): 430(ptr) Variable Function
403: 399 Load 402(f64m1)
405: 399 Load 404(f64m2)
406: 149(fvec3) CompositeExtract 403 0
407: 149(fvec3) CompositeExtract 405 0
408: 149(fvec3) FMul 406 407
409: 149(fvec3) CompositeExtract 403 1
410: 149(fvec3) CompositeExtract 405 1
411: 149(fvec3) FMul 409 410
412: 399 CompositeConstruct 408 411
Store 401(f64m3) 412
414: 149(fvec3) Load 413(f64v1)
416: 27(fvec2) Load 415(f64v2)
417: 399 OuterProduct 414 416
Store 402(f64m1) 417
421: 399 Load 402(f64m1)
422: 418 Transpose 421
Store 420(f64m4) 422
427: 424 Load 426(f64m5)
428: 26(float) ExtInst 1(GLSL.std.450) 33(Determinant) 427
Store 423(f64) 428
433: 429 Load 432(f64m7)
434: 429 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 433
Store 431(f64m6) 434
Return
FunctionEnd
22(builtinVecRelFuncs(): 2 Function None 3
23: Label
433(bv): 153(ptr) Variable Function
434(f64v1): 150(ptr) Variable Function
436(f64v2): 150(ptr) Variable Function
435: 149(fvec3) Load 434(f64v1)
437: 149(fvec3) Load 436(f64v2)
438: 152(bvec3) FOrdLessThan 435 437
Store 433(bv) 438
439: 149(fvec3) Load 434(f64v1)
440: 149(fvec3) Load 436(f64v2)
441: 152(bvec3) FOrdLessThanEqual 439 440
Store 433(bv) 441
442: 149(fvec3) Load 434(f64v1)
443: 149(fvec3) Load 436(f64v2)
444: 152(bvec3) FOrdGreaterThan 442 443
Store 433(bv) 444
445: 149(fvec3) Load 434(f64v1)
446: 149(fvec3) Load 436(f64v2)
447: 152(bvec3) FOrdGreaterThanEqual 445 446
Store 433(bv) 447
448: 149(fvec3) Load 434(f64v1)
449: 149(fvec3) Load 436(f64v2)
450: 152(bvec3) FOrdEqual 448 449
Store 433(bv) 450
451: 149(fvec3) Load 434(f64v1)
452: 149(fvec3) Load 436(f64v2)
453: 152(bvec3) FOrdNotEqual 451 452
Store 433(bv) 453
435(bv): 153(ptr) Variable Function
436(f64v1): 150(ptr) Variable Function
438(f64v2): 150(ptr) Variable Function
437: 149(fvec3) Load 436(f64v1)
439: 149(fvec3) Load 438(f64v2)
440: 152(bvec3) FOrdLessThan 437 439
Store 435(bv) 440
441: 149(fvec3) Load 436(f64v1)
442: 149(fvec3) Load 438(f64v2)
443: 152(bvec3) FOrdLessThanEqual 441 442
Store 435(bv) 443
444: 149(fvec3) Load 436(f64v1)
445: 149(fvec3) Load 438(f64v2)
446: 152(bvec3) FOrdGreaterThan 444 445
Store 435(bv) 446
447: 149(fvec3) Load 436(f64v1)
448: 149(fvec3) Load 438(f64v2)
449: 152(bvec3) FOrdGreaterThanEqual 447 448
Store 435(bv) 449
450: 149(fvec3) Load 436(f64v1)
451: 149(fvec3) Load 438(f64v2)
452: 152(bvec3) FOrdEqual 450 451
Store 435(bv) 452
453: 149(fvec3) Load 436(f64v1)
454: 149(fvec3) Load 438(f64v2)
455: 152(bvec3) FOrdNotEqual 453 454
Store 435(bv) 455
Return
FunctionEnd
24(builtinFragProcFuncs(): 2 Function None 3
25: Label
454(f64v): 150(ptr) Variable Function
458: 457(ptr) AccessChain 456(if64v) 32
459: 26(float) Load 458
460: 26(float) DPdx 459
461: 33(ptr) AccessChain 454(f64v) 32
Store 461 460
462: 457(ptr) AccessChain 456(if64v) 88
463: 26(float) Load 462
464: 26(float) DPdy 463
465: 33(ptr) AccessChain 454(f64v) 88
Store 465 464
466: 149(fvec3) Load 456(if64v)
467: 27(fvec2) VectorShuffle 466 466 0 1
468: 27(fvec2) DPdxFine 467
469: 149(fvec3) Load 454(f64v)
470: 149(fvec3) VectorShuffle 469 468 3 4 2
Store 454(f64v) 470
471: 149(fvec3) Load 456(if64v)
472: 27(fvec2) VectorShuffle 471 471 0 1
473: 27(fvec2) DPdyFine 472
474: 149(fvec3) Load 454(f64v)
475: 149(fvec3) VectorShuffle 474 473 3 4 2
Store 454(f64v) 475
476: 149(fvec3) Load 456(if64v)
477: 149(fvec3) DPdxCoarse 476
Store 454(f64v) 477
478: 149(fvec3) Load 456(if64v)
456(f64v): 150(ptr) Variable Function
460: 459(ptr) AccessChain 458(if64v) 32
461: 26(float) Load 460
462: 26(float) DPdx 461
463: 33(ptr) AccessChain 456(f64v) 32
Store 463 462
464: 459(ptr) AccessChain 458(if64v) 88
465: 26(float) Load 464
466: 26(float) DPdy 465
467: 33(ptr) AccessChain 456(f64v) 88
Store 467 466
468: 149(fvec3) Load 458(if64v)
469: 27(fvec2) VectorShuffle 468 468 0 1
470: 27(fvec2) DPdxFine 469
471: 149(fvec3) Load 456(f64v)
472: 149(fvec3) VectorShuffle 471 470 3 4 2
Store 456(f64v) 472
473: 149(fvec3) Load 458(if64v)
474: 27(fvec2) VectorShuffle 473 473 0 1
475: 27(fvec2) DPdyFine 474
476: 149(fvec3) Load 456(f64v)
477: 149(fvec3) VectorShuffle 476 475 3 4 2
Store 456(f64v) 477
478: 149(fvec3) Load 458(if64v)
479: 149(fvec3) DPdxCoarse 478
Store 454(f64v) 479
480: 457(ptr) AccessChain 456(if64v) 32
481: 26(float) Load 480
482: 26(float) Fwidth 481
483: 33(ptr) AccessChain 454(f64v) 32
Store 483 482
484: 149(fvec3) Load 456(if64v)
485: 27(fvec2) VectorShuffle 484 484 0 1
486: 27(fvec2) FwidthFine 485
487: 149(fvec3) Load 454(f64v)
488: 149(fvec3) VectorShuffle 487 486 3 4 2
Store 454(f64v) 488
489: 149(fvec3) Load 456(if64v)
490: 149(fvec3) FwidthCoarse 489
Store 454(f64v) 490
491: 457(ptr) AccessChain 456(if64v) 32
492: 26(float) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 491
493: 33(ptr) AccessChain 454(f64v) 32
Store 493 492
495: 149(fvec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 456(if64v) 494
496: 27(fvec2) VectorShuffle 495 495 0 1
497: 149(fvec3) Load 454(f64v)
498: 149(fvec3) VectorShuffle 497 496 3 4 2
Store 454(f64v) 498
501: 149(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 456(if64v) 500
Store 454(f64v) 501
Store 456(f64v) 479
480: 149(fvec3) Load 458(if64v)
481: 149(fvec3) DPdxCoarse 480
Store 456(f64v) 481
482: 459(ptr) AccessChain 458(if64v) 32
483: 26(float) Load 482
484: 26(float) Fwidth 483
485: 33(ptr) AccessChain 456(f64v) 32
Store 485 484
486: 149(fvec3) Load 458(if64v)
487: 27(fvec2) VectorShuffle 486 486 0 1
488: 27(fvec2) FwidthFine 487
489: 149(fvec3) Load 456(f64v)
490: 149(fvec3) VectorShuffle 489 488 3 4 2
Store 456(f64v) 490
491: 149(fvec3) Load 458(if64v)
492: 149(fvec3) FwidthCoarse 491
Store 456(f64v) 492
493: 459(ptr) AccessChain 458(if64v) 32
494: 26(float) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 493
495: 33(ptr) AccessChain 456(f64v) 32
Store 495 494
497: 149(fvec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 458(if64v) 496
498: 27(fvec2) VectorShuffle 497 497 0 1
499: 149(fvec3) Load 456(f64v)
500: 149(fvec3) VectorShuffle 499 498 3 4 2
Store 456(f64v) 500
503: 149(fvec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 458(if64v) 502
Store 456(f64v) 503
Return
FunctionEnd
spv.int16.amd.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 558
// Id's are bound by 560
Capability Shader
Capability Float16
......@@ -15,7 +15,7 @@ spv.int16.amd.frag
Extension "SPV_KHR_16bit_storage"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 517 519
EntryPoint Fragment 4 "main" 519 521
ExecutionMode 4 OriginUpperLeft
Source GLSL 450
SourceExtension "GL_AMD_gpu_shader_half_float"
......@@ -26,10 +26,10 @@ spv.int16.amd.frag
Name 8 "operators("
Name 10 "typeCast("
Name 12 "builtinFuncs("
Name 17 "u16"
Name 26 "Uniforms"
MemberName 26(Uniforms) 0 "i"
Name 28 ""
Name 16 "u16"
Name 25 "Uniforms"
MemberName 25(Uniforms) 0 "i"
Name 27 ""
Name 34 "indexable"
Name 45 "indexable"
Name 51 "u16v"
......@@ -37,235 +37,237 @@ spv.int16.amd.frag
Name 70 "u16"
Name 127 "b"
Name 148 "u"
Name 158 "i"
Name 188 "i16v"
Name 191 "bv"
Name 199 "u16v"
Name 211 "iv"
Name 224 "uv"
Name 238 "fv"
Name 250 "dv"
Name 262 "f16v"
Name 274 "i64v"
Name 288 "u64v"
Name 303 "i16v"
Name 309 "i16"
Name 317 "u16v"
Name 319 "u16"
Name 391 "f16v"
Name 394 "exp"
Name 395 "ResType"
Name 416 "packi"
Name 421 "packu"
Name 430 "packi64"
Name 439 "packu64"
Name 448 "bv"
Name 513 "Block"
MemberName 513(Block) 0 "i16v"
MemberName 513(Block) 1 "u16"
Name 515 "block"
Name 517 "iu16v"
Name 519 "ii16"
Name 520 "si64"
Name 521 "su64"
Name 522 "si"
Name 523 "su"
Name 524 "sb"
Name 525 "si16"
Name 526 "su16"
MemberDecorate 26(Uniforms) 0 Offset 0
Decorate 26(Uniforms) Block
Decorate 28 DescriptorSet 0
Decorate 28 Binding 0
MemberDecorate 513(Block) 0 Offset 0
MemberDecorate 513(Block) 1 Offset 6
Decorate 513(Block) Block
Decorate 515(block) DescriptorSet 0
Decorate 515(block) Binding 1
Decorate 517(iu16v) Flat
Decorate 517(iu16v) Location 0
Decorate 519(ii16) Flat
Decorate 519(ii16) Location 1
Decorate 520(si64) SpecId 100
Decorate 521(su64) SpecId 101
Decorate 522(si) SpecId 102
Decorate 523(su) SpecId 103
Decorate 524(sb) SpecId 104
Decorate 525(si16) SpecId 105
Decorate 526(su16) SpecId 106
Name 159 "i"
Name 189 "i16v"
Name 192 "bv"
Name 200 "u16v"
Name 213 "iv"
Name 226 "uv"
Name 240 "fv"
Name 252 "dv"
Name 264 "f16v"
Name 276 "i64v"
Name 290 "u64v"
Name 305 "i16v"
Name 311 "i16"
Name 319 "u16v"
Name 321 "u16"
Name 393 "f16v"
Name 396 "exp"
Name 397 "ResType"
Name 418 "packi"
Name 423 "packu"
Name 432 "packi64"
Name 441 "packu64"
Name 450 "bv"
Name 515 "Block"
MemberName 515(Block) 0 "i16v"
MemberName 515(Block) 1 "u16"
Name 517 "block"
Name 519 "iu16v"
Name 521 "ii16"
Name 522 "si64"
Name 523 "su64"
Name 524 "si"
Name 525 "su"
Name 526 "sb"
Name 527 "si16"
Name 528 "su16"
MemberDecorate 25(Uniforms) 0 Offset 0
Decorate 25(Uniforms) Block
Decorate 27 DescriptorSet 0
Decorate 27 Binding 0
MemberDecorate 515(Block) 0 Offset 0
MemberDecorate 515(Block) 1 Offset 6
Decorate 515(Block) Block
Decorate 517(block) DescriptorSet 0
Decorate 517(block) Binding 1
Decorate 519(iu16v) Flat
Decorate 519(iu16v) Location 0
Decorate 521(ii16) Flat
Decorate 521(ii16) Location 1
Decorate 522(si64) SpecId 100
Decorate 523(su64) SpecId 101
Decorate 524(si) SpecId 102
Decorate 525(su) SpecId 103
Decorate 526(sb) SpecId 104
Decorate 527(si16) SpecId 105
Decorate 528(su16) SpecId 106
2: TypeVoid
3: TypeFunction 2
14: TypeInt 16 0
15: TypeInt 32 1
16: TypePointer Function 15(int)
18: TypeInt 16 1
19: TypeInt 32 0
20: 19(int) Constant 3
21: TypeArray 18(int) 20
22: 18(int) Constant 273
23: 18(int) Constant 4294967294
24: 18(int) Constant 256
25: 21 ConstantComposite 22 23 24
26(Uniforms): TypeStruct 19(int)
27: TypePointer Uniform 26(Uniforms)
28: 27(ptr) Variable Uniform
29: 15(int) Constant 0
30: TypePointer Uniform 19(int)
33: TypePointer Function 21
35: TypePointer Function 18(int)
39: TypeArray 15(int) 20
15: TypePointer Function 14(int)
17: TypeInt 16 1
18: TypeInt 32 0
19: 18(int) Constant 3
20: TypeArray 17(int) 19
21: 17(int) Constant 273
22: 17(int) Constant 4294967294
23: 17(int) Constant 256
24: 20 ConstantComposite 21 22 23
25(Uniforms): TypeStruct 18(int)
26: TypePointer Uniform 25(Uniforms)
27: 26(ptr) Variable Uniform
28: TypeInt 32 1
29: 28(int) Constant 0
30: TypePointer Uniform 18(int)
33: TypePointer Function 20
35: TypePointer Function 17(int)
39: TypeArray 14(int) 19
40: 14(int) Constant 65535
41: 39 ConstantComposite 40 40 40
44: TypePointer Function 39
49: TypeVector 15(int) 3
49: TypeVector 14(int) 3
50: TypePointer Function 49(ivec3)
53: 18(int) Constant 1
54: TypeVector 18(int) 3
111: 19(int) Constant 1
117: 19(int) Constant 2
53: 17(int) Constant 1
54: TypeVector 17(int) 3
111: 18(int) Constant 1
117: 18(int) Constant 2
125: TypeBool
126: TypePointer Function 125(bool)
128: 19(int) Constant 0
147: TypePointer Function 19(int)
186: TypeVector 18(int) 2
187: TypePointer Function 186(ivec2)
189: TypeVector 125(bool) 2
190: TypePointer Function 189(bvec2)
193: 18(int) Constant 0
194: 186(ivec2) ConstantComposite 193 193
195: 186(ivec2) ConstantComposite 53 53
197: TypeVector 15(int) 2
198: TypePointer Function 197(ivec2)
201: 14(int) Constant 0
202: 14(int) Constant 1
203: TypeVector 14(int) 2
204: 203(ivec2) ConstantComposite 201 201
205: 203(ivec2) ConstantComposite 202 202
222: TypeVector 19(int) 2
223: TypePointer Function 222(ivec2)
235: TypeFloat 32
236: TypeVector 235(float) 2
237: TypePointer Function 236(fvec2)
247: TypeFloat 64
248: TypeVector 247(float) 2
249: TypePointer Function 248(fvec2)
259: TypeFloat 16
260: TypeVector 259(float) 2
261: TypePointer Function 260(fvec2)
271: TypeInt 64 1
272: TypeVector 271(int) 2
273: TypePointer Function 272(ivec2)
285: TypeInt 64 0
286: TypeVector 285(int) 2
287: TypePointer Function 286(ivec2)
314: 18(int) Constant 4294967295
315: 186(ivec2) ConstantComposite 314 314
324: 49(ivec3) ConstantComposite 201 201 201
366: 125(bool) ConstantTrue
373: 125(bool) ConstantFalse
374: 189(bvec2) ConstantComposite 373 373
386: TypeVector 125(bool) 3
387: 386(bvec3) ConstantComposite 373 373 373
389: TypeVector 259(float) 3
390: TypePointer Function 389(fvec3)
393: TypePointer Function 54(ivec3)
395(ResType): TypeStruct 389(fvec3) 54(ivec3)
405: TypePointer Function 259(float)
429: TypePointer Function 271(int)
432: TypeVector 18(int) 4
438: TypePointer Function 285(int)
441: TypeVector 15(int) 4
447: TypePointer Function 386(bvec3)
513(Block): TypeStruct 54(ivec3) 15(int)
514: TypePointer Uniform 513(Block)
515(block): 514(ptr) Variable Uniform
516: TypePointer Input 49(ivec3)
517(iu16v): 516(ptr) Variable Input
518: TypePointer Input 18(int)
519(ii16): 518(ptr) Variable Input
520(si64): 271(int) SpecConstant 4294967286 4294967295
521(su64): 285(int) SpecConstant 20 0
522(si): 15(int) SpecConstant 4294967291
523(su): 19(int) SpecConstant 4
524(sb): 125(bool) SpecConstantTrue
525(si16): 18(int) SpecConstant 4294967291
526(su16): 14(int) SpecConstant 4
527: 125(bool) SpecConstantOp 171 525(si16) 201
528: 125(bool) SpecConstantOp 171 526(su16) 201
529: 18(int) SpecConstantOp 169 524(sb) 53 193
530: 15(int) SpecConstantOp 169 524(sb) 202 201
531: 15(int) SpecConstantOp 114 525(si16)
532: 15(int) SpecConstantOp 113 526(su16)
533: 15(int) SpecConstantOp 128 532 128
534: 18(int) SpecConstantOp 114 522(si)
535: 18(int) SpecConstantOp 114 522(si)
536: 15(int) SpecConstantOp 128 535 201
537: 15(int) SpecConstantOp 114 525(si16)
538: 19(int) SpecConstantOp 128 537 128
539: 19(int) SpecConstantOp 113 526(su16)
540: 18(int) SpecConstantOp 113 523(su)
541: 18(int) SpecConstantOp 128 540 201
542: 15(int) SpecConstantOp 113 523(su)
543: 271(int) SpecConstantOp 114 525(si16)
544: 271(int) SpecConstantOp 113 526(su16)
545: 285(int) Constant 0 0
546: 271(int) SpecConstantOp 128 544 545
547: 18(int) SpecConstantOp 114 520(si64)
548: 18(int) SpecConstantOp 114 520(si64)
549: 15(int) SpecConstantOp 128 548 201
550: 271(int) SpecConstantOp 114 525(si16)
551: 285(int) SpecConstantOp 128 550 545
552: 285(int) SpecConstantOp 113 526(su16)
553: 18(int) SpecConstantOp 113 521(su64)
554: 18(int) SpecConstantOp 128 553 201
555: 15(int) SpecConstantOp 113 521(su64)
556: 15(int) SpecConstantOp 128 525(si16) 201
557: 18(int) SpecConstantOp 128 526(su16) 201
128: 18(int) Constant 0
147: TypePointer Function 18(int)
158: TypePointer Function 28(int)
187: TypeVector 17(int) 2
188: TypePointer Function 187(ivec2)
190: TypeVector 125(bool) 2
191: TypePointer Function 190(bvec2)
194: 17(int) Constant 0
195: 187(ivec2) ConstantComposite 194 194
196: 187(ivec2) ConstantComposite 53 53
198: TypeVector 14(int) 2
199: TypePointer Function 198(ivec2)
202: 14(int) Constant 0
203: 14(int) Constant 1
204: 198(ivec2) ConstantComposite 202 202
205: 198(ivec2) ConstantComposite 203 203
211: TypeVector 28(int) 2
212: TypePointer Function 211(ivec2)
224: TypeVector 18(int) 2
225: TypePointer Function 224(ivec2)
237: TypeFloat 32
238: TypeVector 237(float) 2
239: TypePointer Function 238(fvec2)
249: TypeFloat 64
250: TypeVector 249(float) 2
251: TypePointer Function 250(fvec2)
261: TypeFloat 16
262: TypeVector 261(float) 2
263: TypePointer Function 262(fvec2)
273: TypeInt 64 1
274: TypeVector 273(int) 2
275: TypePointer Function 274(ivec2)
287: TypeInt 64 0
288: TypeVector 287(int) 2
289: TypePointer Function 288(ivec2)
316: 17(int) Constant 4294967295
317: 187(ivec2) ConstantComposite 316 316
326: 49(ivec3) ConstantComposite 202 202 202
368: 125(bool) ConstantTrue
375: 125(bool) ConstantFalse
376: 190(bvec2) ConstantComposite 375 375
388: TypeVector 125(bool) 3
389: 388(bvec3) ConstantComposite 375 375 375
391: TypeVector 261(float) 3
392: TypePointer Function 391(fvec3)
395: TypePointer Function 54(ivec3)
397(ResType): TypeStruct 391(fvec3) 54(ivec3)
407: TypePointer Function 261(float)
431: TypePointer Function 273(int)
434: TypeVector 17(int) 4
440: TypePointer Function 287(int)
443: TypeVector 14(int) 4
449: TypePointer Function 388(bvec3)
515(Block): TypeStruct 54(ivec3) 14(int)
516: TypePointer Uniform 515(Block)
517(block): 516(ptr) Variable Uniform
518: TypePointer Input 49(ivec3)
519(iu16v): 518(ptr) Variable Input
520: TypePointer Input 17(int)
521(ii16): 520(ptr) Variable Input
522(si64): 273(int) SpecConstant 4294967286 4294967295
523(su64): 287(int) SpecConstant 20 0
524(si): 28(int) SpecConstant 4294967291
525(su): 18(int) SpecConstant 4
526(sb): 125(bool) SpecConstantTrue
527(si16): 17(int) SpecConstant 4294967291
528(su16): 14(int) SpecConstant 4
529: 125(bool) SpecConstantOp 171 527(si16) 202
530: 125(bool) SpecConstantOp 171 528(su16) 202
531: 17(int) SpecConstantOp 169 526(sb) 53 194
532: 14(int) SpecConstantOp 169 526(sb) 203 202
533: 28(int) SpecConstantOp 114 527(si16)
534: 28(int) SpecConstantOp 113 528(su16)
535: 28(int) SpecConstantOp 128 534 128
536: 17(int) SpecConstantOp 114 524(si)
537: 17(int) SpecConstantOp 114 524(si)
538: 14(int) SpecConstantOp 128 537 202
539: 28(int) SpecConstantOp 114 527(si16)
540: 18(int) SpecConstantOp 128 539 128
541: 18(int) SpecConstantOp 113 528(su16)
542: 17(int) SpecConstantOp 113 525(su)
543: 17(int) SpecConstantOp 128 542 202
544: 14(int) SpecConstantOp 113 525(su)
545: 273(int) SpecConstantOp 114 527(si16)
546: 273(int) SpecConstantOp 113 528(su16)
547: 287(int) Constant 0 0
548: 273(int) SpecConstantOp 128 546 547
549: 17(int) SpecConstantOp 114 522(si64)
550: 17(int) SpecConstantOp 114 522(si64)
551: 14(int) SpecConstantOp 128 550 202
552: 273(int) SpecConstantOp 114 527(si16)
553: 287(int) SpecConstantOp 128 552 547
554: 287(int) SpecConstantOp 113 528(su16)
555: 17(int) SpecConstantOp 113 523(su64)
556: 17(int) SpecConstantOp 128 555 202
557: 14(int) SpecConstantOp 113 523(su64)
558: 14(int) SpecConstantOp 128 527(si16) 202
559: 17(int) SpecConstantOp 128 528(su16) 202
4(main): 2 Function None 3
5: Label
509: 2 FunctionCall 6(literal()
510: 2 FunctionCall 8(operators()
511: 2 FunctionCall 10(typeCast()
512: 2 FunctionCall 12(builtinFuncs()
511: 2 FunctionCall 6(literal()
512: 2 FunctionCall 8(operators()
513: 2 FunctionCall 10(typeCast()
514: 2 FunctionCall 12(builtinFuncs()
Return
FunctionEnd
6(literal(): 2 Function None 3
7: Label
17(u16): 16(ptr) Variable Function
16(u16): 15(ptr) Variable Function
34(indexable): 33(ptr) Variable Function
45(indexable): 44(ptr) Variable Function
31: 30(ptr) AccessChain 28 29
32: 19(int) Load 31
Store 34(indexable) 25
31: 30(ptr) AccessChain 27 29
32: 18(int) Load 31
Store 34(indexable) 24
36: 35(ptr) AccessChain 34(indexable) 32
37: 18(int) Load 36
38: 15(int) Bitcast 37
42: 30(ptr) AccessChain 28 29
43: 19(int) Load 42
37: 17(int) Load 36
38: 14(int) Bitcast 37
42: 30(ptr) AccessChain 27 29
43: 18(int) Load 42
Store 45(indexable) 41
46: 16(ptr) AccessChain 45(indexable) 43
47: 15(int) Load 46
48: 15(int) IAdd 38 47
Store 17(u16) 48
46: 15(ptr) AccessChain 45(indexable) 43
47: 14(int) Load 46
48: 14(int) IAdd 38 47
Store 16(u16) 48
Return
FunctionEnd
8(operators(): 2 Function None 3
9: Label
51(u16v): 50(ptr) Variable Function
57(i16): 35(ptr) Variable Function
70(u16): 16(ptr) Variable Function
70(u16): 15(ptr) Variable Function
127(b): 126(ptr) Variable Function
148(u): 147(ptr) Variable Function
158(i): 16(ptr) Variable Function
159(i): 158(ptr) Variable Function
52: 49(ivec3) Load 51(u16v)
55: 54(ivec3) CompositeConstruct 53 53 53
56: 49(ivec3) IAdd 52 55
Store 51(u16v) 56
58: 18(int) Load 57(i16)
59: 18(int) ISub 58 53
58: 17(int) Load 57(i16)
59: 17(int) ISub 58 53
Store 57(i16) 59
60: 18(int) Load 57(i16)
61: 18(int) IAdd 60 53
60: 17(int) Load 57(i16)
61: 17(int) IAdd 60 53
Store 57(i16) 61
62: 49(ivec3) Load 51(u16v)
63: 54(ivec3) CompositeConstruct 53 53 53
......@@ -274,30 +276,30 @@ spv.int16.amd.frag
65: 49(ivec3) Load 51(u16v)
66: 49(ivec3) Not 65
Store 51(u16v) 66
67: 18(int) Load 57(i16)
67: 17(int) Load 57(i16)
Store 57(i16) 67
68: 49(ivec3) Load 51(u16v)
69: 49(ivec3) SNegate 68
Store 51(u16v) 69
71: 18(int) Load 57(i16)
72: 15(int) Bitcast 71
73: 15(int) Load 70(u16)
74: 15(int) IAdd 73 72
71: 17(int) Load 57(i16)
72: 14(int) Bitcast 71
73: 14(int) Load 70(u16)
74: 14(int) IAdd 73 72
Store 70(u16) 74
75: 49(ivec3) Load 51(u16v)
76: 49(ivec3) Load 51(u16v)
77: 49(ivec3) ISub 76 75
Store 51(u16v) 77
78: 18(int) Load 57(i16)
79: 18(int) Load 57(i16)
80: 18(int) IMul 79 78
78: 17(int) Load 57(i16)
79: 17(int) Load 57(i16)
80: 17(int) IMul 79 78
Store 57(i16) 80
81: 49(ivec3) Load 51(u16v)
82: 49(ivec3) Load 51(u16v)
83: 49(ivec3) UDiv 82 81
Store 51(u16v) 83
84: 18(int) Load 57(i16)
85: 15(int) Bitcast 84
84: 17(int) Load 57(i16)
85: 14(int) Bitcast 84
86: 49(ivec3) Load 51(u16v)
87: 49(ivec3) CompositeConstruct 85 85 85
88: 49(ivec3) UMod 86 87
......@@ -306,471 +308,471 @@ spv.int16.amd.frag
90: 49(ivec3) Load 51(u16v)
91: 49(ivec3) IAdd 89 90
Store 51(u16v) 91
92: 18(int) Load 57(i16)
93: 15(int) Bitcast 92
94: 15(int) Load 70(u16)
95: 15(int) ISub 93 94
92: 17(int) Load 57(i16)
93: 14(int) Bitcast 92
94: 14(int) Load 70(u16)
95: 14(int) ISub 93 94
Store 70(u16) 95
96: 49(ivec3) Load 51(u16v)
97: 18(int) Load 57(i16)
98: 15(int) Bitcast 97
97: 17(int) Load 57(i16)
98: 14(int) Bitcast 97
99: 49(ivec3) CompositeConstruct 98 98 98
100: 49(ivec3) IMul 96 99
Store 51(u16v) 100
101: 18(int) Load 57(i16)
102: 18(int) Load 57(i16)
103: 18(int) IMul 101 102
101: 17(int) Load 57(i16)
102: 17(int) Load 57(i16)
103: 17(int) IMul 101 102
Store 57(i16) 103
104: 18(int) Load 57(i16)
105: 18(int) Load 57(i16)
106: 18(int) SMod 104 105
104: 17(int) Load 57(i16)
105: 17(int) Load 57(i16)
106: 17(int) SMod 104 105
Store 57(i16) 106
107: 18(int) Load 57(i16)
107: 17(int) Load 57(i16)
108: 49(ivec3) Load 51(u16v)
109: 54(ivec3) CompositeConstruct 107 107 107
110: 49(ivec3) ShiftLeftLogical 108 109
Store 51(u16v) 110
112: 16(ptr) AccessChain 51(u16v) 111
113: 15(int) Load 112
114: 18(int) Load 57(i16)
115: 18(int) ShiftRightArithmetic 114 113
112: 15(ptr) AccessChain 51(u16v) 111
113: 14(int) Load 112
114: 17(int) Load 57(i16)
115: 17(int) ShiftRightArithmetic 114 113
Store 57(i16) 115
116: 18(int) Load 57(i16)
118: 16(ptr) AccessChain 51(u16v) 117
119: 15(int) Load 118
120: 18(int) ShiftLeftLogical 116 119
116: 17(int) Load 57(i16)
118: 15(ptr) AccessChain 51(u16v) 117
119: 14(int) Load 118
120: 17(int) ShiftLeftLogical 116 119
Store 57(i16) 120
121: 49(ivec3) Load 51(u16v)
122: 18(int) Load 57(i16)
122: 17(int) Load 57(i16)
123: 54(ivec3) CompositeConstruct 122 122 122
124: 49(ivec3) ShiftLeftLogical 121 123
Store 51(u16v) 124
129: 16(ptr) AccessChain 51(u16v) 128
130: 15(int) Load 129
131: 18(int) Load 57(i16)
132: 15(int) Bitcast 131
129: 15(ptr) AccessChain 51(u16v) 128
130: 14(int) Load 129
131: 17(int) Load 57(i16)
132: 14(int) Bitcast 131
133: 125(bool) INotEqual 130 132
Store 127(b) 133
134: 18(int) Load 57(i16)
135: 15(int) Bitcast 134
136: 16(ptr) AccessChain 51(u16v) 128
137: 15(int) Load 136
134: 17(int) Load 57(i16)
135: 14(int) Bitcast 134
136: 15(ptr) AccessChain 51(u16v) 128
137: 14(int) Load 136
138: 125(bool) IEqual 135 137
Store 127(b) 138
139: 16(ptr) AccessChain 51(u16v) 128
140: 15(int) Load 139
141: 16(ptr) AccessChain 51(u16v) 111
142: 15(int) Load 141
139: 15(ptr) AccessChain 51(u16v) 128
140: 14(int) Load 139
141: 15(ptr) AccessChain 51(u16v) 111
142: 14(int) Load 141
143: 125(bool) UGreaterThan 140 142
Store 127(b) 143
144: 18(int) Load 57(i16)
145: 15(int) SConvert 144
146: 19(int) Bitcast 145
149: 19(int) Load 148(u)
144: 17(int) Load 57(i16)
145: 28(int) SConvert 144
146: 18(int) Bitcast 145
149: 18(int) Load 148(u)
150: 125(bool) ULessThan 146 149
Store 127(b) 150
151: 16(ptr) AccessChain 51(u16v) 111
152: 15(int) Load 151
153: 16(ptr) AccessChain 51(u16v) 128
154: 15(int) Load 153
151: 15(ptr) AccessChain 51(u16v) 111
152: 14(int) Load 151
153: 15(ptr) AccessChain 51(u16v) 128
154: 14(int) Load 153
155: 125(bool) UGreaterThanEqual 152 154
Store 127(b) 155
156: 18(int) Load 57(i16)
157: 15(int) SConvert 156
159: 15(int) Load 158(i)
160: 125(bool) SLessThanEqual 157 159
Store 127(b) 160
161: 18(int) Load 57(i16)
162: 15(int) Bitcast 161
163: 49(ivec3) Load 51(u16v)
164: 49(ivec3) CompositeConstruct 162 162 162
165: 49(ivec3) BitwiseOr 163 164
Store 51(u16v) 165
166: 18(int) Load 57(i16)
167: 15(int) Bitcast 166
168: 15(int) Load 70(u16)
169: 15(int) BitwiseOr 167 168
Store 70(u16) 169
170: 18(int) Load 57(i16)
171: 18(int) Load 57(i16)
172: 18(int) BitwiseAnd 171 170
Store 57(i16) 172
173: 49(ivec3) Load 51(u16v)
156: 17(int) Load 57(i16)
157: 28(int) SConvert 156
160: 28(int) Load 159(i)
161: 125(bool) SLessThanEqual 157 160
Store 127(b) 161
162: 17(int) Load 57(i16)
163: 14(int) Bitcast 162
164: 49(ivec3) Load 51(u16v)
165: 49(ivec3) CompositeConstruct 163 163 163
166: 49(ivec3) BitwiseOr 164 165
Store 51(u16v) 166
167: 17(int) Load 57(i16)
168: 14(int) Bitcast 167
169: 14(int) Load 70(u16)
170: 14(int) BitwiseOr 168 169
Store 70(u16) 170
171: 17(int) Load 57(i16)
172: 17(int) Load 57(i16)
173: 17(int) BitwiseAnd 172 171
Store 57(i16) 173
174: 49(ivec3) Load 51(u16v)
175: 49(ivec3) BitwiseAnd 173 174
Store 51(u16v) 175
176: 18(int) Load 57(i16)
177: 15(int) Bitcast 176
178: 49(ivec3) Load 51(u16v)
179: 49(ivec3) CompositeConstruct 177 177 177
180: 49(ivec3) BitwiseXor 178 179
Store 51(u16v) 180
181: 49(ivec3) Load 51(u16v)
182: 18(int) Load 57(i16)
183: 15(int) Bitcast 182
184: 49(ivec3) CompositeConstruct 183 183 183
185: 49(ivec3) BitwiseXor 181 184
Store 51(u16v) 185
175: 49(ivec3) Load 51(u16v)
176: 49(ivec3) BitwiseAnd 174 175
Store 51(u16v) 176
177: 17(int) Load 57(i16)
178: 14(int) Bitcast 177
179: 49(ivec3) Load 51(u16v)
180: 49(ivec3) CompositeConstruct 178 178 178
181: 49(ivec3) BitwiseXor 179 180
Store 51(u16v) 181
182: 49(ivec3) Load 51(u16v)
183: 17(int) Load 57(i16)
184: 14(int) Bitcast 183
185: 49(ivec3) CompositeConstruct 184 184 184
186: 49(ivec3) BitwiseXor 182 185
Store 51(u16v) 186
Return
FunctionEnd
10(typeCast(): 2 Function None 3
11: Label
188(i16v): 187(ptr) Variable Function
191(bv): 190(ptr) Variable Function
199(u16v): 198(ptr) Variable Function
211(iv): 198(ptr) Variable Function
224(uv): 223(ptr) Variable Function
238(fv): 237(ptr) Variable Function
250(dv): 249(ptr) Variable Function
262(f16v): 261(ptr) Variable Function
274(i64v): 273(ptr) Variable Function
288(u64v): 287(ptr) Variable Function
192: 189(bvec2) Load 191(bv)
196: 186(ivec2) Select 192 195 194
Store 188(i16v) 196
200: 189(bvec2) Load 191(bv)
206: 197(ivec2) Select 200 205 204
Store 199(u16v) 206
207: 186(ivec2) Load 188(i16v)
208: 189(bvec2) INotEqual 207 204
Store 191(bv) 208
209: 197(ivec2) Load 199(u16v)
210: 189(bvec2) INotEqual 209 204
Store 191(bv) 210
212: 197(ivec2) Load 211(iv)
213: 186(ivec2) SConvert 212
Store 188(i16v) 213
214: 197(ivec2) Load 211(iv)
215: 186(ivec2) SConvert 214
216: 197(ivec2) Bitcast 215
Store 199(u16v) 216
217: 186(ivec2) Load 188(i16v)
218: 197(ivec2) SConvert 217
Store 211(iv) 218
219: 197(ivec2) Load 199(u16v)
220: 197(ivec2) UConvert 219
221: 197(ivec2) Bitcast 220
Store 211(iv) 221
225: 222(ivec2) Load 224(uv)
226: 186(ivec2) UConvert 225
227: 186(ivec2) Bitcast 226
Store 188(i16v) 227
228: 222(ivec2) Load 224(uv)
229: 197(ivec2) UConvert 228
Store 199(u16v) 229
230: 186(ivec2) Load 188(i16v)
231: 197(ivec2) SConvert 230
232: 222(ivec2) Bitcast 231
Store 224(uv) 232
233: 197(ivec2) Load 199(u16v)
234: 222(ivec2) UConvert 233
Store 224(uv) 234
239: 236(fvec2) Load 238(fv)
240: 186(ivec2) ConvertFToS 239
Store 188(i16v) 240
241: 236(fvec2) Load 238(fv)
242: 197(ivec2) ConvertFToU 241
Store 199(u16v) 242
243: 186(ivec2) Load 188(i16v)
244: 236(fvec2) ConvertSToF 243
Store 238(fv) 244
245: 197(ivec2) Load 199(u16v)
246: 236(fvec2) ConvertUToF 245
Store 238(fv) 246
251: 248(fvec2) Load 250(dv)
252: 186(ivec2) ConvertFToS 251
Store 188(i16v) 252
253: 248(fvec2) Load 250(dv)
254: 197(ivec2) ConvertFToU 253
Store 199(u16v) 254
255: 186(ivec2) Load 188(i16v)
256: 248(fvec2) ConvertSToF 255
Store 250(dv) 256
257: 197(ivec2) Load 199(u16v)
258: 248(fvec2) ConvertUToF 257
Store 250(dv) 258
263: 260(fvec2) Load 262(f16v)
264: 186(ivec2) ConvertFToS 263
Store 188(i16v) 264
265: 260(fvec2) Load 262(f16v)
266: 197(ivec2) ConvertFToU 265
Store 199(u16v) 266
267: 186(ivec2) Load 188(i16v)
268: 260(fvec2) ConvertSToF 267
Store 262(f16v) 268
269: 197(ivec2) Load 199(u16v)
270: 260(fvec2) ConvertUToF 269
Store 262(f16v) 270
275: 272(ivec2) Load 274(i64v)
276: 186(ivec2) SConvert 275
Store 188(i16v) 276
277: 272(ivec2) Load 274(i64v)
278: 186(ivec2) SConvert 277
279: 197(ivec2) Bitcast 278
Store 199(u16v) 279
280: 186(ivec2) Load 188(i16v)
281: 272(ivec2) SConvert 280
Store 274(i64v) 281
282: 197(ivec2) Load 199(u16v)
283: 272(ivec2) UConvert 282
284: 272(ivec2) Bitcast 283
Store 274(i64v) 284
289: 286(ivec2) Load 288(u64v)
290: 186(ivec2) UConvert 289
291: 186(ivec2) Bitcast 290
Store 188(i16v) 291
292: 286(ivec2) Load 288(u64v)
293: 197(ivec2) UConvert 292
Store 199(u16v) 293
294: 186(ivec2) Load 188(i16v)
295: 272(ivec2) SConvert 294
296: 286(ivec2) Bitcast 295
Store 288(u64v) 296
297: 197(ivec2) Load 199(u16v)
298: 286(ivec2) UConvert 297
Store 288(u64v) 298
299: 197(ivec2) Load 199(u16v)
300: 186(ivec2) Bitcast 299
Store 188(i16v) 300
301: 186(ivec2) Load 188(i16v)
302: 197(ivec2) Bitcast 301
Store 199(u16v) 302
189(i16v): 188(ptr) Variable Function
192(bv): 191(ptr) Variable Function
200(u16v): 199(ptr) Variable Function
213(iv): 212(ptr) Variable Function
226(uv): 225(ptr) Variable Function
240(fv): 239(ptr) Variable Function
252(dv): 251(ptr) Variable Function
264(f16v): 263(ptr) Variable Function
276(i64v): 275(ptr) Variable Function
290(u64v): 289(ptr) Variable Function
193: 190(bvec2) Load 192(bv)
197: 187(ivec2) Select 193 196 195
Store 189(i16v) 197
201: 190(bvec2) Load 192(bv)
206: 198(ivec2) Select 201 205 204
Store 200(u16v) 206
207: 187(ivec2) Load 189(i16v)
208: 190(bvec2) INotEqual 207 204
Store 192(bv) 208
209: 198(ivec2) Load 200(u16v)
210: 190(bvec2) INotEqual 209 204
Store 192(bv) 210
214: 211(ivec2) Load 213(iv)
215: 187(ivec2) SConvert 214
Store 189(i16v) 215
216: 211(ivec2) Load 213(iv)
217: 187(ivec2) SConvert 216
218: 198(ivec2) Bitcast 217
Store 200(u16v) 218
219: 187(ivec2) Load 189(i16v)
220: 211(ivec2) SConvert 219
Store 213(iv) 220
221: 198(ivec2) Load 200(u16v)
222: 211(ivec2) UConvert 221
223: 211(ivec2) Bitcast 222
Store 213(iv) 223
227: 224(ivec2) Load 226(uv)
228: 187(ivec2) UConvert 227
229: 187(ivec2) Bitcast 228
Store 189(i16v) 229
230: 224(ivec2) Load 226(uv)
231: 198(ivec2) UConvert 230
Store 200(u16v) 231
232: 187(ivec2) Load 189(i16v)
233: 211(ivec2) SConvert 232
234: 224(ivec2) Bitcast 233
Store 226(uv) 234
235: 198(ivec2) Load 200(u16v)
236: 224(ivec2) UConvert 235
Store 226(uv) 236
241: 238(fvec2) Load 240(fv)
242: 187(ivec2) ConvertFToS 241
Store 189(i16v) 242
243: 238(fvec2) Load 240(fv)
244: 198(ivec2) ConvertFToU 243
Store 200(u16v) 244
245: 187(ivec2) Load 189(i16v)
246: 238(fvec2) ConvertSToF 245
Store 240(fv) 246
247: 198(ivec2) Load 200(u16v)
248: 238(fvec2) ConvertUToF 247
Store 240(fv) 248
253: 250(fvec2) Load 252(dv)
254: 187(ivec2) ConvertFToS 253
Store 189(i16v) 254
255: 250(fvec2) Load 252(dv)
256: 198(ivec2) ConvertFToU 255
Store 200(u16v) 256
257: 187(ivec2) Load 189(i16v)
258: 250(fvec2) ConvertSToF 257
Store 252(dv) 258
259: 198(ivec2) Load 200(u16v)
260: 250(fvec2) ConvertUToF 259
Store 252(dv) 260
265: 262(fvec2) Load 264(f16v)
266: 187(ivec2) ConvertFToS 265
Store 189(i16v) 266
267: 262(fvec2) Load 264(f16v)
268: 198(ivec2) ConvertFToU 267
Store 200(u16v) 268
269: 187(ivec2) Load 189(i16v)
270: 262(fvec2) ConvertSToF 269
Store 264(f16v) 270
271: 198(ivec2) Load 200(u16v)
272: 262(fvec2) ConvertUToF 271
Store 264(f16v) 272
277: 274(ivec2) Load 276(i64v)
278: 187(ivec2) SConvert 277
Store 189(i16v) 278
279: 274(ivec2) Load 276(i64v)
280: 187(ivec2) SConvert 279
281: 198(ivec2) Bitcast 280
Store 200(u16v) 281
282: 187(ivec2) Load 189(i16v)
283: 274(ivec2) SConvert 282
Store 276(i64v) 283
284: 198(ivec2) Load 200(u16v)
285: 274(ivec2) UConvert 284
286: 274(ivec2) Bitcast 285
Store 276(i64v) 286
291: 288(ivec2) Load 290(u64v)
292: 187(ivec2) UConvert 291
293: 187(ivec2) Bitcast 292
Store 189(i16v) 293
294: 288(ivec2) Load 290(u64v)
295: 198(ivec2) UConvert 294
Store 200(u16v) 295
296: 187(ivec2) Load 189(i16v)
297: 274(ivec2) SConvert 296
298: 288(ivec2) Bitcast 297
Store 290(u64v) 298
299: 198(ivec2) Load 200(u16v)
300: 288(ivec2) UConvert 299
Store 290(u64v) 300
301: 198(ivec2) Load 200(u16v)
302: 187(ivec2) Bitcast 301
Store 189(i16v) 302
303: 187(ivec2) Load 189(i16v)
304: 198(ivec2) Bitcast 303
Store 200(u16v) 304
Return
FunctionEnd
12(builtinFuncs(): 2 Function None 3
13: Label
303(i16v): 187(ptr) Variable Function
309(i16): 35(ptr) Variable Function
317(u16v): 50(ptr) Variable Function
319(u16): 16(ptr) Variable Function
391(f16v): 390(ptr) Variable Function
394(exp): 393(ptr) Variable Function
416(packi): 16(ptr) Variable Function
421(packu): 147(ptr) Variable Function
430(packi64): 429(ptr) Variable Function
439(packu64): 438(ptr) Variable Function
448(bv): 447(ptr) Variable Function
304: 186(ivec2) Load 303(i16v)
305: 186(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 304
Store 303(i16v) 305
306: 186(ivec2) Load 303(i16v)
307: 186(ivec2) ExtInst 1(GLSL.std.450) 7(SSign) 306
Store 303(i16v) 307
308: 186(ivec2) Load 303(i16v)
310: 18(int) Load 309(i16)
311: 186(ivec2) CompositeConstruct 310 310
312: 186(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 308 311
Store 303(i16v) 312
313: 186(ivec2) Load 303(i16v)
316: 186(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 313 315
Store 303(i16v) 316
318: 49(ivec3) Load 317(u16v)
320: 15(int) Load 319(u16)
321: 49(ivec3) CompositeConstruct 320 320 320
322: 49(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 318 321
Store 317(u16v) 322
323: 49(ivec3) Load 317(u16v)
325: 49(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 323 324
Store 317(u16v) 325
326: 186(ivec2) Load 303(i16v)
327: 18(int) Load 309(i16)
328: 186(ivec2) CompositeConstruct 327 327
329: 186(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 326 328
Store 303(i16v) 329
330: 186(ivec2) Load 303(i16v)
331: 186(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 330 315
Store 303(i16v) 331
332: 49(ivec3) Load 317(u16v)
333: 15(int) Load 319(u16)
334: 49(ivec3) CompositeConstruct 333 333 333
335: 49(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 332 334
Store 317(u16v) 335
336: 49(ivec3) Load 317(u16v)
337: 49(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 336 324
Store 317(u16v) 337
338: 186(ivec2) Load 303(i16v)
339: 18(int) Load 309(i16)
340: 18(int) SNegate 339
341: 18(int) Load 309(i16)
342: 186(ivec2) CompositeConstruct 340 340
343: 186(ivec2) CompositeConstruct 341 341
344: 186(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 338 342 343
Store 303(i16v) 344
345: 186(ivec2) Load 303(i16v)
346: 186(ivec2) Load 303(i16v)
347: 186(ivec2) SNegate 346
348: 186(ivec2) Load 303(i16v)
349: 186(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 345 347 348
Store 303(i16v) 349
350: 49(ivec3) Load 317(u16v)
351: 15(int) Load 319(u16)
352: 15(int) SNegate 351
353: 15(int) Load 319(u16)
354: 49(ivec3) CompositeConstruct 352 352 352
355: 49(ivec3) CompositeConstruct 353 353 353
356: 49(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 350 354 355
Store 317(u16v) 356
357: 49(ivec3) Load 317(u16v)
358: 49(ivec3) Load 317(u16v)
359: 49(ivec3) SNegate 358
360: 49(ivec3) Load 317(u16v)
361: 49(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 357 359 360
Store 317(u16v) 361
362: 35(ptr) AccessChain 303(i16v) 128
363: 18(int) Load 362
364: 35(ptr) AccessChain 303(i16v) 111
365: 18(int) Load 364
367: 18(int) Select 366 365 363
Store 309(i16) 367
368: 18(int) Load 309(i16)
369: 186(ivec2) CompositeConstruct 368 368
370: 18(int) Load 309(i16)
371: 18(int) SNegate 370
372: 186(ivec2) CompositeConstruct 371 371
375: 186(ivec2) Select 374 372 369
Store 303(i16v) 375
376: 16(ptr) AccessChain 317(u16v) 128
377: 15(int) Load 376
378: 16(ptr) AccessChain 317(u16v) 111
379: 15(int) Load 378
380: 15(int) Select 366 379 377
Store 319(u16) 380
381: 15(int) Load 319(u16)
382: 49(ivec3) CompositeConstruct 381 381 381
383: 15(int) Load 319(u16)
384: 15(int) SNegate 383
385: 49(ivec3) CompositeConstruct 384 384 384
388: 49(ivec3) Select 387 385 382
Store 317(u16v) 388
392: 389(fvec3) Load 391(f16v)
396:395(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 392
397: 54(ivec3) CompositeExtract 396 1
Store 394(exp) 397
398: 389(fvec3) CompositeExtract 396 0
Store 391(f16v) 398
399: 389(fvec3) Load 391(f16v)
400: 54(ivec3) Load 394(exp)
401: 389(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 399 400
Store 391(f16v) 401
402: 389(fvec3) Load 391(f16v)
403: 260(fvec2) VectorShuffle 402 402 0 1
404: 186(ivec2) Bitcast 403
Store 303(i16v) 404
406: 405(ptr) AccessChain 391(f16v) 117
407: 259(float) Load 406
408: 15(int) Bitcast 407
409: 16(ptr) AccessChain 317(u16v) 128
Store 409 408
410: 186(ivec2) Load 303(i16v)
411: 260(fvec2) Bitcast 410
412: 389(fvec3) Load 391(f16v)
413: 389(fvec3) VectorShuffle 412 411 3 4 2
Store 391(f16v) 413
414: 49(ivec3) Load 317(u16v)
415: 389(fvec3) Bitcast 414
Store 391(f16v) 415
417: 186(ivec2) Load 303(i16v)
418: 15(int) Bitcast 417
Store 416(packi) 418
419: 15(int) Load 416(packi)
420: 186(ivec2) Bitcast 419
Store 303(i16v) 420
422: 49(ivec3) Load 317(u16v)
423: 197(ivec2) VectorShuffle 422 422 0 1
424: 19(int) Bitcast 423
Store 421(packu) 424
425: 19(int) Load 421(packu)
426: 197(ivec2) Bitcast 425
427: 49(ivec3) Load 317(u16v)
428: 49(ivec3) VectorShuffle 427 426 3 4 2
Store 317(u16v) 428
431: 18(int) Load 309(i16)
433: 432(ivec4) CompositeConstruct 431 431 431 431
434: 271(int) Bitcast 433
Store 430(packi64) 434
435: 271(int) Load 430(packi64)
436: 432(ivec4) Bitcast 435
437: 186(ivec2) VectorShuffle 436 436 0 1
Store 303(i16v) 437
440: 15(int) Load 319(u16)
442: 441(ivec4) CompositeConstruct 440 440 440 440
443: 285(int) Bitcast 442
Store 439(packu64) 443
444: 285(int) Load 439(packu64)
445: 441(ivec4) Bitcast 444
446: 49(ivec3) VectorShuffle 445 445 0 1 2
Store 317(u16v) 446
449: 49(ivec3) Load 317(u16v)
450: 15(int) Load 319(u16)
451: 49(ivec3) CompositeConstruct 450 450 450
452: 386(bvec3) ULessThan 449 451
Store 448(bv) 452
453: 186(ivec2) Load 303(i16v)
454: 18(int) Load 309(i16)
455: 186(ivec2) CompositeConstruct 454 454
456: 189(bvec2) SLessThan 453 455
457: 386(bvec3) Load 448(bv)
458: 386(bvec3) VectorShuffle 457 456 3 4 2
Store 448(bv) 458
459: 49(ivec3) Load 317(u16v)
460: 15(int) Load 319(u16)
461: 49(ivec3) CompositeConstruct 460 460 460
462: 386(bvec3) ULessThanEqual 459 461
Store 448(bv) 462
463: 186(ivec2) Load 303(i16v)
464: 18(int) Load 309(i16)
465: 186(ivec2) CompositeConstruct 464 464
466: 189(bvec2) SLessThanEqual 463 465
467: 386(bvec3) Load 448(bv)
468: 386(bvec3) VectorShuffle 467 466 3 4 2
Store 448(bv) 468
469: 49(ivec3) Load 317(u16v)
470: 15(int) Load 319(u16)
471: 49(ivec3) CompositeConstruct 470 470 470
472: 386(bvec3) UGreaterThan 469 471
Store 448(bv) 472
473: 186(ivec2) Load 303(i16v)
474: 18(int) Load 309(i16)
475: 186(ivec2) CompositeConstruct 474 474
476: 189(bvec2) SGreaterThan 473 475
477: 386(bvec3) Load 448(bv)
478: 386(bvec3) VectorShuffle 477 476 3 4 2
Store 448(bv) 478
479: 49(ivec3) Load 317(u16v)
480: 15(int) Load 319(u16)
481: 49(ivec3) CompositeConstruct 480 480 480
482: 386(bvec3) UGreaterThanEqual 479 481
Store 448(bv) 482
483: 186(ivec2) Load 303(i16v)
484: 18(int) Load 309(i16)
485: 186(ivec2) CompositeConstruct 484 484
486: 189(bvec2) SGreaterThanEqual 483 485
487: 386(bvec3) Load 448(bv)
488: 386(bvec3) VectorShuffle 487 486 3 4 2
Store 448(bv) 488
489: 49(ivec3) Load 317(u16v)
490: 15(int) Load 319(u16)
491: 49(ivec3) CompositeConstruct 490 490 490
492: 386(bvec3) IEqual 489 491
Store 448(bv) 492
493: 186(ivec2) Load 303(i16v)
494: 18(int) Load 309(i16)
495: 186(ivec2) CompositeConstruct 494 494
496: 189(bvec2) IEqual 493 495
497: 386(bvec3) Load 448(bv)
498: 386(bvec3) VectorShuffle 497 496 3 4 2
Store 448(bv) 498
499: 49(ivec3) Load 317(u16v)
500: 15(int) Load 319(u16)
501: 49(ivec3) CompositeConstruct 500 500 500
502: 386(bvec3) INotEqual 499 501
Store 448(bv) 502
503: 186(ivec2) Load 303(i16v)
504: 18(int) Load 309(i16)
505: 186(ivec2) CompositeConstruct 504 504
506: 189(bvec2) INotEqual 503 505
507: 386(bvec3) Load 448(bv)
508: 386(bvec3) VectorShuffle 507 506 3 4 2
Store 448(bv) 508
305(i16v): 188(ptr) Variable Function
311(i16): 35(ptr) Variable Function
319(u16v): 50(ptr) Variable Function
321(u16): 15(ptr) Variable Function
393(f16v): 392(ptr) Variable Function
396(exp): 395(ptr) Variable Function
418(packi): 158(ptr) Variable Function
423(packu): 147(ptr) Variable Function
432(packi64): 431(ptr) Variable Function
441(packu64): 440(ptr) Variable Function
450(bv): 449(ptr) Variable Function
306: 187(ivec2) Load 305(i16v)
307: 187(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 306
Store 305(i16v) 307
308: 187(ivec2) Load 305(i16v)
309: 187(ivec2) ExtInst 1(GLSL.std.450) 7(SSign) 308
Store 305(i16v) 309
310: 187(ivec2) Load 305(i16v)
312: 17(int) Load 311(i16)
313: 187(ivec2) CompositeConstruct 312 312
314: 187(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 310 313
Store 305(i16v) 314
315: 187(ivec2) Load 305(i16v)
318: 187(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 315 317
Store 305(i16v) 318
320: 49(ivec3) Load 319(u16v)
322: 14(int) Load 321(u16)
323: 49(ivec3) CompositeConstruct 322 322 322
324: 49(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 320 323
Store 319(u16v) 324
325: 49(ivec3) Load 319(u16v)
327: 49(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 325 326
Store 319(u16v) 327
328: 187(ivec2) Load 305(i16v)
329: 17(int) Load 311(i16)
330: 187(ivec2) CompositeConstruct 329 329
331: 187(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 328 330
Store 305(i16v) 331
332: 187(ivec2) Load 305(i16v)
333: 187(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 332 317
Store 305(i16v) 333
334: 49(ivec3) Load 319(u16v)
335: 14(int) Load 321(u16)
336: 49(ivec3) CompositeConstruct 335 335 335
337: 49(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 334 336
Store 319(u16v) 337
338: 49(ivec3) Load 319(u16v)
339: 49(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 338 326
Store 319(u16v) 339
340: 187(ivec2) Load 305(i16v)
341: 17(int) Load 311(i16)
342: 17(int) SNegate 341
343: 17(int) Load 311(i16)
344: 187(ivec2) CompositeConstruct 342 342
345: 187(ivec2) CompositeConstruct 343 343
346: 187(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 340 344 345
Store 305(i16v) 346
347: 187(ivec2) Load 305(i16v)
348: 187(ivec2) Load 305(i16v)
349: 187(ivec2) SNegate 348
350: 187(ivec2) Load 305(i16v)
351: 187(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 347 349 350
Store 305(i16v) 351
352: 49(ivec3) Load 319(u16v)
353: 14(int) Load 321(u16)
354: 14(int) SNegate 353
355: 14(int) Load 321(u16)
356: 49(ivec3) CompositeConstruct 354 354 354
357: 49(ivec3) CompositeConstruct 355 355 355
358: 49(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 352 356 357
Store 319(u16v) 358
359: 49(ivec3) Load 319(u16v)
360: 49(ivec3) Load 319(u16v)
361: 49(ivec3) SNegate 360
362: 49(ivec3) Load 319(u16v)
363: 49(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 359 361 362
Store 319(u16v) 363
364: 35(ptr) AccessChain 305(i16v) 128
365: 17(int) Load 364
366: 35(ptr) AccessChain 305(i16v) 111
367: 17(int) Load 366
369: 17(int) Select 368 367 365
Store 311(i16) 369
370: 17(int) Load 311(i16)
371: 187(ivec2) CompositeConstruct 370 370
372: 17(int) Load 311(i16)
373: 17(int) SNegate 372
374: 187(ivec2) CompositeConstruct 373 373
377: 187(ivec2) Select 376 374 371
Store 305(i16v) 377
378: 15(ptr) AccessChain 319(u16v) 128
379: 14(int) Load 378
380: 15(ptr) AccessChain 319(u16v) 111
381: 14(int) Load 380
382: 14(int) Select 368 381 379
Store 321(u16) 382
383: 14(int) Load 321(u16)
384: 49(ivec3) CompositeConstruct 383 383 383
385: 14(int) Load 321(u16)
386: 14(int) SNegate 385
387: 49(ivec3) CompositeConstruct 386 386 386
390: 49(ivec3) Select 389 387 384
Store 319(u16v) 390
394: 391(fvec3) Load 393(f16v)
398:397(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 394
399: 54(ivec3) CompositeExtract 398 1
Store 396(exp) 399
400: 391(fvec3) CompositeExtract 398 0
Store 393(f16v) 400
401: 391(fvec3) Load 393(f16v)
402: 54(ivec3) Load 396(exp)
403: 391(fvec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 401 402
Store 393(f16v) 403
404: 391(fvec3) Load 393(f16v)
405: 262(fvec2) VectorShuffle 404 404 0 1
406: 187(ivec2) Bitcast 405
Store 305(i16v) 406
408: 407(ptr) AccessChain 393(f16v) 117
409: 261(float) Load 408
410: 14(int) Bitcast 409
411: 15(ptr) AccessChain 319(u16v) 128
Store 411 410
412: 187(ivec2) Load 305(i16v)
413: 262(fvec2) Bitcast 412
414: 391(fvec3) Load 393(f16v)
415: 391(fvec3) VectorShuffle 414 413 3 4 2
Store 393(f16v) 415
416: 49(ivec3) Load 319(u16v)
417: 391(fvec3) Bitcast 416
Store 393(f16v) 417
419: 187(ivec2) Load 305(i16v)
420: 28(int) Bitcast 419
Store 418(packi) 420
421: 28(int) Load 418(packi)
422: 187(ivec2) Bitcast 421
Store 305(i16v) 422
424: 49(ivec3) Load 319(u16v)
425: 198(ivec2) VectorShuffle 424 424 0 1
426: 18(int) Bitcast 425
Store 423(packu) 426
427: 18(int) Load 423(packu)
428: 198(ivec2) Bitcast 427
429: 49(ivec3) Load 319(u16v)
430: 49(ivec3) VectorShuffle 429 428 3 4 2
Store 319(u16v) 430
433: 17(int) Load 311(i16)
435: 434(ivec4) CompositeConstruct 433 433 433 433
436: 273(int) Bitcast 435
Store 432(packi64) 436
437: 273(int) Load 432(packi64)
438: 434(ivec4) Bitcast 437
439: 187(ivec2) VectorShuffle 438 438 0 1
Store 305(i16v) 439
442: 14(int) Load 321(u16)
444: 443(ivec4) CompositeConstruct 442 442 442 442
445: 287(int) Bitcast 444
Store 441(packu64) 445
446: 287(int) Load 441(packu64)
447: 443(ivec4) Bitcast 446
448: 49(ivec3) VectorShuffle 447 447 0 1 2
Store 319(u16v) 448
451: 49(ivec3) Load 319(u16v)
452: 14(int) Load 321(u16)
453: 49(ivec3) CompositeConstruct 452 452 452
454: 388(bvec3) ULessThan 451 453
Store 450(bv) 454
455: 187(ivec2) Load 305(i16v)
456: 17(int) Load 311(i16)
457: 187(ivec2) CompositeConstruct 456 456
458: 190(bvec2) SLessThan 455 457
459: 388(bvec3) Load 450(bv)
460: 388(bvec3) VectorShuffle 459 458 3 4 2
Store 450(bv) 460
461: 49(ivec3) Load 319(u16v)
462: 14(int) Load 321(u16)
463: 49(ivec3) CompositeConstruct 462 462 462
464: 388(bvec3) ULessThanEqual 461 463
Store 450(bv) 464
465: 187(ivec2) Load 305(i16v)
466: 17(int) Load 311(i16)
467: 187(ivec2) CompositeConstruct 466 466
468: 190(bvec2) SLessThanEqual 465 467
469: 388(bvec3) Load 450(bv)
470: 388(bvec3) VectorShuffle 469 468 3 4 2
Store 450(bv) 470
471: 49(ivec3) Load 319(u16v)
472: 14(int) Load 321(u16)
473: 49(ivec3) CompositeConstruct 472 472 472
474: 388(bvec3) UGreaterThan 471 473
Store 450(bv) 474
475: 187(ivec2) Load 305(i16v)
476: 17(int) Load 311(i16)
477: 187(ivec2) CompositeConstruct 476 476
478: 190(bvec2) SGreaterThan 475 477
479: 388(bvec3) Load 450(bv)
480: 388(bvec3) VectorShuffle 479 478 3 4 2
Store 450(bv) 480
481: 49(ivec3) Load 319(u16v)
482: 14(int) Load 321(u16)
483: 49(ivec3) CompositeConstruct 482 482 482
484: 388(bvec3) UGreaterThanEqual 481 483
Store 450(bv) 484
485: 187(ivec2) Load 305(i16v)
486: 17(int) Load 311(i16)
487: 187(ivec2) CompositeConstruct 486 486
488: 190(bvec2) SGreaterThanEqual 485 487
489: 388(bvec3) Load 450(bv)
490: 388(bvec3) VectorShuffle 489 488 3 4 2
Store 450(bv) 490
491: 49(ivec3) Load 319(u16v)
492: 14(int) Load 321(u16)
493: 49(ivec3) CompositeConstruct 492 492 492
494: 388(bvec3) IEqual 491 493
Store 450(bv) 494
495: 187(ivec2) Load 305(i16v)
496: 17(int) Load 311(i16)
497: 187(ivec2) CompositeConstruct 496 496
498: 190(bvec2) IEqual 495 497
499: 388(bvec3) Load 450(bv)
500: 388(bvec3) VectorShuffle 499 498 3 4 2
Store 450(bv) 500
501: 49(ivec3) Load 319(u16v)
502: 14(int) Load 321(u16)
503: 49(ivec3) CompositeConstruct 502 502 502
504: 388(bvec3) INotEqual 501 503
Store 450(bv) 504
505: 187(ivec2) Load 305(i16v)
506: 17(int) Load 311(i16)
507: 187(ivec2) CompositeConstruct 506 506
508: 190(bvec2) INotEqual 505 507
509: 388(bvec3) Load 450(bv)
510: 388(bvec3) VectorShuffle 509 508 3 4 2
Store 450(bv) 510
Return
FunctionEnd
spv.int16.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 520
// Id's are bound by 525
Capability Shader
Capability Float16
......@@ -40,63 +40,63 @@ spv.int16.frag
Name 46 "indexable"
Name 51 "i32v"
Name 54 "i16v"
Name 57 "u16v"
Name 65 "u32v"
Name 72 "i64v"
Name 78 "u64v"
Name 92 "f16v"
Name 98 "f32v"
Name 104 "f64v"
Name 152 "i8v"
Name 159 "u8v"
Name 172 "bv"
Name 192 "u16v"
Name 197 "i16"
Name 216 "i"
Name 223 "uv"
Name 239 "i64"
Name 278 "b"
Name 340 "i16v"
Name 343 "i16"
Name 353 "u16v"
Name 355 "u16"
Name 425 "i32"
Name 428 "i64"
Name 431 "i16v4"
Name 434 "u32"
Name 435 "u16v2"
Name 439 "u64"
Name 442 "u16v4"
Name 454 "bv"
Name 515 "Block"
MemberName 515(Block) 0 "i16"
MemberName 515(Block) 1 "i16v2"
MemberName 515(Block) 2 "i16v3"
MemberName 515(Block) 3 "i16v4"
MemberName 515(Block) 4 "u16"
MemberName 515(Block) 5 "u16v2"
MemberName 515(Block) 6 "u16v3"
MemberName 515(Block) 7 "u16v4"
Name 517 "block"
Name 518 "si16"
Name 519 "su16"
Name 59 "u16v"
Name 67 "u32v"
Name 74 "i64v"
Name 80 "u64v"
Name 94 "f16v"
Name 100 "f32v"
Name 106 "f64v"
Name 154 "i8v"
Name 163 "u8v"
Name 176 "bv"
Name 195 "u16v"
Name 200 "i16"
Name 220 "i"
Name 227 "uv"
Name 243 "i64"
Name 283 "b"
Name 345 "i16v"
Name 348 "i16"
Name 358 "u16v"
Name 360 "u16"
Name 430 "i32"
Name 433 "i64"
Name 436 "i16v4"
Name 439 "u32"
Name 440 "u16v2"
Name 444 "u64"
Name 447 "u16v4"
Name 459 "bv"
Name 520 "Block"
MemberName 520(Block) 0 "i16"
MemberName 520(Block) 1 "i16v2"
MemberName 520(Block) 2 "i16v3"
MemberName 520(Block) 3 "i16v4"
MemberName 520(Block) 4 "u16"
MemberName 520(Block) 5 "u16v2"
MemberName 520(Block) 6 "u16v3"
MemberName 520(Block) 7 "u16v4"
Name 522 "block"
Name 523 "si16"
Name 524 "su16"
MemberDecorate 24(Uniforms) 0 Offset 0
Decorate 24(Uniforms) Block
Decorate 26 DescriptorSet 0
Decorate 26 Binding 0
MemberDecorate 515(Block) 0 Offset 0
MemberDecorate 515(Block) 1 Offset 4
MemberDecorate 515(Block) 2 Offset 8
MemberDecorate 515(Block) 3 Offset 16
MemberDecorate 515(Block) 4 Offset 24
MemberDecorate 515(Block) 5 Offset 28
MemberDecorate 515(Block) 6 Offset 32
MemberDecorate 515(Block) 7 Offset 40
Decorate 515(Block) Block
Decorate 517(block) DescriptorSet 0
Decorate 517(block) Binding 1
Decorate 518(si16) SpecId 100
Decorate 519(su16) SpecId 101
MemberDecorate 520(Block) 0 Offset 0
MemberDecorate 520(Block) 1 Offset 4
MemberDecorate 520(Block) 2 Offset 8
MemberDecorate 520(Block) 3 Offset 16
MemberDecorate 520(Block) 4 Offset 24
MemberDecorate 520(Block) 5 Offset 28
MemberDecorate 520(Block) 6 Offset 32
MemberDecorate 520(Block) 7 Offset 40
Decorate 520(Block) Block
Decorate 522(block) DescriptorSet 0
Decorate 522(block) Binding 1
Decorate 523(si16) SpecId 100
Decorate 524(su16) SpecId 101
2: TypeVoid
3: TypeFunction 2
14: TypeInt 16 1
......@@ -116,8 +116,8 @@ spv.int16.frag
29: TypePointer Uniform 17(int)
32: TypePointer Function 19
36: TypeInt 16 0
37: TypePointer Function 27(int)
39: TypeArray 27(int) 18
37: TypePointer Function 36(int)
39: TypeArray 36(int) 18
40: 36(int) Constant 65535
41: 36(int) Constant 32767
42: 39 ConstantComposite 40 40 41
......@@ -126,68 +126,73 @@ spv.int16.frag
50: TypePointer Function 49(ivec2)
52: TypeVector 14(int) 2
53: TypePointer Function 52(ivec2)
63: TypeVector 17(int) 2
64: TypePointer Function 63(ivec2)
69: TypeInt 64 1
70: TypeVector 69(int) 2
71: TypePointer Function 70(ivec2)
75: TypeInt 64 0
76: TypeVector 75(int) 2
77: TypePointer Function 76(ivec2)
89: TypeFloat 16
90: TypeVector 89(float) 2
91: TypePointer Function 90(fvec2)
95: TypeFloat 32
96: TypeVector 95(float) 2
97: TypePointer Function 96(fvec2)
101: TypeFloat 64
102: TypeVector 101(float) 2
103: TypePointer Function 102(fvec2)
149: TypeInt 8 1
150: TypeVector 149(int) 2
151: TypePointer Function 150(ivec2)
158: TypeInt 8 0
169: TypeBool
170: TypeVector 169(bool) 2
171: TypePointer Function 170(bvec2)
174: 14(int) Constant 0
175: 14(int) Constant 1
176: 52(ivec2) ConstantComposite 174 174
177: 52(ivec2) ConstantComposite 175 175
180: 36(int) Constant 0
181: 36(int) Constant 1
182: TypeVector 36(int) 2
183: 182(ivec2) ConstantComposite 180 180
184: 182(ivec2) ConstantComposite 181 181
190: TypeVector 27(int) 3
191: TypePointer Function 190(ivec3)
194: TypeVector 14(int) 3
221: TypeVector 17(int) 3
222: TypePointer Function 221(ivec3)
238: TypePointer Function 69(int)
260: 17(int) Constant 1
266: 17(int) Constant 2
277: TypePointer Function 169(bool)
279: 17(int) Constant 0
293: TypePointer Function 17(int)
351: 52(ivec2) ConstantComposite 21 21
360: 190(ivec3) ConstantComposite 180 180 180
402: 169(bool) ConstantTrue
409: 169(bool) ConstantFalse
410: 170(bvec2) ConstantComposite 409 409
422: TypeVector 169(bool) 3
423: 422(bvec3) ConstantComposite 409 409 409
429: TypeVector 14(int) 4
430: TypePointer Function 429(ivec4)
438: TypePointer Function 75(int)
440: TypeVector 27(int) 4
441: TypePointer Function 440(ivec4)
453: TypePointer Function 422(bvec3)
515(Block): TypeStruct 14(int) 52(ivec2) 194(ivec3) 429(ivec4) 27(int) 49(ivec2) 190(ivec3) 440(ivec4)
516: TypePointer Uniform 515(Block)
517(block): 516(ptr) Variable Uniform
518(si16): 14(int) SpecConstant 4294967286
519(su16): 36(int) SpecConstant 20
57: TypeVector 36(int) 2
58: TypePointer Function 57(ivec2)
65: TypeVector 17(int) 2
66: TypePointer Function 65(ivec2)
71: TypeInt 64 1
72: TypeVector 71(int) 2
73: TypePointer Function 72(ivec2)
77: TypeInt 64 0
78: TypeVector 77(int) 2
79: TypePointer Function 78(ivec2)
91: TypeFloat 16
92: TypeVector 91(float) 2
93: TypePointer Function 92(fvec2)
97: TypeFloat 32
98: TypeVector 97(float) 2
99: TypePointer Function 98(fvec2)
103: TypeFloat 64
104: TypeVector 103(float) 2
105: TypePointer Function 104(fvec2)
151: TypeInt 8 1
152: TypeVector 151(int) 2
153: TypePointer Function 152(ivec2)
160: TypeInt 8 0
161: TypeVector 160(int) 2
162: TypePointer Function 161(ivec2)
173: TypeBool
174: TypeVector 173(bool) 2
175: TypePointer Function 174(bvec2)
178: 14(int) Constant 0
179: 14(int) Constant 1
180: 52(ivec2) ConstantComposite 178 178
181: 52(ivec2) ConstantComposite 179 179
184: 36(int) Constant 0
185: 36(int) Constant 1
186: 57(ivec2) ConstantComposite 184 184
187: 57(ivec2) ConstantComposite 185 185
193: TypeVector 36(int) 3
194: TypePointer Function 193(ivec3)
197: TypeVector 14(int) 3
219: TypePointer Function 27(int)
225: TypeVector 17(int) 3
226: TypePointer Function 225(ivec3)
242: TypePointer Function 71(int)
264: 17(int) Constant 1
270: 17(int) Constant 2
275: TypeVector 27(int) 3
282: TypePointer Function 173(bool)
284: 17(int) Constant 0
298: TypePointer Function 17(int)
356: 52(ivec2) ConstantComposite 21 21
365: 193(ivec3) ConstantComposite 184 184 184
407: 173(bool) ConstantTrue
414: 173(bool) ConstantFalse
415: 174(bvec2) ConstantComposite 414 414
427: TypeVector 173(bool) 3
428: 427(bvec3) ConstantComposite 414 414 414
434: TypeVector 14(int) 4
435: TypePointer Function 434(ivec4)
443: TypePointer Function 77(int)
445: TypeVector 36(int) 4
446: TypePointer Function 445(ivec4)
458: TypePointer Function 427(bvec3)
520(Block): TypeStruct 14(int) 52(ivec2) 197(ivec3) 434(ivec4) 36(int) 57(ivec2) 193(ivec3) 445(ivec4)
521: TypePointer Uniform 520(Block)
522(block): 521(ptr) Variable Uniform
523(si16): 14(int) SpecConstant 4294967286
524(su16): 36(int) SpecConstant 20
4(main): 2 Function None 3
5: Label
Return
......@@ -208,7 +213,7 @@ spv.int16.frag
44: 17(int) Load 43
Store 46(indexable) 42
47: 37(ptr) AccessChain 46(indexable) 44
48: 27(int) Load 47
48: 36(int) Load 47
Store 38(u16) 48
Return
FunctionEnd
......@@ -216,526 +221,526 @@ spv.int16.frag
9: Label
51(i32v): 50(ptr) Variable Function
54(i16v): 53(ptr) Variable Function
57(u16v): 50(ptr) Variable Function
65(u32v): 64(ptr) Variable Function
72(i64v): 71(ptr) Variable Function
78(u64v): 77(ptr) Variable Function
92(f16v): 91(ptr) Variable Function
98(f32v): 97(ptr) Variable Function
104(f64v): 103(ptr) Variable Function
152(i8v): 151(ptr) Variable Function
159(u8v): 53(ptr) Variable Function
172(bv): 171(ptr) Variable Function
59(u16v): 58(ptr) Variable Function
67(u32v): 66(ptr) Variable Function
74(i64v): 73(ptr) Variable Function
80(u64v): 79(ptr) Variable Function
94(f16v): 93(ptr) Variable Function
100(f32v): 99(ptr) Variable Function
106(f64v): 105(ptr) Variable Function
154(i8v): 153(ptr) Variable Function
163(u8v): 162(ptr) Variable Function
176(bv): 175(ptr) Variable Function
55: 52(ivec2) Load 54(i16v)
56: 49(ivec2) SConvert 55
Store 51(i32v) 56
58: 49(ivec2) Load 57(u16v)
59: 49(ivec2) UConvert 58
60: 49(ivec2) Bitcast 59
Store 51(i32v) 60
61: 52(ivec2) Load 54(i16v)
60: 57(ivec2) Load 59(u16v)
61: 49(ivec2) UConvert 60
62: 49(ivec2) Bitcast 61
Store 57(u16v) 62
66: 52(ivec2) Load 54(i16v)
67: 49(ivec2) SConvert 66
68: 63(ivec2) Bitcast 67
Store 65(u32v) 68
73: 52(ivec2) Load 54(i16v)
74: 70(ivec2) SConvert 73
Store 72(i64v) 74
79: 52(ivec2) Load 54(i16v)
80: 70(ivec2) SConvert 79
81: 76(ivec2) Bitcast 80
Store 78(u64v) 81
82: 49(ivec2) Load 57(u16v)
83: 63(ivec2) UConvert 82
Store 65(u32v) 83
84: 49(ivec2) Load 57(u16v)
85: 70(ivec2) UConvert 84
86: 70(ivec2) Bitcast 85
Store 72(i64v) 86
87: 49(ivec2) Load 57(u16v)
88: 76(ivec2) UConvert 87
Store 78(u64v) 88
93: 52(ivec2) Load 54(i16v)
94: 90(fvec2) ConvertSToF 93
Store 92(f16v) 94
99: 52(ivec2) Load 54(i16v)
100: 96(fvec2) ConvertSToF 99
Store 98(f32v) 100
105: 52(ivec2) Load 54(i16v)
106: 102(fvec2) ConvertSToF 105
Store 104(f64v) 106
107: 49(ivec2) Load 57(u16v)
108: 90(fvec2) ConvertUToF 107
Store 92(f16v) 108
109: 49(ivec2) Load 57(u16v)
110: 96(fvec2) ConvertUToF 109
Store 98(f32v) 110
111: 49(ivec2) Load 57(u16v)
112: 102(fvec2) ConvertUToF 111
Store 104(f64v) 112
113: 52(ivec2) Load 54(i16v)
114: 49(ivec2) SConvert 113
Store 51(i32v) 114
115: 49(ivec2) Load 57(u16v)
116: 49(ivec2) UConvert 115
117: 49(ivec2) Bitcast 116
Store 51(i32v) 117
118: 52(ivec2) Load 54(i16v)
Store 51(i32v) 62
63: 52(ivec2) Load 54(i16v)
64: 57(ivec2) Bitcast 63
Store 59(u16v) 64
68: 52(ivec2) Load 54(i16v)
69: 49(ivec2) SConvert 68
70: 65(ivec2) Bitcast 69
Store 67(u32v) 70
75: 52(ivec2) Load 54(i16v)
76: 72(ivec2) SConvert 75
Store 74(i64v) 76
81: 52(ivec2) Load 54(i16v)
82: 72(ivec2) SConvert 81
83: 78(ivec2) Bitcast 82
Store 80(u64v) 83
84: 57(ivec2) Load 59(u16v)
85: 65(ivec2) UConvert 84
Store 67(u32v) 85
86: 57(ivec2) Load 59(u16v)
87: 72(ivec2) UConvert 86
88: 72(ivec2) Bitcast 87
Store 74(i64v) 88
89: 57(ivec2) Load 59(u16v)
90: 78(ivec2) UConvert 89
Store 80(u64v) 90
95: 52(ivec2) Load 54(i16v)
96: 92(fvec2) ConvertSToF 95
Store 94(f16v) 96
101: 52(ivec2) Load 54(i16v)
102: 98(fvec2) ConvertSToF 101
Store 100(f32v) 102
107: 52(ivec2) Load 54(i16v)
108: 104(fvec2) ConvertSToF 107
Store 106(f64v) 108
109: 57(ivec2) Load 59(u16v)
110: 92(fvec2) ConvertUToF 109
Store 94(f16v) 110
111: 57(ivec2) Load 59(u16v)
112: 98(fvec2) ConvertUToF 111
Store 100(f32v) 112
113: 57(ivec2) Load 59(u16v)
114: 104(fvec2) ConvertUToF 113
Store 106(f64v) 114
115: 52(ivec2) Load 54(i16v)
116: 49(ivec2) SConvert 115
Store 51(i32v) 116
117: 57(ivec2) Load 59(u16v)
118: 49(ivec2) UConvert 117
119: 49(ivec2) Bitcast 118
Store 57(u16v) 119
Store 51(i32v) 119
120: 52(ivec2) Load 54(i16v)
121: 49(ivec2) SConvert 120
122: 63(ivec2) Bitcast 121
Store 65(u32v) 122
123: 52(ivec2) Load 54(i16v)
124: 70(ivec2) SConvert 123
Store 72(i64v) 124
121: 57(ivec2) Bitcast 120
Store 59(u16v) 121
122: 52(ivec2) Load 54(i16v)
123: 49(ivec2) SConvert 122
124: 65(ivec2) Bitcast 123
Store 67(u32v) 124
125: 52(ivec2) Load 54(i16v)
126: 70(ivec2) SConvert 125
127: 76(ivec2) Bitcast 126
Store 78(u64v) 127
128: 49(ivec2) Load 57(u16v)
129: 63(ivec2) UConvert 128
Store 65(u32v) 129
130: 49(ivec2) Load 57(u16v)
131: 70(ivec2) UConvert 130
132: 70(ivec2) Bitcast 131
Store 72(i64v) 132
133: 49(ivec2) Load 57(u16v)
134: 70(ivec2) UConvert 133
135: 70(ivec2) Bitcast 134
136: 76(ivec2) Bitcast 135
Store 78(u64v) 136
137: 52(ivec2) Load 54(i16v)
138: 90(fvec2) ConvertSToF 137
Store 92(f16v) 138
126: 72(ivec2) SConvert 125
Store 74(i64v) 126
127: 52(ivec2) Load 54(i16v)
128: 72(ivec2) SConvert 127
129: 78(ivec2) Bitcast 128
Store 80(u64v) 129
130: 57(ivec2) Load 59(u16v)
131: 65(ivec2) UConvert 130
Store 67(u32v) 131
132: 57(ivec2) Load 59(u16v)
133: 72(ivec2) UConvert 132
134: 72(ivec2) Bitcast 133
Store 74(i64v) 134
135: 57(ivec2) Load 59(u16v)
136: 72(ivec2) UConvert 135
137: 72(ivec2) Bitcast 136
138: 78(ivec2) Bitcast 137
Store 80(u64v) 138
139: 52(ivec2) Load 54(i16v)
140: 96(fvec2) ConvertSToF 139
Store 98(f32v) 140
140: 92(fvec2) ConvertSToF 139
Store 94(f16v) 140
141: 52(ivec2) Load 54(i16v)
142: 102(fvec2) ConvertSToF 141
Store 104(f64v) 142
143: 49(ivec2) Load 57(u16v)
144: 90(fvec2) ConvertUToF 143
Store 92(f16v) 144
145: 49(ivec2) Load 57(u16v)
146: 96(fvec2) ConvertUToF 145
Store 98(f32v) 146
147: 49(ivec2) Load 57(u16v)
148: 102(fvec2) ConvertUToF 147
Store 104(f64v) 148
153: 52(ivec2) Load 54(i16v)
154: 150(ivec2) SConvert 153
Store 152(i8v) 154
155: 49(ivec2) Load 57(u16v)
156: 150(ivec2) UConvert 155
157: 150(ivec2) Bitcast 156
Store 152(i8v) 157
160: 52(ivec2) Load 54(i16v)
161: 150(ivec2) SConvert 160
162: 52(ivec2) Bitcast 161
Store 159(u8v) 162
163: 49(ivec2) Load 57(u16v)
164: 52(ivec2) UConvert 163
Store 159(u8v) 164
165: 49(ivec2) Load 57(u16v)
166: 52(ivec2) UConvert 165
167: 52(ivec2) UConvert 166
168: 52(ivec2) Bitcast 167
Store 54(i16v) 168
173: 170(bvec2) Load 172(bv)
178: 52(ivec2) Select 173 177 176
Store 54(i16v) 178
179: 170(bvec2) Load 172(bv)
185: 49(ivec2) Select 179 184 183
Store 57(u16v) 185
186: 52(ivec2) Load 54(i16v)
187: 170(bvec2) INotEqual 186 183
Store 172(bv) 187
188: 49(ivec2) Load 57(u16v)
189: 170(bvec2) INotEqual 188 183
Store 172(bv) 189
142: 98(fvec2) ConvertSToF 141
Store 100(f32v) 142
143: 52(ivec2) Load 54(i16v)
144: 104(fvec2) ConvertSToF 143
Store 106(f64v) 144
145: 57(ivec2) Load 59(u16v)
146: 92(fvec2) ConvertUToF 145
Store 94(f16v) 146
147: 57(ivec2) Load 59(u16v)
148: 98(fvec2) ConvertUToF 147
Store 100(f32v) 148
149: 57(ivec2) Load 59(u16v)
150: 104(fvec2) ConvertUToF 149
Store 106(f64v) 150
155: 52(ivec2) Load 54(i16v)
156: 152(ivec2) SConvert 155
Store 154(i8v) 156
157: 57(ivec2) Load 59(u16v)
158: 152(ivec2) UConvert 157
159: 152(ivec2) Bitcast 158
Store 154(i8v) 159
164: 52(ivec2) Load 54(i16v)
165: 152(ivec2) SConvert 164
166: 161(ivec2) Bitcast 165
Store 163(u8v) 166
167: 57(ivec2) Load 59(u16v)
168: 161(ivec2) UConvert 167
Store 163(u8v) 168
169: 57(ivec2) Load 59(u16v)
170: 161(ivec2) UConvert 169
171: 52(ivec2) UConvert 170
172: 52(ivec2) Bitcast 171
Store 54(i16v) 172
177: 174(bvec2) Load 176(bv)
182: 52(ivec2) Select 177 181 180
Store 54(i16v) 182
183: 174(bvec2) Load 176(bv)
188: 57(ivec2) Select 183 187 186
Store 59(u16v) 188
189: 52(ivec2) Load 54(i16v)
190: 174(bvec2) INotEqual 189 186
Store 176(bv) 190
191: 57(ivec2) Load 59(u16v)
192: 174(bvec2) INotEqual 191 186
Store 176(bv) 192
Return
FunctionEnd
10(operators(): 2 Function None 3
11: Label
192(u16v): 191(ptr) Variable Function
197(i16): 15(ptr) Variable Function
216(i): 37(ptr) Variable Function
223(uv): 222(ptr) Variable Function
239(i64): 238(ptr) Variable Function
278(b): 277(ptr) Variable Function
193: 190(ivec3) Load 192(u16v)
195: 194(ivec3) CompositeConstruct 175 175 175
196: 190(ivec3) IAdd 193 195
Store 192(u16v) 196
198: 14(int) Load 197(i16)
199: 14(int) ISub 198 175
Store 197(i16) 199
200: 14(int) Load 197(i16)
201: 14(int) IAdd 200 175
Store 197(i16) 201
202: 190(ivec3) Load 192(u16v)
203: 194(ivec3) CompositeConstruct 175 175 175
204: 190(ivec3) ISub 202 203
Store 192(u16v) 204
205: 190(ivec3) Load 192(u16v)
206: 190(ivec3) Not 205
Store 192(u16v) 206
207: 14(int) Load 197(i16)
Store 197(i16) 207
208: 190(ivec3) Load 192(u16v)
209: 190(ivec3) SNegate 208
Store 192(u16v) 209
210: 14(int) Load 197(i16)
211: 14(int) Load 197(i16)
212: 14(int) IAdd 211 210
Store 197(i16) 212
213: 190(ivec3) Load 192(u16v)
214: 190(ivec3) Load 192(u16v)
215: 190(ivec3) ISub 214 213
Store 192(u16v) 215
217: 14(int) Load 197(i16)
218: 27(int) SConvert 217
219: 27(int) Load 216(i)
220: 27(int) IMul 219 218
Store 216(i) 220
224: 190(ivec3) Load 192(u16v)
225: 221(ivec3) UConvert 224
226: 221(ivec3) Load 223(uv)
227: 221(ivec3) UDiv 226 225
Store 223(uv) 227
228: 14(int) Load 197(i16)
229: 27(int) SConvert 228
230: 17(int) Bitcast 229
231: 221(ivec3) Load 223(uv)
232: 221(ivec3) CompositeConstruct 230 230 230
233: 221(ivec3) UMod 231 232
Store 223(uv) 233
234: 190(ivec3) Load 192(u16v)
235: 221(ivec3) UConvert 234
236: 221(ivec3) Load 223(uv)
237: 221(ivec3) IAdd 235 236
Store 223(uv) 237
240: 14(int) Load 197(i16)
241: 69(int) SConvert 240
242: 69(int) Load 239(i64)
243: 69(int) ISub 241 242
Store 239(i64) 243
244: 190(ivec3) Load 192(u16v)
245: 221(ivec3) UConvert 244
246: 221(ivec3) Load 223(uv)
247: 221(ivec3) IMul 245 246
Store 223(uv) 247
248: 14(int) Load 197(i16)
249: 69(int) SConvert 248
250: 69(int) Load 239(i64)
251: 69(int) IMul 249 250
Store 239(i64) 251
252: 14(int) Load 197(i16)
253: 27(int) SConvert 252
254: 27(int) Load 216(i)
255: 27(int) SMod 253 254
Store 216(i) 255
256: 14(int) Load 197(i16)
257: 190(ivec3) Load 192(u16v)
258: 194(ivec3) CompositeConstruct 256 256 256
259: 190(ivec3) ShiftLeftLogical 257 258
Store 192(u16v) 259
261: 37(ptr) AccessChain 192(u16v) 260
262: 27(int) Load 261
263: 14(int) Load 197(i16)
264: 14(int) ShiftRightArithmetic 263 262
Store 197(i16) 264
265: 14(int) Load 197(i16)
267: 37(ptr) AccessChain 192(u16v) 266
268: 27(int) Load 267
269: 14(int) ShiftLeftLogical 265 268
Store 197(i16) 269
270: 190(ivec3) Load 192(u16v)
271: 190(ivec3) UConvert 270
272: 190(ivec3) Bitcast 271
273: 27(int) Load 216(i)
274: 190(ivec3) CompositeConstruct 273 273 273
275: 190(ivec3) ShiftLeftLogical 272 274
276: 221(ivec3) Bitcast 275
Store 223(uv) 276
280: 37(ptr) AccessChain 192(u16v) 279
281: 27(int) Load 280
282: 14(int) Load 197(i16)
283: 27(int) Bitcast 282
284: 169(bool) INotEqual 281 283
Store 278(b) 284
285: 14(int) Load 197(i16)
286: 27(int) Bitcast 285
287: 37(ptr) AccessChain 192(u16v) 279
288: 27(int) Load 287
289: 169(bool) IEqual 286 288
Store 278(b) 289
290: 37(ptr) AccessChain 192(u16v) 279
291: 27(int) Load 290
292: 17(int) UConvert 291
294: 293(ptr) AccessChain 223(uv) 260
295: 17(int) Load 294
296: 169(bool) UGreaterThan 292 295
Store 278(b) 296
297: 14(int) Load 197(i16)
298: 27(int) SConvert 297
299: 27(int) Load 216(i)
300: 169(bool) SLessThan 298 299
Store 278(b) 300
301: 37(ptr) AccessChain 192(u16v) 260
302: 27(int) Load 301
303: 17(int) UConvert 302
304: 293(ptr) AccessChain 223(uv) 279
305: 17(int) Load 304
306: 169(bool) UGreaterThanEqual 303 305
Store 278(b) 306
307: 14(int) Load 197(i16)
308: 27(int) SConvert 307
309: 27(int) Load 216(i)
310: 169(bool) SLessThanEqual 308 309
Store 278(b) 310
311: 14(int) Load 197(i16)
312: 27(int) SConvert 311
313: 17(int) Bitcast 312
314: 221(ivec3) Load 223(uv)
315: 221(ivec3) CompositeConstruct 313 313 313
316: 221(ivec3) BitwiseOr 314 315
Store 223(uv) 316
317: 14(int) Load 197(i16)
318: 27(int) SConvert 317
319: 27(int) Load 216(i)
320: 27(int) BitwiseOr 318 319
Store 216(i) 320
321: 14(int) Load 197(i16)
322: 69(int) SConvert 321
323: 69(int) Load 239(i64)
324: 69(int) BitwiseAnd 323 322
Store 239(i64) 324
325: 190(ivec3) Load 192(u16v)
326: 221(ivec3) UConvert 325
327: 221(ivec3) Load 223(uv)
328: 221(ivec3) BitwiseAnd 326 327
Store 223(uv) 328
329: 14(int) Load 197(i16)
330: 27(int) SConvert 329
331: 17(int) Bitcast 330
332: 221(ivec3) Load 223(uv)
333: 221(ivec3) CompositeConstruct 331 331 331
334: 221(ivec3) BitwiseXor 332 333
Store 223(uv) 334
335: 190(ivec3) Load 192(u16v)
336: 14(int) Load 197(i16)
337: 27(int) Bitcast 336
338: 190(ivec3) CompositeConstruct 337 337 337
339: 190(ivec3) BitwiseXor 335 338
Store 192(u16v) 339
195(u16v): 194(ptr) Variable Function
200(i16): 15(ptr) Variable Function
220(i): 219(ptr) Variable Function
227(uv): 226(ptr) Variable Function
243(i64): 242(ptr) Variable Function
283(b): 282(ptr) Variable Function
196: 193(ivec3) Load 195(u16v)
198: 197(ivec3) CompositeConstruct 179 179 179
199: 193(ivec3) IAdd 196 198
Store 195(u16v) 199
201: 14(int) Load 200(i16)
202: 14(int) ISub 201 179
Store 200(i16) 202
203: 14(int) Load 200(i16)
204: 14(int) IAdd 203 179
Store 200(i16) 204
205: 193(ivec3) Load 195(u16v)
206: 197(ivec3) CompositeConstruct 179 179 179
207: 193(ivec3) ISub 205 206
Store 195(u16v) 207
208: 193(ivec3) Load 195(u16v)
209: 193(ivec3) Not 208
Store 195(u16v) 209
210: 14(int) Load 200(i16)
Store 200(i16) 210
211: 193(ivec3) Load 195(u16v)
212: 193(ivec3) SNegate 211
Store 195(u16v) 212
213: 14(int) Load 200(i16)
214: 14(int) Load 200(i16)
215: 14(int) IAdd 214 213
Store 200(i16) 215
216: 193(ivec3) Load 195(u16v)
217: 193(ivec3) Load 195(u16v)
218: 193(ivec3) ISub 217 216
Store 195(u16v) 218
221: 14(int) Load 200(i16)
222: 27(int) SConvert 221
223: 27(int) Load 220(i)
224: 27(int) IMul 223 222
Store 220(i) 224
228: 193(ivec3) Load 195(u16v)
229: 225(ivec3) UConvert 228
230: 225(ivec3) Load 227(uv)
231: 225(ivec3) UDiv 230 229
Store 227(uv) 231
232: 14(int) Load 200(i16)
233: 27(int) SConvert 232
234: 17(int) Bitcast 233
235: 225(ivec3) Load 227(uv)
236: 225(ivec3) CompositeConstruct 234 234 234
237: 225(ivec3) UMod 235 236
Store 227(uv) 237
238: 193(ivec3) Load 195(u16v)
239: 225(ivec3) UConvert 238
240: 225(ivec3) Load 227(uv)
241: 225(ivec3) IAdd 239 240
Store 227(uv) 241
244: 14(int) Load 200(i16)
245: 71(int) SConvert 244
246: 71(int) Load 243(i64)
247: 71(int) ISub 245 246
Store 243(i64) 247
248: 193(ivec3) Load 195(u16v)
249: 225(ivec3) UConvert 248
250: 225(ivec3) Load 227(uv)
251: 225(ivec3) IMul 249 250
Store 227(uv) 251
252: 14(int) Load 200(i16)
253: 71(int) SConvert 252
254: 71(int) Load 243(i64)
255: 71(int) IMul 253 254
Store 243(i64) 255
256: 14(int) Load 200(i16)
257: 27(int) SConvert 256
258: 27(int) Load 220(i)
259: 27(int) SMod 257 258
Store 220(i) 259
260: 14(int) Load 200(i16)
261: 193(ivec3) Load 195(u16v)
262: 197(ivec3) CompositeConstruct 260 260 260
263: 193(ivec3) ShiftLeftLogical 261 262
Store 195(u16v) 263
265: 37(ptr) AccessChain 195(u16v) 264
266: 36(int) Load 265
267: 14(int) Load 200(i16)
268: 14(int) ShiftRightArithmetic 267 266
Store 200(i16) 268
269: 14(int) Load 200(i16)
271: 37(ptr) AccessChain 195(u16v) 270
272: 36(int) Load 271
273: 14(int) ShiftLeftLogical 269 272
Store 200(i16) 273
274: 193(ivec3) Load 195(u16v)
276: 275(ivec3) UConvert 274
277: 275(ivec3) Bitcast 276
278: 27(int) Load 220(i)
279: 275(ivec3) CompositeConstruct 278 278 278
280: 275(ivec3) ShiftLeftLogical 277 279
281: 225(ivec3) Bitcast 280
Store 227(uv) 281
285: 37(ptr) AccessChain 195(u16v) 284
286: 36(int) Load 285
287: 14(int) Load 200(i16)
288: 36(int) Bitcast 287
289: 173(bool) INotEqual 286 288
Store 283(b) 289
290: 14(int) Load 200(i16)
291: 36(int) Bitcast 290
292: 37(ptr) AccessChain 195(u16v) 284
293: 36(int) Load 292
294: 173(bool) IEqual 291 293
Store 283(b) 294
295: 37(ptr) AccessChain 195(u16v) 284
296: 36(int) Load 295
297: 17(int) UConvert 296
299: 298(ptr) AccessChain 227(uv) 264
300: 17(int) Load 299
301: 173(bool) UGreaterThan 297 300
Store 283(b) 301
302: 14(int) Load 200(i16)
303: 27(int) SConvert 302
304: 27(int) Load 220(i)
305: 173(bool) SLessThan 303 304
Store 283(b) 305
306: 37(ptr) AccessChain 195(u16v) 264
307: 36(int) Load 306
308: 17(int) UConvert 307
309: 298(ptr) AccessChain 227(uv) 284
310: 17(int) Load 309
311: 173(bool) UGreaterThanEqual 308 310
Store 283(b) 311
312: 14(int) Load 200(i16)
313: 27(int) SConvert 312
314: 27(int) Load 220(i)
315: 173(bool) SLessThanEqual 313 314
Store 283(b) 315
316: 14(int) Load 200(i16)
317: 27(int) SConvert 316
318: 17(int) Bitcast 317
319: 225(ivec3) Load 227(uv)
320: 225(ivec3) CompositeConstruct 318 318 318
321: 225(ivec3) BitwiseOr 319 320
Store 227(uv) 321
322: 14(int) Load 200(i16)
323: 27(int) SConvert 322
324: 27(int) Load 220(i)
325: 27(int) BitwiseOr 323 324
Store 220(i) 325
326: 14(int) Load 200(i16)
327: 71(int) SConvert 326
328: 71(int) Load 243(i64)
329: 71(int) BitwiseAnd 328 327
Store 243(i64) 329
330: 193(ivec3) Load 195(u16v)
331: 225(ivec3) UConvert 330
332: 225(ivec3) Load 227(uv)
333: 225(ivec3) BitwiseAnd 331 332
Store 227(uv) 333
334: 14(int) Load 200(i16)
335: 27(int) SConvert 334
336: 17(int) Bitcast 335
337: 225(ivec3) Load 227(uv)
338: 225(ivec3) CompositeConstruct 336 336 336
339: 225(ivec3) BitwiseXor 337 338
Store 227(uv) 339
340: 193(ivec3) Load 195(u16v)
341: 14(int) Load 200(i16)
342: 36(int) Bitcast 341
343: 193(ivec3) CompositeConstruct 342 342 342
344: 193(ivec3) BitwiseXor 340 343
Store 195(u16v) 344
Return
FunctionEnd
12(builtinFuncs(): 2 Function None 3
13: Label
340(i16v): 53(ptr) Variable Function
343(i16): 15(ptr) Variable Function
353(u16v): 191(ptr) Variable Function
355(u16): 37(ptr) Variable Function
425(i32): 37(ptr) Variable Function
428(i64): 238(ptr) Variable Function
431(i16v4): 430(ptr) Variable Function
434(u32): 293(ptr) Variable Function
435(u16v2): 50(ptr) Variable Function
439(u64): 438(ptr) Variable Function
442(u16v4): 441(ptr) Variable Function
454(bv): 453(ptr) Variable Function
341: 52(ivec2) Load 340(i16v)
342: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 341
Store 340(i16v) 342
344: 14(int) Load 343(i16)
345: 14(int) ExtInst 1(GLSL.std.450) 7(SSign) 344
Store 343(i16) 345
346: 52(ivec2) Load 340(i16v)
347: 14(int) Load 343(i16)
348: 52(ivec2) CompositeConstruct 347 347
349: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 346 348
Store 340(i16v) 349
350: 52(ivec2) Load 340(i16v)
352: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 350 351
Store 340(i16v) 352
354: 190(ivec3) Load 353(u16v)
356: 27(int) Load 355(u16)
357: 190(ivec3) CompositeConstruct 356 356 356
358: 190(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 354 357
Store 353(u16v) 358
359: 190(ivec3) Load 353(u16v)
361: 190(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 359 360
Store 353(u16v) 361
362: 52(ivec2) Load 340(i16v)
363: 14(int) Load 343(i16)
364: 52(ivec2) CompositeConstruct 363 363
365: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 362 364
Store 340(i16v) 365
366: 52(ivec2) Load 340(i16v)
367: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 366 351
Store 340(i16v) 367
368: 190(ivec3) Load 353(u16v)
369: 27(int) Load 355(u16)
370: 190(ivec3) CompositeConstruct 369 369 369
371: 190(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 368 370
Store 353(u16v) 371
372: 190(ivec3) Load 353(u16v)
373: 190(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 372 360
Store 353(u16v) 373
374: 52(ivec2) Load 340(i16v)
375: 14(int) Load 343(i16)
376: 14(int) SNegate 375
377: 14(int) Load 343(i16)
378: 52(ivec2) CompositeConstruct 376 376
379: 52(ivec2) CompositeConstruct 377 377
380: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 374 378 379
Store 340(i16v) 380
381: 52(ivec2) Load 340(i16v)
382: 52(ivec2) Load 340(i16v)
383: 52(ivec2) SNegate 382
384: 52(ivec2) Load 340(i16v)
385: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 381 383 384
Store 340(i16v) 385
386: 190(ivec3) Load 353(u16v)
387: 27(int) Load 355(u16)
388: 27(int) SNegate 387
389: 27(int) Load 355(u16)
390: 190(ivec3) CompositeConstruct 388 388 388
391: 190(ivec3) CompositeConstruct 389 389 389
392: 190(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 386 390 391
Store 353(u16v) 392
393: 190(ivec3) Load 353(u16v)
394: 190(ivec3) Load 353(u16v)
395: 190(ivec3) SNegate 394
396: 190(ivec3) Load 353(u16v)
397: 190(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 393 395 396
Store 353(u16v) 397
398: 15(ptr) AccessChain 340(i16v) 279
399: 14(int) Load 398
400: 15(ptr) AccessChain 340(i16v) 260
401: 14(int) Load 400
403: 14(int) Select 402 401 399
Store 343(i16) 403
404: 14(int) Load 343(i16)
405: 52(ivec2) CompositeConstruct 404 404
406: 14(int) Load 343(i16)
407: 14(int) SNegate 406
408: 52(ivec2) CompositeConstruct 407 407
411: 52(ivec2) Select 410 408 405
Store 340(i16v) 411
412: 37(ptr) AccessChain 353(u16v) 279
413: 27(int) Load 412
414: 37(ptr) AccessChain 353(u16v) 260
415: 27(int) Load 414
416: 27(int) Select 402 415 413
Store 355(u16) 416
417: 27(int) Load 355(u16)
418: 190(ivec3) CompositeConstruct 417 417 417
419: 27(int) Load 355(u16)
420: 27(int) SNegate 419
421: 190(ivec3) CompositeConstruct 420 420 420
424: 190(ivec3) Select 423 421 418
Store 353(u16v) 424
426: 52(ivec2) Load 340(i16v)
427: 27(int) Bitcast 426
Store 425(i32) 427
432: 429(ivec4) Load 431(i16v4)
433: 69(int) Bitcast 432
Store 428(i64) 433
436: 49(ivec2) Load 435(u16v2)
437: 17(int) Bitcast 436
Store 434(u32) 437
443: 440(ivec4) Load 442(u16v4)
444: 75(int) Bitcast 443
Store 439(u64) 444
445: 27(int) Load 425(i32)
446: 52(ivec2) Bitcast 445
Store 340(i16v) 446
447: 69(int) Load 428(i64)
448: 429(ivec4) Bitcast 447
Store 431(i16v4) 448
449: 17(int) Load 434(u32)
450: 49(ivec2) Bitcast 449
Store 435(u16v2) 450
451: 75(int) Load 439(u64)
452: 440(ivec4) Bitcast 451
Store 442(u16v4) 452
455: 190(ivec3) Load 353(u16v)
456: 27(int) Load 355(u16)
457: 190(ivec3) CompositeConstruct 456 456 456
458: 422(bvec3) ULessThan 455 457
Store 454(bv) 458
459: 52(ivec2) Load 340(i16v)
460: 14(int) Load 343(i16)
461: 52(ivec2) CompositeConstruct 460 460
462: 170(bvec2) SLessThan 459 461
463: 422(bvec3) Load 454(bv)
464: 422(bvec3) VectorShuffle 463 462 3 4 2
Store 454(bv) 464
465: 190(ivec3) Load 353(u16v)
466: 27(int) Load 355(u16)
467: 190(ivec3) CompositeConstruct 466 466 466
468: 422(bvec3) ULessThanEqual 465 467
Store 454(bv) 468
469: 52(ivec2) Load 340(i16v)
470: 14(int) Load 343(i16)
471: 52(ivec2) CompositeConstruct 470 470
472: 170(bvec2) SLessThanEqual 469 471
473: 422(bvec3) Load 454(bv)
474: 422(bvec3) VectorShuffle 473 472 3 4 2
Store 454(bv) 474
475: 190(ivec3) Load 353(u16v)
476: 27(int) Load 355(u16)
477: 190(ivec3) CompositeConstruct 476 476 476
478: 422(bvec3) UGreaterThan 475 477
Store 454(bv) 478
479: 52(ivec2) Load 340(i16v)
480: 14(int) Load 343(i16)
481: 52(ivec2) CompositeConstruct 480 480
482: 170(bvec2) SGreaterThan 479 481
483: 422(bvec3) Load 454(bv)
484: 422(bvec3) VectorShuffle 483 482 3 4 2
Store 454(bv) 484
485: 190(ivec3) Load 353(u16v)
486: 27(int) Load 355(u16)
487: 190(ivec3) CompositeConstruct 486 486 486
488: 422(bvec3) UGreaterThanEqual 485 487
Store 454(bv) 488
489: 52(ivec2) Load 340(i16v)
490: 14(int) Load 343(i16)
491: 52(ivec2) CompositeConstruct 490 490
492: 170(bvec2) SGreaterThanEqual 489 491
493: 422(bvec3) Load 454(bv)
494: 422(bvec3) VectorShuffle 493 492 3 4 2
Store 454(bv) 494
495: 190(ivec3) Load 353(u16v)
496: 27(int) Load 355(u16)
497: 190(ivec3) CompositeConstruct 496 496 496
498: 422(bvec3) IEqual 495 497
Store 454(bv) 498
499: 52(ivec2) Load 340(i16v)
500: 14(int) Load 343(i16)
501: 52(ivec2) CompositeConstruct 500 500
502: 170(bvec2) IEqual 499 501
503: 422(bvec3) Load 454(bv)
504: 422(bvec3) VectorShuffle 503 502 3 4 2
Store 454(bv) 504
505: 190(ivec3) Load 353(u16v)
506: 27(int) Load 355(u16)
507: 190(ivec3) CompositeConstruct 506 506 506
508: 422(bvec3) INotEqual 505 507
Store 454(bv) 508
509: 52(ivec2) Load 340(i16v)
510: 14(int) Load 343(i16)
511: 52(ivec2) CompositeConstruct 510 510
512: 170(bvec2) INotEqual 509 511
513: 422(bvec3) Load 454(bv)
514: 422(bvec3) VectorShuffle 513 512 3 4 2
Store 454(bv) 514
345(i16v): 53(ptr) Variable Function
348(i16): 15(ptr) Variable Function
358(u16v): 194(ptr) Variable Function
360(u16): 37(ptr) Variable Function
430(i32): 219(ptr) Variable Function
433(i64): 242(ptr) Variable Function
436(i16v4): 435(ptr) Variable Function
439(u32): 298(ptr) Variable Function
440(u16v2): 58(ptr) Variable Function
444(u64): 443(ptr) Variable Function
447(u16v4): 446(ptr) Variable Function
459(bv): 458(ptr) Variable Function
346: 52(ivec2) Load 345(i16v)
347: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 346
Store 345(i16v) 347
349: 14(int) Load 348(i16)
350: 14(int) ExtInst 1(GLSL.std.450) 7(SSign) 349
Store 348(i16) 350
351: 52(ivec2) Load 345(i16v)
352: 14(int) Load 348(i16)
353: 52(ivec2) CompositeConstruct 352 352
354: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 351 353
Store 345(i16v) 354
355: 52(ivec2) Load 345(i16v)
357: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 355 356
Store 345(i16v) 357
359: 193(ivec3) Load 358(u16v)
361: 36(int) Load 360(u16)
362: 193(ivec3) CompositeConstruct 361 361 361
363: 193(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 359 362
Store 358(u16v) 363
364: 193(ivec3) Load 358(u16v)
366: 193(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 364 365
Store 358(u16v) 366
367: 52(ivec2) Load 345(i16v)
368: 14(int) Load 348(i16)
369: 52(ivec2) CompositeConstruct 368 368
370: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 367 369
Store 345(i16v) 370
371: 52(ivec2) Load 345(i16v)
372: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 371 356
Store 345(i16v) 372
373: 193(ivec3) Load 358(u16v)
374: 36(int) Load 360(u16)
375: 193(ivec3) CompositeConstruct 374 374 374
376: 193(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 373 375
Store 358(u16v) 376
377: 193(ivec3) Load 358(u16v)
378: 193(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 377 365
Store 358(u16v) 378
379: 52(ivec2) Load 345(i16v)
380: 14(int) Load 348(i16)
381: 14(int) SNegate 380
382: 14(int) Load 348(i16)
383: 52(ivec2) CompositeConstruct 381 381
384: 52(ivec2) CompositeConstruct 382 382
385: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 379 383 384
Store 345(i16v) 385
386: 52(ivec2) Load 345(i16v)
387: 52(ivec2) Load 345(i16v)
388: 52(ivec2) SNegate 387
389: 52(ivec2) Load 345(i16v)
390: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 386 388 389
Store 345(i16v) 390
391: 193(ivec3) Load 358(u16v)
392: 36(int) Load 360(u16)
393: 36(int) SNegate 392
394: 36(int) Load 360(u16)
395: 193(ivec3) CompositeConstruct 393 393 393
396: 193(ivec3) CompositeConstruct 394 394 394
397: 193(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 391 395 396
Store 358(u16v) 397
398: 193(ivec3) Load 358(u16v)
399: 193(ivec3) Load 358(u16v)
400: 193(ivec3) SNegate 399
401: 193(ivec3) Load 358(u16v)
402: 193(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 398 400 401
Store 358(u16v) 402
403: 15(ptr) AccessChain 345(i16v) 284
404: 14(int) Load 403
405: 15(ptr) AccessChain 345(i16v) 264
406: 14(int) Load 405
408: 14(int) Select 407 406 404
Store 348(i16) 408
409: 14(int) Load 348(i16)
410: 52(ivec2) CompositeConstruct 409 409
411: 14(int) Load 348(i16)
412: 14(int) SNegate 411
413: 52(ivec2) CompositeConstruct 412 412
416: 52(ivec2) Select 415 413 410
Store 345(i16v) 416
417: 37(ptr) AccessChain 358(u16v) 284
418: 36(int) Load 417
419: 37(ptr) AccessChain 358(u16v) 264
420: 36(int) Load 419
421: 36(int) Select 407 420 418
Store 360(u16) 421
422: 36(int) Load 360(u16)
423: 193(ivec3) CompositeConstruct 422 422 422
424: 36(int) Load 360(u16)
425: 36(int) SNegate 424
426: 193(ivec3) CompositeConstruct 425 425 425
429: 193(ivec3) Select 428 426 423
Store 358(u16v) 429
431: 52(ivec2) Load 345(i16v)
432: 27(int) Bitcast 431
Store 430(i32) 432
437: 434(ivec4) Load 436(i16v4)
438: 71(int) Bitcast 437
Store 433(i64) 438
441: 57(ivec2) Load 440(u16v2)
442: 17(int) Bitcast 441
Store 439(u32) 442
448: 445(ivec4) Load 447(u16v4)
449: 77(int) Bitcast 448
Store 444(u64) 449
450: 27(int) Load 430(i32)
451: 52(ivec2) Bitcast 450
Store 345(i16v) 451
452: 71(int) Load 433(i64)
453: 434(ivec4) Bitcast 452
Store 436(i16v4) 453
454: 17(int) Load 439(u32)
455: 57(ivec2) Bitcast 454
Store 440(u16v2) 455
456: 77(int) Load 444(u64)
457: 445(ivec4) Bitcast 456
Store 447(u16v4) 457
460: 193(ivec3) Load 358(u16v)
461: 36(int) Load 360(u16)
462: 193(ivec3) CompositeConstruct 461 461 461
463: 427(bvec3) ULessThan 460 462
Store 459(bv) 463
464: 52(ivec2) Load 345(i16v)
465: 14(int) Load 348(i16)
466: 52(ivec2) CompositeConstruct 465 465
467: 174(bvec2) SLessThan 464 466
468: 427(bvec3) Load 459(bv)
469: 427(bvec3) VectorShuffle 468 467 3 4 2
Store 459(bv) 469
470: 193(ivec3) Load 358(u16v)
471: 36(int) Load 360(u16)
472: 193(ivec3) CompositeConstruct 471 471 471
473: 427(bvec3) ULessThanEqual 470 472
Store 459(bv) 473
474: 52(ivec2) Load 345(i16v)
475: 14(int) Load 348(i16)
476: 52(ivec2) CompositeConstruct 475 475
477: 174(bvec2) SLessThanEqual 474 476
478: 427(bvec3) Load 459(bv)
479: 427(bvec3) VectorShuffle 478 477 3 4 2
Store 459(bv) 479
480: 193(ivec3) Load 358(u16v)
481: 36(int) Load 360(u16)
482: 193(ivec3) CompositeConstruct 481 481 481
483: 427(bvec3) UGreaterThan 480 482
Store 459(bv) 483
484: 52(ivec2) Load 345(i16v)
485: 14(int) Load 348(i16)
486: 52(ivec2) CompositeConstruct 485 485
487: 174(bvec2) SGreaterThan 484 486
488: 427(bvec3) Load 459(bv)
489: 427(bvec3) VectorShuffle 488 487 3 4 2
Store 459(bv) 489
490: 193(ivec3) Load 358(u16v)
491: 36(int) Load 360(u16)
492: 193(ivec3) CompositeConstruct 491 491 491
493: 427(bvec3) UGreaterThanEqual 490 492
Store 459(bv) 493
494: 52(ivec2) Load 345(i16v)
495: 14(int) Load 348(i16)
496: 52(ivec2) CompositeConstruct 495 495
497: 174(bvec2) SGreaterThanEqual 494 496
498: 427(bvec3) Load 459(bv)
499: 427(bvec3) VectorShuffle 498 497 3 4 2
Store 459(bv) 499
500: 193(ivec3) Load 358(u16v)
501: 36(int) Load 360(u16)
502: 193(ivec3) CompositeConstruct 501 501 501
503: 427(bvec3) IEqual 500 502
Store 459(bv) 503
504: 52(ivec2) Load 345(i16v)
505: 14(int) Load 348(i16)
506: 52(ivec2) CompositeConstruct 505 505
507: 174(bvec2) IEqual 504 506
508: 427(bvec3) Load 459(bv)
509: 427(bvec3) VectorShuffle 508 507 3 4 2
Store 459(bv) 509
510: 193(ivec3) Load 358(u16v)
511: 36(int) Load 360(u16)
512: 193(ivec3) CompositeConstruct 511 511 511
513: 427(bvec3) INotEqual 510 512
Store 459(bv) 513
514: 52(ivec2) Load 345(i16v)
515: 14(int) Load 348(i16)
516: 52(ivec2) CompositeConstruct 515 515
517: 174(bvec2) INotEqual 514 516
518: 427(bvec3) Load 459(bv)
519: 427(bvec3) VectorShuffle 518 517 3 4 2
Store 459(bv) 519
Return
FunctionEnd
spv.int32.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 491
// Id's are bound by 495
Capability Shader
Capability Float16
......@@ -45,63 +45,63 @@ spv.int32.frag
Name 84 "f64v"
Name 94 "i8v"
Name 103 "i16v"
Name 121 "u8v"
Name 128 "u16v"
Name 148 "f16v"
Name 164 "bv"
Name 182 "u32v"
Name 187 "i32"
Name 206 "i"
Name 210 "uv"
Name 223 "i64"
Name 258 "b"
Name 310 "i32v"
Name 313 "i32"
Name 323 "u32v"
Name 325 "u32"
Name 397 "i8v4"
Name 400 "i16v2"
Name 405 "u8v4"
Name 408 "u16v2"
Name 411 "i64"
Name 414 "u32v2"
Name 416 "u64"
Name 420 "bv"
Name 483 "Block"
MemberName 483(Block) 0 "i32"
MemberName 483(Block) 1 "i32v2"
MemberName 483(Block) 2 "i32v3"
MemberName 483(Block) 3 "i32v4"
MemberName 483(Block) 4 "u32"
MemberName 483(Block) 5 "u32v2"
MemberName 483(Block) 6 "u32v3"
MemberName 483(Block) 7 "u32v4"
Name 485 "block"
Name 486 "si32"
Name 487 "su32"
Name 488 "si"
Name 489 "su"
Name 490 "sb"
Name 123 "u8v"
Name 132 "u16v"
Name 152 "f16v"
Name 168 "bv"
Name 186 "u32v"
Name 191 "i32"
Name 210 "i"
Name 214 "uv"
Name 227 "i64"
Name 262 "b"
Name 314 "i32v"
Name 317 "i32"
Name 327 "u32v"
Name 329 "u32"
Name 401 "i8v4"
Name 404 "i16v2"
Name 409 "u8v4"
Name 412 "u16v2"
Name 415 "i64"
Name 418 "u32v2"
Name 420 "u64"
Name 424 "bv"
Name 487 "Block"
MemberName 487(Block) 0 "i32"
MemberName 487(Block) 1 "i32v2"
MemberName 487(Block) 2 "i32v3"
MemberName 487(Block) 3 "i32v4"
MemberName 487(Block) 4 "u32"
MemberName 487(Block) 5 "u32v2"
MemberName 487(Block) 6 "u32v3"
MemberName 487(Block) 7 "u32v4"
Name 489 "block"
Name 490 "si32"
Name 491 "su32"
Name 492 "si"
Name 493 "su"
Name 494 "sb"
MemberDecorate 27(Uniforms) 0 Offset 0
Decorate 27(Uniforms) Block
Decorate 29 DescriptorSet 0
Decorate 29 Binding 0
MemberDecorate 483(Block) 0 Offset 0
MemberDecorate 483(Block) 1 Offset 8
MemberDecorate 483(Block) 2 Offset 16
MemberDecorate 483(Block) 3 Offset 32
MemberDecorate 483(Block) 4 Offset 48
MemberDecorate 483(Block) 5 Offset 56
MemberDecorate 483(Block) 6 Offset 64
MemberDecorate 483(Block) 7 Offset 80
Decorate 483(Block) Block
Decorate 485(block) DescriptorSet 0
Decorate 485(block) Binding 1
Decorate 486(si32) SpecId 100
Decorate 487(su32) SpecId 101
Decorate 488(si) SpecId 102
Decorate 489(su) SpecId 103
Decorate 490(sb) SpecId 104
MemberDecorate 487(Block) 0 Offset 0
MemberDecorate 487(Block) 1 Offset 8
MemberDecorate 487(Block) 2 Offset 16
MemberDecorate 487(Block) 3 Offset 32
MemberDecorate 487(Block) 4 Offset 48
MemberDecorate 487(Block) 5 Offset 56
MemberDecorate 487(Block) 6 Offset 64
MemberDecorate 487(Block) 7 Offset 80
Decorate 487(Block) Block
Decorate 489(block) DescriptorSet 0
Decorate 489(block) Binding 1
Decorate 490(si32) SpecId 100
Decorate 491(su32) SpecId 101
Decorate 492(si) SpecId 102
Decorate 493(su) SpecId 103
Decorate 494(sb) SpecId 104
2: TypeVoid
3: TypeFunction 2
14: TypeInt 32 0
......@@ -150,49 +150,53 @@ spv.int32.frag
101: TypeVector 100(int) 2
102: TypePointer Function 101(ivec2)
120: TypeInt 8 0
127: TypeInt 16 0
145: TypeFloat 16
146: TypeVector 145(float) 2
147: TypePointer Function 146(fvec2)
161: TypeBool
162: TypeVector 161(bool) 2
163: TypePointer Function 162(bvec2)
166: 18(int) Constant 1
167: 52(ivec2) ConstantComposite 30 30
168: 52(ivec2) ConstantComposite 166 166
171: 14(int) Constant 0
172: 14(int) Constant 1
173: 49(ivec2) ConstantComposite 171 171
174: 49(ivec2) ConstantComposite 172 172
180: TypeVector 14(int) 3
181: TypePointer Function 180(ivec3)
184: TypeVector 18(int) 3
222: TypePointer Function 57(int)
247: 14(int) Constant 2
257: TypePointer Function 161(bool)
321: 52(ivec2) ConstantComposite 24 24
330: 180(ivec3) ConstantComposite 171 171 171
372: 161(bool) ConstantTrue
379: 161(bool) ConstantFalse
380: 162(bvec2) ConstantComposite 379 379
392: TypeVector 161(bool) 3
393: 392(bvec3) ConstantComposite 379 379 379
395: TypeVector 91(int) 4
396: TypePointer Function 395(ivec4)
403: TypeVector 100(int) 4
404: TypePointer Function 403(ivec4)
415: TypePointer Function 63(int)
419: TypePointer Function 392(bvec3)
481: TypeVector 18(int) 4
482: TypeVector 14(int) 4
483(Block): TypeStruct 18(int) 52(ivec2) 184(ivec3) 481(ivec4) 14(int) 49(ivec2) 180(ivec3) 482(ivec4)
484: TypePointer Uniform 483(Block)
485(block): 484(ptr) Variable Uniform
486(si32): 18(int) SpecConstant 4294967286
487(su32): 14(int) SpecConstant 20
488(si): 18(int) SpecConstant 4294967291
489(su): 14(int) SpecConstant 4
490(sb): 161(bool) SpecConstantTrue
121: TypeVector 120(int) 2
122: TypePointer Function 121(ivec2)
129: TypeInt 16 0
130: TypeVector 129(int) 2
131: TypePointer Function 130(ivec2)
149: TypeFloat 16
150: TypeVector 149(float) 2
151: TypePointer Function 150(fvec2)
165: TypeBool
166: TypeVector 165(bool) 2
167: TypePointer Function 166(bvec2)
170: 18(int) Constant 1
171: 52(ivec2) ConstantComposite 30 30
172: 52(ivec2) ConstantComposite 170 170
175: 14(int) Constant 0
176: 14(int) Constant 1
177: 49(ivec2) ConstantComposite 175 175
178: 49(ivec2) ConstantComposite 176 176
184: TypeVector 14(int) 3
185: TypePointer Function 184(ivec3)
188: TypeVector 18(int) 3
226: TypePointer Function 57(int)
251: 14(int) Constant 2
261: TypePointer Function 165(bool)
325: 52(ivec2) ConstantComposite 24 24
334: 184(ivec3) ConstantComposite 175 175 175
376: 165(bool) ConstantTrue
383: 165(bool) ConstantFalse
384: 166(bvec2) ConstantComposite 383 383
396: TypeVector 165(bool) 3
397: 396(bvec3) ConstantComposite 383 383 383
399: TypeVector 91(int) 4
400: TypePointer Function 399(ivec4)
407: TypeVector 120(int) 4
408: TypePointer Function 407(ivec4)
419: TypePointer Function 63(int)
423: TypePointer Function 396(bvec3)
485: TypeVector 18(int) 4
486: TypeVector 14(int) 4
487(Block): TypeStruct 18(int) 52(ivec2) 188(ivec3) 485(ivec4) 14(int) 49(ivec2) 184(ivec3) 486(ivec4)
488: TypePointer Uniform 487(Block)
489(block): 488(ptr) Variable Uniform
490(si32): 18(int) SpecConstant 4294967286
491(su32): 14(int) SpecConstant 20
492(si): 18(int) SpecConstant 4294967291
493(su): 14(int) SpecConstant 4
494(sb): 165(bool) SpecConstantTrue
4(main): 2 Function None 3
5: Label
Store 16(u32Max) 17
......@@ -228,10 +232,10 @@ spv.int32.frag
84(f64v): 83(ptr) Variable Function
94(i8v): 93(ptr) Variable Function
103(i16v): 102(ptr) Variable Function
121(u8v): 102(ptr) Variable Function
128(u16v): 53(ptr) Variable Function
148(f16v): 147(ptr) Variable Function
164(bv): 163(ptr) Variable Function
123(u8v): 122(ptr) Variable Function
132(u16v): 131(ptr) Variable Function
152(f16v): 151(ptr) Variable Function
168(bv): 167(ptr) Variable Function
55: 52(ivec2) Load 54(i32v)
56: 49(ivec2) Bitcast 55
Store 51(u32v) 56
......@@ -290,423 +294,423 @@ spv.int32.frag
118: 58(ivec2) UConvert 117
119: 58(ivec2) Bitcast 118
Store 60(i64v) 119
122: 52(ivec2) Load 54(i32v)
123: 92(ivec2) SConvert 122
124: 101(ivec2) Bitcast 123
Store 121(u8v) 124
125: 49(ivec2) Load 51(u32v)
126: 101(ivec2) UConvert 125
Store 121(u8v) 126
129: 52(ivec2) Load 54(i32v)
130: 101(ivec2) SConvert 129
131: 52(ivec2) Bitcast 130
Store 128(u16v) 131
132: 49(ivec2) Load 51(u32v)
133: 52(ivec2) UConvert 132
Store 128(u16v) 133
134: 52(ivec2) Load 54(i32v)
135: 49(ivec2) Bitcast 134
Store 51(u32v) 135
124: 52(ivec2) Load 54(i32v)
125: 92(ivec2) SConvert 124
126: 121(ivec2) Bitcast 125
Store 123(u8v) 126
127: 49(ivec2) Load 51(u32v)
128: 121(ivec2) UConvert 127
Store 123(u8v) 128
133: 52(ivec2) Load 54(i32v)
134: 101(ivec2) SConvert 133
135: 130(ivec2) Bitcast 134
Store 132(u16v) 135
136: 49(ivec2) Load 51(u32v)
137: 14(int) CompositeExtract 136 0
138: 14(int) CompositeExtract 136 1
139: 49(ivec2) CompositeConstruct 137 138
137: 130(ivec2) UConvert 136
Store 132(u16v) 137
138: 52(ivec2) Load 54(i32v)
139: 49(ivec2) Bitcast 138
Store 51(u32v) 139
140: 52(ivec2) Load 54(i32v)
141: 58(ivec2) SConvert 140
142: 64(ivec2) Bitcast 141
Store 66(u64v) 142
143: 49(ivec2) Load 51(u32v)
144: 64(ivec2) UConvert 143
Store 66(u64v) 144
149: 52(ivec2) Load 54(i32v)
150: 146(fvec2) ConvertSToF 149
Store 148(f16v) 150
151: 52(ivec2) Load 54(i32v)
152: 76(fvec2) ConvertSToF 151
Store 78(f32v) 152
140: 49(ivec2) Load 51(u32v)
141: 14(int) CompositeExtract 140 0
142: 14(int) CompositeExtract 140 1
143: 49(ivec2) CompositeConstruct 141 142
Store 51(u32v) 143
144: 52(ivec2) Load 54(i32v)
145: 58(ivec2) SConvert 144
146: 64(ivec2) Bitcast 145
Store 66(u64v) 146
147: 49(ivec2) Load 51(u32v)
148: 64(ivec2) UConvert 147
Store 66(u64v) 148
153: 52(ivec2) Load 54(i32v)
154: 82(fvec2) ConvertSToF 153
Store 84(f64v) 154
155: 49(ivec2) Load 51(u32v)
156: 146(fvec2) ConvertUToF 155
Store 148(f16v) 156
157: 49(ivec2) Load 51(u32v)
158: 76(fvec2) ConvertUToF 157
Store 78(f32v) 158
154: 150(fvec2) ConvertSToF 153
Store 152(f16v) 154
155: 52(ivec2) Load 54(i32v)
156: 76(fvec2) ConvertSToF 155
Store 78(f32v) 156
157: 52(ivec2) Load 54(i32v)
158: 82(fvec2) ConvertSToF 157
Store 84(f64v) 158
159: 49(ivec2) Load 51(u32v)
160: 82(fvec2) ConvertUToF 159
Store 84(f64v) 160
165: 162(bvec2) Load 164(bv)
169: 52(ivec2) Select 165 168 167
Store 54(i32v) 169
170: 162(bvec2) Load 164(bv)
175: 49(ivec2) Select 170 174 173
Store 51(u32v) 175
176: 52(ivec2) Load 54(i32v)
177: 162(bvec2) INotEqual 176 173
Store 164(bv) 177
178: 49(ivec2) Load 51(u32v)
179: 162(bvec2) INotEqual 178 173
Store 164(bv) 179
160: 150(fvec2) ConvertUToF 159
Store 152(f16v) 160
161: 49(ivec2) Load 51(u32v)
162: 76(fvec2) ConvertUToF 161
Store 78(f32v) 162
163: 49(ivec2) Load 51(u32v)
164: 82(fvec2) ConvertUToF 163
Store 84(f64v) 164
169: 166(bvec2) Load 168(bv)
173: 52(ivec2) Select 169 172 171
Store 54(i32v) 173
174: 166(bvec2) Load 168(bv)
179: 49(ivec2) Select 174 178 177
Store 51(u32v) 179
180: 52(ivec2) Load 54(i32v)
181: 166(bvec2) INotEqual 180 177
Store 168(bv) 181
182: 49(ivec2) Load 51(u32v)
183: 166(bvec2) INotEqual 182 177
Store 168(bv) 183
Return
FunctionEnd
10(operators(): 2 Function None 3
11: Label
182(u32v): 181(ptr) Variable Function
187(i32): 19(ptr) Variable Function
206(i): 19(ptr) Variable Function
210(uv): 181(ptr) Variable Function
223(i64): 222(ptr) Variable Function
258(b): 257(ptr) Variable Function
183: 180(ivec3) Load 182(u32v)
185: 184(ivec3) CompositeConstruct 166 166 166
186: 180(ivec3) IAdd 183 185
Store 182(u32v) 186
188: 18(int) Load 187(i32)
189: 18(int) ISub 188 166
Store 187(i32) 189
190: 18(int) Load 187(i32)
191: 18(int) IAdd 190 166
Store 187(i32) 191
192: 180(ivec3) Load 182(u32v)
193: 184(ivec3) CompositeConstruct 166 166 166
194: 180(ivec3) ISub 192 193
Store 182(u32v) 194
195: 180(ivec3) Load 182(u32v)
196: 180(ivec3) Not 195
Store 182(u32v) 196
197: 18(int) Load 187(i32)
Store 187(i32) 197
198: 180(ivec3) Load 182(u32v)
199: 180(ivec3) SNegate 198
Store 182(u32v) 199
200: 18(int) Load 187(i32)
201: 18(int) Load 187(i32)
202: 18(int) IAdd 201 200
Store 187(i32) 202
203: 180(ivec3) Load 182(u32v)
204: 180(ivec3) Load 182(u32v)
205: 180(ivec3) ISub 204 203
Store 182(u32v) 205
207: 18(int) Load 187(i32)
208: 18(int) Load 206(i)
209: 18(int) IMul 208 207
Store 206(i) 209
211: 180(ivec3) Load 182(u32v)
212: 180(ivec3) Load 210(uv)
213: 180(ivec3) UDiv 212 211
Store 210(uv) 213
214: 18(int) Load 187(i32)
215: 14(int) Bitcast 214
216: 180(ivec3) Load 210(uv)
217: 180(ivec3) CompositeConstruct 215 215 215
218: 180(ivec3) UMod 216 217
Store 210(uv) 218
219: 180(ivec3) Load 182(u32v)
220: 180(ivec3) Load 210(uv)
221: 180(ivec3) IAdd 219 220
Store 210(uv) 221
224: 18(int) Load 187(i32)
225: 57(int) SConvert 224
226: 57(int) Load 223(i64)
227: 57(int) ISub 225 226
Store 223(i64) 227
228: 180(ivec3) Load 182(u32v)
229: 180(ivec3) Load 210(uv)
230: 180(ivec3) IMul 228 229
Store 210(uv) 230
231: 18(int) Load 187(i32)
232: 57(int) SConvert 231
233: 57(int) Load 223(i64)
234: 57(int) IMul 232 233
Store 223(i64) 234
235: 18(int) Load 187(i32)
236: 18(int) Load 206(i)
237: 18(int) SMod 235 236
Store 206(i) 237
238: 18(int) Load 187(i32)
239: 180(ivec3) Load 182(u32v)
240: 184(ivec3) CompositeConstruct 238 238 238
241: 180(ivec3) ShiftLeftLogical 239 240
Store 182(u32v) 241
242: 38(ptr) AccessChain 182(u32v) 172
243: 14(int) Load 242
244: 18(int) Load 187(i32)
245: 18(int) ShiftRightArithmetic 244 243
Store 187(i32) 245
246: 57(int) Load 223(i64)
248: 38(ptr) AccessChain 182(u32v) 247
249: 14(int) Load 248
250: 57(int) UConvert 249
251: 57(int) Bitcast 250
252: 57(int) ShiftLeftLogical 246 251
Store 223(i64) 252
253: 180(ivec3) Load 182(u32v)
254: 18(int) Load 206(i)
255: 184(ivec3) CompositeConstruct 254 254 254
256: 180(ivec3) ShiftLeftLogical 253 255
Store 210(uv) 256
259: 38(ptr) AccessChain 182(u32v) 171
260: 14(int) Load 259
261: 18(int) Load 187(i32)
262: 14(int) Bitcast 261
263: 161(bool) INotEqual 260 262
Store 258(b) 263
264: 18(int) Load 187(i32)
265: 14(int) Bitcast 264
266: 38(ptr) AccessChain 182(u32v) 171
267: 14(int) Load 266
268: 161(bool) IEqual 265 267
Store 258(b) 268
269: 38(ptr) AccessChain 182(u32v) 171
270: 14(int) Load 269
271: 38(ptr) AccessChain 210(uv) 172
272: 14(int) Load 271
273: 161(bool) UGreaterThan 270 272
Store 258(b) 273
274: 18(int) Load 187(i32)
275: 18(int) Load 206(i)
276: 161(bool) SLessThan 274 275
Store 258(b) 276
277: 38(ptr) AccessChain 182(u32v) 172
278: 14(int) Load 277
279: 38(ptr) AccessChain 210(uv) 171
280: 14(int) Load 279
281: 161(bool) UGreaterThanEqual 278 280
Store 258(b) 281
282: 18(int) Load 187(i32)
283: 18(int) Load 206(i)
284: 161(bool) SLessThanEqual 282 283
Store 258(b) 284
285: 18(int) Load 187(i32)
286: 14(int) Bitcast 285
287: 180(ivec3) Load 210(uv)
288: 180(ivec3) CompositeConstruct 286 286 286
289: 180(ivec3) BitwiseOr 287 288
Store 210(uv) 289
290: 18(int) Load 187(i32)
291: 18(int) Load 206(i)
292: 18(int) BitwiseOr 290 291
Store 206(i) 292
293: 18(int) Load 187(i32)
294: 57(int) SConvert 293
295: 57(int) Load 223(i64)
296: 57(int) BitwiseAnd 295 294
Store 223(i64) 296
297: 180(ivec3) Load 182(u32v)
298: 180(ivec3) Load 210(uv)
299: 180(ivec3) BitwiseAnd 297 298
Store 210(uv) 299
300: 18(int) Load 187(i32)
301: 14(int) Bitcast 300
302: 180(ivec3) Load 210(uv)
303: 180(ivec3) CompositeConstruct 301 301 301
304: 180(ivec3) BitwiseXor 302 303
Store 210(uv) 304
305: 180(ivec3) Load 182(u32v)
306: 18(int) Load 187(i32)
307: 14(int) Bitcast 306
308: 180(ivec3) CompositeConstruct 307 307 307
309: 180(ivec3) BitwiseXor 305 308
Store 182(u32v) 309
186(u32v): 185(ptr) Variable Function
191(i32): 19(ptr) Variable Function
210(i): 19(ptr) Variable Function
214(uv): 185(ptr) Variable Function
227(i64): 226(ptr) Variable Function
262(b): 261(ptr) Variable Function
187: 184(ivec3) Load 186(u32v)
189: 188(ivec3) CompositeConstruct 170 170 170
190: 184(ivec3) IAdd 187 189
Store 186(u32v) 190
192: 18(int) Load 191(i32)
193: 18(int) ISub 192 170
Store 191(i32) 193
194: 18(int) Load 191(i32)
195: 18(int) IAdd 194 170
Store 191(i32) 195
196: 184(ivec3) Load 186(u32v)
197: 188(ivec3) CompositeConstruct 170 170 170
198: 184(ivec3) ISub 196 197
Store 186(u32v) 198
199: 184(ivec3) Load 186(u32v)
200: 184(ivec3) Not 199
Store 186(u32v) 200
201: 18(int) Load 191(i32)
Store 191(i32) 201
202: 184(ivec3) Load 186(u32v)
203: 184(ivec3) SNegate 202
Store 186(u32v) 203
204: 18(int) Load 191(i32)
205: 18(int) Load 191(i32)
206: 18(int) IAdd 205 204
Store 191(i32) 206
207: 184(ivec3) Load 186(u32v)
208: 184(ivec3) Load 186(u32v)
209: 184(ivec3) ISub 208 207
Store 186(u32v) 209
211: 18(int) Load 191(i32)
212: 18(int) Load 210(i)
213: 18(int) IMul 212 211
Store 210(i) 213
215: 184(ivec3) Load 186(u32v)
216: 184(ivec3) Load 214(uv)
217: 184(ivec3) UDiv 216 215
Store 214(uv) 217
218: 18(int) Load 191(i32)
219: 14(int) Bitcast 218
220: 184(ivec3) Load 214(uv)
221: 184(ivec3) CompositeConstruct 219 219 219
222: 184(ivec3) UMod 220 221
Store 214(uv) 222
223: 184(ivec3) Load 186(u32v)
224: 184(ivec3) Load 214(uv)
225: 184(ivec3) IAdd 223 224
Store 214(uv) 225
228: 18(int) Load 191(i32)
229: 57(int) SConvert 228
230: 57(int) Load 227(i64)
231: 57(int) ISub 229 230
Store 227(i64) 231
232: 184(ivec3) Load 186(u32v)
233: 184(ivec3) Load 214(uv)
234: 184(ivec3) IMul 232 233
Store 214(uv) 234
235: 18(int) Load 191(i32)
236: 57(int) SConvert 235
237: 57(int) Load 227(i64)
238: 57(int) IMul 236 237
Store 227(i64) 238
239: 18(int) Load 191(i32)
240: 18(int) Load 210(i)
241: 18(int) SMod 239 240
Store 210(i) 241
242: 18(int) Load 191(i32)
243: 184(ivec3) Load 186(u32v)
244: 188(ivec3) CompositeConstruct 242 242 242
245: 184(ivec3) ShiftLeftLogical 243 244
Store 186(u32v) 245
246: 38(ptr) AccessChain 186(u32v) 176
247: 14(int) Load 246
248: 18(int) Load 191(i32)
249: 18(int) ShiftRightArithmetic 248 247
Store 191(i32) 249
250: 57(int) Load 227(i64)
252: 38(ptr) AccessChain 186(u32v) 251
253: 14(int) Load 252
254: 57(int) UConvert 253
255: 57(int) Bitcast 254
256: 57(int) ShiftLeftLogical 250 255
Store 227(i64) 256
257: 184(ivec3) Load 186(u32v)
258: 18(int) Load 210(i)
259: 188(ivec3) CompositeConstruct 258 258 258
260: 184(ivec3) ShiftLeftLogical 257 259
Store 214(uv) 260
263: 38(ptr) AccessChain 186(u32v) 175
264: 14(int) Load 263
265: 18(int) Load 191(i32)
266: 14(int) Bitcast 265
267: 165(bool) INotEqual 264 266
Store 262(b) 267
268: 18(int) Load 191(i32)
269: 14(int) Bitcast 268
270: 38(ptr) AccessChain 186(u32v) 175
271: 14(int) Load 270
272: 165(bool) IEqual 269 271
Store 262(b) 272
273: 38(ptr) AccessChain 186(u32v) 175
274: 14(int) Load 273
275: 38(ptr) AccessChain 214(uv) 176
276: 14(int) Load 275
277: 165(bool) UGreaterThan 274 276
Store 262(b) 277
278: 18(int) Load 191(i32)
279: 18(int) Load 210(i)
280: 165(bool) SLessThan 278 279
Store 262(b) 280
281: 38(ptr) AccessChain 186(u32v) 176
282: 14(int) Load 281
283: 38(ptr) AccessChain 214(uv) 175
284: 14(int) Load 283
285: 165(bool) UGreaterThanEqual 282 284
Store 262(b) 285
286: 18(int) Load 191(i32)
287: 18(int) Load 210(i)
288: 165(bool) SLessThanEqual 286 287
Store 262(b) 288
289: 18(int) Load 191(i32)
290: 14(int) Bitcast 289
291: 184(ivec3) Load 214(uv)
292: 184(ivec3) CompositeConstruct 290 290 290
293: 184(ivec3) BitwiseOr 291 292
Store 214(uv) 293
294: 18(int) Load 191(i32)
295: 18(int) Load 210(i)
296: 18(int) BitwiseOr 294 295
Store 210(i) 296
297: 18(int) Load 191(i32)
298: 57(int) SConvert 297
299: 57(int) Load 227(i64)
300: 57(int) BitwiseAnd 299 298
Store 227(i64) 300
301: 184(ivec3) Load 186(u32v)
302: 184(ivec3) Load 214(uv)
303: 184(ivec3) BitwiseAnd 301 302
Store 214(uv) 303
304: 18(int) Load 191(i32)
305: 14(int) Bitcast 304
306: 184(ivec3) Load 214(uv)
307: 184(ivec3) CompositeConstruct 305 305 305
308: 184(ivec3) BitwiseXor 306 307
Store 214(uv) 308
309: 184(ivec3) Load 186(u32v)
310: 18(int) Load 191(i32)
311: 14(int) Bitcast 310
312: 184(ivec3) CompositeConstruct 311 311 311
313: 184(ivec3) BitwiseXor 309 312
Store 186(u32v) 313
Return
FunctionEnd
12(builtinFuncs(): 2 Function None 3
13: Label
310(i32v): 53(ptr) Variable Function
313(i32): 19(ptr) Variable Function
323(u32v): 181(ptr) Variable Function
325(u32): 38(ptr) Variable Function
397(i8v4): 396(ptr) Variable Function
400(i16v2): 102(ptr) Variable Function
405(u8v4): 404(ptr) Variable Function
408(u16v2): 53(ptr) Variable Function
411(i64): 222(ptr) Variable Function
414(u32v2): 50(ptr) Variable Function
416(u64): 415(ptr) Variable Function
420(bv): 419(ptr) Variable Function
311: 52(ivec2) Load 310(i32v)
312: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 311
Store 310(i32v) 312
314: 18(int) Load 313(i32)
315: 18(int) ExtInst 1(GLSL.std.450) 7(SSign) 314
Store 313(i32) 315
316: 52(ivec2) Load 310(i32v)
317: 18(int) Load 313(i32)
318: 52(ivec2) CompositeConstruct 317 317
319: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 316 318
Store 310(i32v) 319
320: 52(ivec2) Load 310(i32v)
322: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 320 321
Store 310(i32v) 322
324: 180(ivec3) Load 323(u32v)
326: 14(int) Load 325(u32)
327: 180(ivec3) CompositeConstruct 326 326 326
328: 180(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 324 327
Store 323(u32v) 328
329: 180(ivec3) Load 323(u32v)
331: 180(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 329 330
Store 323(u32v) 331
332: 52(ivec2) Load 310(i32v)
333: 18(int) Load 313(i32)
334: 52(ivec2) CompositeConstruct 333 333
335: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 332 334
Store 310(i32v) 335
336: 52(ivec2) Load 310(i32v)
337: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 336 321
Store 310(i32v) 337
338: 180(ivec3) Load 323(u32v)
339: 14(int) Load 325(u32)
340: 180(ivec3) CompositeConstruct 339 339 339
341: 180(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 338 340
Store 323(u32v) 341
342: 180(ivec3) Load 323(u32v)
343: 180(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 342 330
Store 323(u32v) 343
344: 52(ivec2) Load 310(i32v)
345: 18(int) Load 313(i32)
346: 18(int) SNegate 345
347: 18(int) Load 313(i32)
348: 52(ivec2) CompositeConstruct 346 346
349: 52(ivec2) CompositeConstruct 347 347
350: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 344 348 349
Store 310(i32v) 350
351: 52(ivec2) Load 310(i32v)
352: 52(ivec2) Load 310(i32v)
353: 52(ivec2) SNegate 352
354: 52(ivec2) Load 310(i32v)
355: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 351 353 354
Store 310(i32v) 355
356: 180(ivec3) Load 323(u32v)
357: 14(int) Load 325(u32)
358: 14(int) SNegate 357
359: 14(int) Load 325(u32)
360: 180(ivec3) CompositeConstruct 358 358 358
361: 180(ivec3) CompositeConstruct 359 359 359
362: 180(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 356 360 361
Store 323(u32v) 362
363: 180(ivec3) Load 323(u32v)
364: 180(ivec3) Load 323(u32v)
365: 180(ivec3) SNegate 364
366: 180(ivec3) Load 323(u32v)
367: 180(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 363 365 366
Store 323(u32v) 367
368: 19(ptr) AccessChain 310(i32v) 171
369: 18(int) Load 368
370: 19(ptr) AccessChain 310(i32v) 172
371: 18(int) Load 370
373: 18(int) Select 372 371 369
Store 313(i32) 373
374: 18(int) Load 313(i32)
375: 52(ivec2) CompositeConstruct 374 374
376: 18(int) Load 313(i32)
377: 18(int) SNegate 376
378: 52(ivec2) CompositeConstruct 377 377
381: 52(ivec2) Select 380 378 375
Store 310(i32v) 381
382: 38(ptr) AccessChain 323(u32v) 171
383: 14(int) Load 382
384: 38(ptr) AccessChain 323(u32v) 172
385: 14(int) Load 384
386: 14(int) Select 372 385 383
Store 325(u32) 386
387: 14(int) Load 325(u32)
388: 180(ivec3) CompositeConstruct 387 387 387
389: 14(int) Load 325(u32)
390: 14(int) SNegate 389
391: 180(ivec3) CompositeConstruct 390 390 390
394: 180(ivec3) Select 393 391 388
Store 323(u32v) 394
398: 395(ivec4) Load 397(i8v4)
399: 18(int) Bitcast 398
Store 313(i32) 399
401: 101(ivec2) Load 400(i16v2)
402: 18(int) Bitcast 401
Store 313(i32) 402
406: 403(ivec4) Load 405(u8v4)
407: 14(int) Bitcast 406
Store 325(u32) 407
409: 52(ivec2) Load 408(u16v2)
410: 14(int) Bitcast 409
Store 325(u32) 410
412: 57(int) Load 411(i64)
413: 52(ivec2) Bitcast 412
Store 310(i32v) 413
417: 63(int) Load 416(u64)
418: 49(ivec2) Bitcast 417
Store 414(u32v2) 418
421: 180(ivec3) Load 323(u32v)
422: 14(int) Load 325(u32)
423: 180(ivec3) CompositeConstruct 422 422 422
424: 392(bvec3) ULessThan 421 423
Store 420(bv) 424
425: 52(ivec2) Load 310(i32v)
426: 18(int) Load 313(i32)
427: 52(ivec2) CompositeConstruct 426 426
428: 162(bvec2) SLessThan 425 427
429: 392(bvec3) Load 420(bv)
430: 392(bvec3) VectorShuffle 429 428 3 4 2
Store 420(bv) 430
431: 180(ivec3) Load 323(u32v)
432: 14(int) Load 325(u32)
433: 180(ivec3) CompositeConstruct 432 432 432
434: 392(bvec3) ULessThanEqual 431 433
Store 420(bv) 434
435: 52(ivec2) Load 310(i32v)
436: 18(int) Load 313(i32)
437: 52(ivec2) CompositeConstruct 436 436
438: 162(bvec2) SLessThanEqual 435 437
439: 392(bvec3) Load 420(bv)
440: 392(bvec3) VectorShuffle 439 438 3 4 2
Store 420(bv) 440
441: 180(ivec3) Load 323(u32v)
442: 14(int) Load 325(u32)
443: 180(ivec3) CompositeConstruct 442 442 442
444: 392(bvec3) UGreaterThan 441 443
Store 420(bv) 444
445: 52(ivec2) Load 310(i32v)
446: 18(int) Load 313(i32)
447: 52(ivec2) CompositeConstruct 446 446
448: 162(bvec2) SGreaterThan 445 447
449: 392(bvec3) Load 420(bv)
450: 392(bvec3) VectorShuffle 449 448 3 4 2
Store 420(bv) 450
451: 180(ivec3) Load 323(u32v)
452: 14(int) Load 325(u32)
453: 180(ivec3) CompositeConstruct 452 452 452
454: 392(bvec3) UGreaterThanEqual 451 453
Store 420(bv) 454
455: 52(ivec2) Load 310(i32v)
456: 18(int) Load 313(i32)
457: 52(ivec2) CompositeConstruct 456 456
458: 162(bvec2) SGreaterThanEqual 455 457
459: 392(bvec3) Load 420(bv)
460: 392(bvec3) VectorShuffle 459 458 3 4 2
Store 420(bv) 460
461: 180(ivec3) Load 323(u32v)
462: 14(int) Load 325(u32)
463: 180(ivec3) CompositeConstruct 462 462 462
464: 392(bvec3) IEqual 461 463
Store 420(bv) 464
465: 52(ivec2) Load 310(i32v)
466: 18(int) Load 313(i32)
467: 52(ivec2) CompositeConstruct 466 466
468: 162(bvec2) IEqual 465 467
469: 392(bvec3) Load 420(bv)
470: 392(bvec3) VectorShuffle 469 468 3 4 2
Store 420(bv) 470
471: 180(ivec3) Load 323(u32v)
472: 14(int) Load 325(u32)
473: 180(ivec3) CompositeConstruct 472 472 472
474: 392(bvec3) INotEqual 471 473
Store 420(bv) 474
475: 52(ivec2) Load 310(i32v)
476: 18(int) Load 313(i32)
477: 52(ivec2) CompositeConstruct 476 476
478: 162(bvec2) INotEqual 475 477
479: 392(bvec3) Load 420(bv)
480: 392(bvec3) VectorShuffle 479 478 3 4 2
Store 420(bv) 480
314(i32v): 53(ptr) Variable Function
317(i32): 19(ptr) Variable Function
327(u32v): 185(ptr) Variable Function
329(u32): 38(ptr) Variable Function
401(i8v4): 400(ptr) Variable Function
404(i16v2): 102(ptr) Variable Function
409(u8v4): 408(ptr) Variable Function
412(u16v2): 131(ptr) Variable Function
415(i64): 226(ptr) Variable Function
418(u32v2): 50(ptr) Variable Function
420(u64): 419(ptr) Variable Function
424(bv): 423(ptr) Variable Function
315: 52(ivec2) Load 314(i32v)
316: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 315
Store 314(i32v) 316
318: 18(int) Load 317(i32)
319: 18(int) ExtInst 1(GLSL.std.450) 7(SSign) 318
Store 317(i32) 319
320: 52(ivec2) Load 314(i32v)
321: 18(int) Load 317(i32)
322: 52(ivec2) CompositeConstruct 321 321
323: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 320 322
Store 314(i32v) 323
324: 52(ivec2) Load 314(i32v)
326: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 324 325
Store 314(i32v) 326
328: 184(ivec3) Load 327(u32v)
330: 14(int) Load 329(u32)
331: 184(ivec3) CompositeConstruct 330 330 330
332: 184(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 328 331
Store 327(u32v) 332
333: 184(ivec3) Load 327(u32v)
335: 184(ivec3) ExtInst 1(GLSL.std.450) 38(UMin) 333 334
Store 327(u32v) 335
336: 52(ivec2) Load 314(i32v)
337: 18(int) Load 317(i32)
338: 52(ivec2) CompositeConstruct 337 337
339: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 336 338
Store 314(i32v) 339
340: 52(ivec2) Load 314(i32v)
341: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 340 325
Store 314(i32v) 341
342: 184(ivec3) Load 327(u32v)
343: 14(int) Load 329(u32)
344: 184(ivec3) CompositeConstruct 343 343 343
345: 184(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 342 344
Store 327(u32v) 345
346: 184(ivec3) Load 327(u32v)
347: 184(ivec3) ExtInst 1(GLSL.std.450) 41(UMax) 346 334
Store 327(u32v) 347
348: 52(ivec2) Load 314(i32v)
349: 18(int) Load 317(i32)
350: 18(int) SNegate 349
351: 18(int) Load 317(i32)
352: 52(ivec2) CompositeConstruct 350 350
353: 52(ivec2) CompositeConstruct 351 351
354: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 348 352 353
Store 314(i32v) 354
355: 52(ivec2) Load 314(i32v)
356: 52(ivec2) Load 314(i32v)
357: 52(ivec2) SNegate 356
358: 52(ivec2) Load 314(i32v)
359: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 355 357 358
Store 314(i32v) 359
360: 184(ivec3) Load 327(u32v)
361: 14(int) Load 329(u32)
362: 14(int) SNegate 361
363: 14(int) Load 329(u32)
364: 184(ivec3) CompositeConstruct 362 362 362
365: 184(ivec3) CompositeConstruct 363 363 363
366: 184(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 360 364 365
Store 327(u32v) 366
367: 184(ivec3) Load 327(u32v)
368: 184(ivec3) Load 327(u32v)
369: 184(ivec3) SNegate 368
370: 184(ivec3) Load 327(u32v)
371: 184(ivec3) ExtInst 1(GLSL.std.450) 44(UClamp) 367 369 370
Store 327(u32v) 371
372: 19(ptr) AccessChain 314(i32v) 175
373: 18(int) Load 372
374: 19(ptr) AccessChain 314(i32v) 176
375: 18(int) Load 374
377: 18(int) Select 376 375 373
Store 317(i32) 377
378: 18(int) Load 317(i32)
379: 52(ivec2) CompositeConstruct 378 378
380: 18(int) Load 317(i32)
381: 18(int) SNegate 380
382: 52(ivec2) CompositeConstruct 381 381
385: 52(ivec2) Select 384 382 379
Store 314(i32v) 385
386: 38(ptr) AccessChain 327(u32v) 175
387: 14(int) Load 386
388: 38(ptr) AccessChain 327(u32v) 176
389: 14(int) Load 388
390: 14(int) Select 376 389 387
Store 329(u32) 390
391: 14(int) Load 329(u32)
392: 184(ivec3) CompositeConstruct 391 391 391
393: 14(int) Load 329(u32)
394: 14(int) SNegate 393
395: 184(ivec3) CompositeConstruct 394 394 394
398: 184(ivec3) Select 397 395 392
Store 327(u32v) 398
402: 399(ivec4) Load 401(i8v4)
403: 18(int) Bitcast 402
Store 317(i32) 403
405: 101(ivec2) Load 404(i16v2)
406: 18(int) Bitcast 405
Store 317(i32) 406
410: 407(ivec4) Load 409(u8v4)
411: 14(int) Bitcast 410
Store 329(u32) 411
413: 130(ivec2) Load 412(u16v2)
414: 14(int) Bitcast 413
Store 329(u32) 414
416: 57(int) Load 415(i64)
417: 52(ivec2) Bitcast 416
Store 314(i32v) 417
421: 63(int) Load 420(u64)
422: 49(ivec2) Bitcast 421
Store 418(u32v2) 422
425: 184(ivec3) Load 327(u32v)
426: 14(int) Load 329(u32)
427: 184(ivec3) CompositeConstruct 426 426 426
428: 396(bvec3) ULessThan 425 427
Store 424(bv) 428
429: 52(ivec2) Load 314(i32v)
430: 18(int) Load 317(i32)
431: 52(ivec2) CompositeConstruct 430 430
432: 166(bvec2) SLessThan 429 431
433: 396(bvec3) Load 424(bv)
434: 396(bvec3) VectorShuffle 433 432 3 4 2
Store 424(bv) 434
435: 184(ivec3) Load 327(u32v)
436: 14(int) Load 329(u32)
437: 184(ivec3) CompositeConstruct 436 436 436
438: 396(bvec3) ULessThanEqual 435 437
Store 424(bv) 438
439: 52(ivec2) Load 314(i32v)
440: 18(int) Load 317(i32)
441: 52(ivec2) CompositeConstruct 440 440
442: 166(bvec2) SLessThanEqual 439 441
443: 396(bvec3) Load 424(bv)
444: 396(bvec3) VectorShuffle 443 442 3 4 2
Store 424(bv) 444
445: 184(ivec3) Load 327(u32v)
446: 14(int) Load 329(u32)
447: 184(ivec3) CompositeConstruct 446 446 446
448: 396(bvec3) UGreaterThan 445 447
Store 424(bv) 448
449: 52(ivec2) Load 314(i32v)
450: 18(int) Load 317(i32)
451: 52(ivec2) CompositeConstruct 450 450
452: 166(bvec2) SGreaterThan 449 451
453: 396(bvec3) Load 424(bv)
454: 396(bvec3) VectorShuffle 453 452 3 4 2
Store 424(bv) 454
455: 184(ivec3) Load 327(u32v)
456: 14(int) Load 329(u32)
457: 184(ivec3) CompositeConstruct 456 456 456
458: 396(bvec3) UGreaterThanEqual 455 457
Store 424(bv) 458
459: 52(ivec2) Load 314(i32v)
460: 18(int) Load 317(i32)
461: 52(ivec2) CompositeConstruct 460 460
462: 166(bvec2) SGreaterThanEqual 459 461
463: 396(bvec3) Load 424(bv)
464: 396(bvec3) VectorShuffle 463 462 3 4 2
Store 424(bv) 464
465: 184(ivec3) Load 327(u32v)
466: 14(int) Load 329(u32)
467: 184(ivec3) CompositeConstruct 466 466 466
468: 396(bvec3) IEqual 465 467
Store 424(bv) 468
469: 52(ivec2) Load 314(i32v)
470: 18(int) Load 317(i32)
471: 52(ivec2) CompositeConstruct 470 470
472: 166(bvec2) IEqual 469 471
473: 396(bvec3) Load 424(bv)
474: 396(bvec3) VectorShuffle 473 472 3 4 2
Store 424(bv) 474
475: 184(ivec3) Load 327(u32v)
476: 14(int) Load 329(u32)
477: 184(ivec3) CompositeConstruct 476 476 476
478: 396(bvec3) INotEqual 475 477
Store 424(bv) 478
479: 52(ivec2) Load 314(i32v)
480: 18(int) Load 317(i32)
481: 52(ivec2) CompositeConstruct 480 480
482: 166(bvec2) INotEqual 479 481
483: 396(bvec3) Load 424(bv)
484: 396(bvec3) VectorShuffle 483 482 3 4 2
Store 424(bv) 484
Return
FunctionEnd
spv.int8.frag
// Module Version 10000
// Generated by (magic number): 80004
// Id's are bound by 526
// Id's are bound by 531
Capability Shader
Capability Float16
......@@ -34,67 +34,67 @@ spv.int8.frag
MemberName 24(Uniforms) 0 "index"
Name 26 ""
Name 33 "indexable"
Name 39 "u8"
Name 47 "indexable"
Name 52 "u8v"
Name 55 "i8v"
Name 58 "i16v"
Name 66 "i32v"
Name 74 "u32v"
Name 81 "i64v"
Name 87 "u64v"
Name 101 "f16v"
Name 107 "f32v"
Name 113 "f64v"
Name 140 "u16v"
Name 170 "bv"
Name 189 "u8v"
Name 193 "i8"
Name 213 "i"
Name 220 "uv"
Name 238 "i16"
Name 275 "b"
Name 337 "i8v"
Name 340 "i8"
Name 350 "u8v"
Name 352 "u8"
Name 426 "i16"
Name 429 "i32"
Name 432 "i8v4"
Name 435 "u16"
Name 436 "u8v2"
Name 439 "u32"
Name 442 "u8v4"
Name 454 "bv"
Name 521 "Block"
MemberName 521(Block) 0 "i8"
MemberName 521(Block) 1 "i8v2"
MemberName 521(Block) 2 "i8v3"
MemberName 521(Block) 3 "i8v4"
MemberName 521(Block) 4 "u8"
MemberName 521(Block) 5 "u8v2"
MemberName 521(Block) 6 "u8v3"
MemberName 521(Block) 7 "u8v4"
Name 523 "block"
Name 524 "si8"
Name 525 "su8"
Name 38 "u8"
Name 46 "indexable"
Name 51 "u8v"
Name 54 "i8v"
Name 60 "i16v"
Name 68 "i32v"
Name 76 "u32v"
Name 83 "i64v"
Name 89 "u64v"
Name 103 "f16v"
Name 109 "f32v"
Name 115 "f64v"
Name 144 "u16v"
Name 174 "bv"
Name 192 "u8v"
Name 196 "i8"
Name 216 "i"
Name 223 "uv"
Name 242 "i16"
Name 279 "b"
Name 341 "i8v"
Name 344 "i8"
Name 354 "u8v"
Name 356 "u8"
Name 430 "i16"
Name 433 "i32"
Name 436 "i8v4"
Name 440 "u16"
Name 441 "u8v2"
Name 444 "u32"
Name 447 "u8v4"
Name 459 "bv"
Name 526 "Block"
MemberName 526(Block) 0 "i8"
MemberName 526(Block) 1 "i8v2"
MemberName 526(Block) 2 "i8v3"
MemberName 526(Block) 3 "i8v4"
MemberName 526(Block) 4 "u8"
MemberName 526(Block) 5 "u8v2"
MemberName 526(Block) 6 "u8v3"
MemberName 526(Block) 7 "u8v4"
Name 528 "block"
Name 529 "si8"
Name 530 "su8"
MemberDecorate 24(Uniforms) 0 Offset 0
Decorate 24(Uniforms) Block
Decorate 26 DescriptorSet 0
Decorate 26 Binding 0
MemberDecorate 521(Block) 0 Offset 0
MemberDecorate 521(Block) 1 Offset 2
MemberDecorate 521(Block) 2 Offset 4
MemberDecorate 521(Block) 3 Offset 8
MemberDecorate 521(Block) 4 Offset 12
MemberDecorate 521(Block) 5 Offset 14
MemberDecorate 521(Block) 6 Offset 16
MemberDecorate 521(Block) 7 Offset 20
Decorate 521(Block) Block
Decorate 523(block) DescriptorSet 0
Decorate 523(block) Binding 1
Decorate 524(si8) SpecId 100
Decorate 525(su8) SpecId 101
MemberDecorate 526(Block) 0 Offset 0
MemberDecorate 526(Block) 1 Offset 2
MemberDecorate 526(Block) 2 Offset 4
MemberDecorate 526(Block) 3 Offset 8
MemberDecorate 526(Block) 4 Offset 12
MemberDecorate 526(Block) 5 Offset 14
MemberDecorate 526(Block) 6 Offset 16
MemberDecorate 526(Block) 7 Offset 20
Decorate 526(Block) Block
Decorate 528(block) DescriptorSet 0
Decorate 528(block) Binding 1
Decorate 529(si8) SpecId 100
Decorate 530(su8) SpecId 101
2: TypeVoid
3: TypeFunction 2
14: TypeInt 8 1
......@@ -114,77 +114,82 @@ spv.int8.frag
29: TypePointer Uniform 17(int)
32: TypePointer Function 19
36: TypeInt 8 0
37: TypeInt 16 1
38: TypePointer Function 37(int)
40: TypeArray 37(int) 18
41: 36(int) Constant 255
42: 36(int) Constant 127
43: 40 ConstantComposite 41 41 42
46: TypePointer Function 40
50: TypeVector 37(int) 2
51: TypePointer Function 50(ivec2)
53: TypeVector 14(int) 2
54: TypePointer Function 53(ivec2)
64: TypeVector 27(int) 2
65: TypePointer Function 64(ivec2)
72: TypeVector 17(int) 2
73: TypePointer Function 72(ivec2)
78: TypeInt 64 1
79: TypeVector 78(int) 2
80: TypePointer Function 79(ivec2)
84: TypeInt 64 0
85: TypeVector 84(int) 2
86: TypePointer Function 85(ivec2)
98: TypeFloat 16
99: TypeVector 98(float) 2
100: TypePointer Function 99(fvec2)
104: TypeFloat 32
105: TypeVector 104(float) 2
106: TypePointer Function 105(fvec2)
110: TypeFloat 64
111: TypeVector 110(float) 2
112: TypePointer Function 111(fvec2)
139: TypeInt 16 0
167: TypeBool
168: TypeVector 167(bool) 2
169: TypePointer Function 168(bvec2)
172: 14(int) Constant 1
173: 53(ivec2) ConstantComposite 22 22
174: 53(ivec2) ConstantComposite 172 172
177: 36(int) Constant 0
178: 36(int) Constant 1
179: TypeVector 36(int) 2
180: 179(ivec2) ConstantComposite 177 177
181: 179(ivec2) ConstantComposite 178 178
187: TypeVector 14(int) 3
188: TypePointer Function 187(ivec3)
212: TypePointer Function 27(int)
218: TypeVector 17(int) 3
219: TypePointer Function 218(ivec3)
222: TypeVector 27(int) 3
260: 17(int) Constant 1
266: 17(int) Constant 2
274: TypePointer Function 167(bool)
276: 17(int) Constant 0
289: TypePointer Function 17(int)
348: 53(ivec2) ConstantComposite 21 21
354: TypeVector 37(int) 3
358: 187(ivec3) ConstantComposite 22 22 22
400: 167(bool) ConstantTrue
407: 167(bool) ConstantFalse
408: 168(bvec2) ConstantComposite 407 407
423: TypeVector 167(bool) 3
424: 423(bvec3) ConstantComposite 407 407 407
430: TypeVector 14(int) 4
431: TypePointer Function 430(ivec4)
440: TypeVector 37(int) 4
441: TypePointer Function 440(ivec4)
453: TypePointer Function 423(bvec3)
521(Block): TypeStruct 14(int) 53(ivec2) 187(ivec3) 430(ivec4) 37(int) 50(ivec2) 187(ivec3) 440(ivec4)
522: TypePointer Uniform 521(Block)
523(block): 522(ptr) Variable Uniform
524(si8): 14(int) SpecConstant 4294967286
525(su8): 36(int) SpecConstant 20
37: TypePointer Function 36(int)
39: TypeArray 36(int) 18
40: 36(int) Constant 255
41: 36(int) Constant 127
42: 39 ConstantComposite 40 40 41
45: TypePointer Function 39
49: TypeVector 36(int) 2
50: TypePointer Function 49(ivec2)
52: TypeVector 14(int) 2
53: TypePointer Function 52(ivec2)
57: TypeInt 16 1
58: TypeVector 57(int) 2
59: TypePointer Function 58(ivec2)
66: TypeVector 27(int) 2
67: TypePointer Function 66(ivec2)
74: TypeVector 17(int) 2
75: TypePointer Function 74(ivec2)
80: TypeInt 64 1
81: TypeVector 80(int) 2
82: TypePointer Function 81(ivec2)
86: TypeInt 64 0
87: TypeVector 86(int) 2
88: TypePointer Function 87(ivec2)
100: TypeFloat 16
101: TypeVector 100(float) 2
102: TypePointer Function 101(fvec2)
106: TypeFloat 32
107: TypeVector 106(float) 2
108: TypePointer Function 107(fvec2)
112: TypeFloat 64
113: TypeVector 112(float) 2
114: TypePointer Function 113(fvec2)
141: TypeInt 16 0
142: TypeVector 141(int) 2
143: TypePointer Function 142(ivec2)
171: TypeBool
172: TypeVector 171(bool) 2
173: TypePointer Function 172(bvec2)
176: 14(int) Constant 1
177: 52(ivec2) ConstantComposite 22 22
178: 52(ivec2) ConstantComposite 176 176
181: 36(int) Constant 0
182: 36(int) Constant 1
183: 49(ivec2) ConstantComposite 181 181
184: 49(ivec2) ConstantComposite 182 182
190: TypeVector 14(int) 3
191: TypePointer Function 190(ivec3)
215: TypePointer Function 27(int)
221: TypeVector 17(int) 3
222: TypePointer Function 221(ivec3)
225: TypeVector 27(int) 3
241: TypePointer Function 57(int)
264: 17(int) Constant 1
270: 17(int) Constant 2
278: TypePointer Function 171(bool)
280: 17(int) Constant 0
293: TypePointer Function 17(int)
352: 52(ivec2) ConstantComposite 21 21
358: TypeVector 36(int) 3
362: 190(ivec3) ConstantComposite 22 22 22
404: 171(bool) ConstantTrue
411: 171(bool) ConstantFalse
412: 172(bvec2) ConstantComposite 411 411
427: TypeVector 171(bool) 3
428: 427(bvec3) ConstantComposite 411 411 411
434: TypeVector 14(int) 4
435: TypePointer Function 434(ivec4)
439: TypePointer Function 141(int)
445: TypeVector 36(int) 4
446: TypePointer Function 445(ivec4)
458: TypePointer Function 427(bvec3)
526(Block): TypeStruct 14(int) 52(ivec2) 190(ivec3) 434(ivec4) 36(int) 49(ivec2) 190(ivec3) 445(ivec4)
527: TypePointer Uniform 526(Block)
528(block): 527(ptr) Variable Uniform
529(si8): 14(int) SpecConstant 4294967286
530(su8): 36(int) SpecConstant 20
4(main): 2 Function None 3
5: Label
Return
......@@ -193,553 +198,553 @@ spv.int8.frag
7: Label
16(i8): 15(ptr) Variable Function
33(indexable): 32(ptr) Variable Function
39(u8): 38(ptr) Variable Function
47(indexable): 46(ptr) Variable Function
38(u8): 37(ptr) Variable Function
46(indexable): 45(ptr) Variable Function
30: 29(ptr) AccessChain 26 28
31: 17(int) Load 30
Store 33(indexable) 23
34: 15(ptr) AccessChain 33(indexable) 31
35: 14(int) Load 34
Store 16(i8) 35
44: 29(ptr) AccessChain 26 28
45: 17(int) Load 44
Store 47(indexable) 43
48: 38(ptr) AccessChain 47(indexable) 45
49: 37(int) Load 48
Store 39(u8) 49
43: 29(ptr) AccessChain 26 28
44: 17(int) Load 43
Store 46(indexable) 42
47: 37(ptr) AccessChain 46(indexable) 44
48: 36(int) Load 47
Store 38(u8) 48
Return
FunctionEnd
8(typeCast8(): 2 Function None 3
9: Label
52(u8v): 51(ptr) Variable Function
55(i8v): 54(ptr) Variable Function
58(i16v): 51(ptr) Variable Function
66(i32v): 65(ptr) Variable Function
74(u32v): 73(ptr) Variable Function
81(i64v): 80(ptr) Variable Function
87(u64v): 86(ptr) Variable Function
101(f16v): 100(ptr) Variable Function
107(f32v): 106(ptr) Variable Function
113(f64v): 112(ptr) Variable Function
140(u16v): 65(ptr) Variable Function
170(bv): 169(ptr) Variable Function
56: 53(ivec2) Load 55(i8v)
57: 50(ivec2) Bitcast 56
Store 52(u8v) 57
59: 53(ivec2) Load 55(i8v)
60: 50(ivec2) SConvert 59
Store 58(i16v) 60
61: 50(ivec2) Load 52(u8v)
62: 50(ivec2) UConvert 61
63: 50(ivec2) Bitcast 62
Store 58(i16v) 63
67: 53(ivec2) Load 55(i8v)
68: 64(ivec2) SConvert 67
Store 66(i32v) 68
69: 50(ivec2) Load 52(u8v)
70: 64(ivec2) UConvert 69
71: 64(ivec2) Bitcast 70
Store 66(i32v) 71
75: 53(ivec2) Load 55(i8v)
76: 64(ivec2) SConvert 75
77: 72(ivec2) Bitcast 76
Store 74(u32v) 77
82: 53(ivec2) Load 55(i8v)
83: 79(ivec2) SConvert 82
Store 81(i64v) 83
88: 53(ivec2) Load 55(i8v)
89: 79(ivec2) SConvert 88
90: 85(ivec2) Bitcast 89
Store 87(u64v) 90
91: 50(ivec2) Load 52(u8v)
92: 72(ivec2) UConvert 91
Store 74(u32v) 92
93: 50(ivec2) Load 52(u8v)
94: 79(ivec2) UConvert 93
95: 79(ivec2) Bitcast 94
Store 81(i64v) 95
96: 50(ivec2) Load 52(u8v)
97: 85(ivec2) UConvert 96
Store 87(u64v) 97
102: 53(ivec2) Load 55(i8v)
103: 99(fvec2) ConvertSToF 102
Store 101(f16v) 103
108: 53(ivec2) Load 55(i8v)
109: 105(fvec2) ConvertSToF 108
Store 107(f32v) 109
114: 53(ivec2) Load 55(i8v)
115: 111(fvec2) ConvertSToF 114
Store 113(f64v) 115
116: 50(ivec2) Load 52(u8v)
117: 99(fvec2) ConvertUToF 116
Store 101(f16v) 117
118: 50(ivec2) Load 52(u8v)
119: 105(fvec2) ConvertUToF 118
Store 107(f32v) 119
120: 50(ivec2) Load 52(u8v)
121: 111(fvec2) ConvertUToF 120
Store 113(f64v) 121
122: 50(ivec2) Load 52(u8v)
123: 53(ivec2) Bitcast 122
Store 55(i8v) 123
124: 53(ivec2) Load 55(i8v)
125: 50(ivec2) SConvert 124
Store 58(i16v) 125
126: 50(ivec2) Load 52(u8v)
127: 50(ivec2) UConvert 126
128: 50(ivec2) Bitcast 127
Store 58(i16v) 128
129: 53(ivec2) Load 55(i8v)
130: 64(ivec2) SConvert 129
Store 66(i32v) 130
131: 50(ivec2) Load 52(u8v)
132: 64(ivec2) UConvert 131
133: 64(ivec2) Bitcast 132
Store 66(i32v) 133
134: 53(ivec2) Load 55(i8v)
135: 79(ivec2) SConvert 134
Store 81(i64v) 135
136: 53(ivec2) Load 55(i8v)
137: 79(ivec2) SConvert 136
138: 85(ivec2) Bitcast 137
Store 87(u64v) 138
141: 53(ivec2) Load 55(i8v)
142: 50(ivec2) SConvert 141
143: 64(ivec2) Bitcast 142
Store 140(u16v) 143
144: 50(ivec2) Load 52(u8v)
145: 64(ivec2) UConvert 144
Store 140(u16v) 145
146: 50(ivec2) Load 52(u8v)
147: 72(ivec2) UConvert 146
Store 74(u32v) 147
148: 50(ivec2) Load 52(u8v)
149: 79(ivec2) UConvert 148
150: 79(ivec2) Bitcast 149
Store 81(i64v) 150
151: 50(ivec2) Load 52(u8v)
152: 79(ivec2) UConvert 151
153: 79(ivec2) Bitcast 152
154: 85(ivec2) Bitcast 153
Store 87(u64v) 154
155: 53(ivec2) Load 55(i8v)
156: 99(fvec2) ConvertSToF 155
Store 101(f16v) 156
157: 53(ivec2) Load 55(i8v)
158: 105(fvec2) ConvertSToF 157
Store 107(f32v) 158
159: 53(ivec2) Load 55(i8v)
160: 111(fvec2) ConvertSToF 159
Store 113(f64v) 160
161: 50(ivec2) Load 52(u8v)
162: 99(fvec2) ConvertUToF 161
Store 101(f16v) 162
163: 50(ivec2) Load 52(u8v)
164: 105(fvec2) ConvertUToF 163
Store 107(f32v) 164
165: 50(ivec2) Load 52(u8v)
166: 111(fvec2) ConvertUToF 165
Store 113(f64v) 166
171: 168(bvec2) Load 170(bv)
175: 53(ivec2) Select 171 174 173
Store 55(i8v) 175
176: 168(bvec2) Load 170(bv)
182: 50(ivec2) Select 176 181 180
Store 52(u8v) 182
183: 53(ivec2) Load 55(i8v)
184: 168(bvec2) INotEqual 183 180
Store 170(bv) 184
185: 50(ivec2) Load 52(u8v)
186: 168(bvec2) INotEqual 185 180
Store 170(bv) 186
51(u8v): 50(ptr) Variable Function
54(i8v): 53(ptr) Variable Function
60(i16v): 59(ptr) Variable Function
68(i32v): 67(ptr) Variable Function
76(u32v): 75(ptr) Variable Function
83(i64v): 82(ptr) Variable Function
89(u64v): 88(ptr) Variable Function
103(f16v): 102(ptr) Variable Function
109(f32v): 108(ptr) Variable Function
115(f64v): 114(ptr) Variable Function
144(u16v): 143(ptr) Variable Function
174(bv): 173(ptr) Variable Function
55: 52(ivec2) Load 54(i8v)
56: 49(ivec2) Bitcast 55
Store 51(u8v) 56
61: 52(ivec2) Load 54(i8v)
62: 58(ivec2) SConvert 61
Store 60(i16v) 62
63: 49(ivec2) Load 51(u8v)
64: 58(ivec2) UConvert 63
65: 58(ivec2) Bitcast 64
Store 60(i16v) 65
69: 52(ivec2) Load 54(i8v)
70: 66(ivec2) SConvert 69
Store 68(i32v) 70
71: 49(ivec2) Load 51(u8v)
72: 66(ivec2) UConvert 71
73: 66(ivec2) Bitcast 72
Store 68(i32v) 73
77: 52(ivec2) Load 54(i8v)
78: 66(ivec2) SConvert 77
79: 74(ivec2) Bitcast 78
Store 76(u32v) 79
84: 52(ivec2) Load 54(i8v)
85: 81(ivec2) SConvert 84
Store 83(i64v) 85
90: 52(ivec2) Load 54(i8v)
91: 81(ivec2) SConvert 90
92: 87(ivec2) Bitcast 91
Store 89(u64v) 92
93: 49(ivec2) Load 51(u8v)
94: 74(ivec2) UConvert 93
Store 76(u32v) 94
95: 49(ivec2) Load 51(u8v)
96: 81(ivec2) UConvert 95
97: 81(ivec2) Bitcast 96
Store 83(i64v) 97
98: 49(ivec2) Load 51(u8v)
99: 87(ivec2) UConvert 98
Store 89(u64v) 99
104: 52(ivec2) Load 54(i8v)
105: 101(fvec2) ConvertSToF 104
Store 103(f16v) 105
110: 52(ivec2) Load 54(i8v)
111: 107(fvec2) ConvertSToF 110
Store 109(f32v) 111
116: 52(ivec2) Load 54(i8v)
117: 113(fvec2) ConvertSToF 116
Store 115(f64v) 117
118: 49(ivec2) Load 51(u8v)
119: 101(fvec2) ConvertUToF 118
Store 103(f16v) 119
120: 49(ivec2) Load 51(u8v)
121: 107(fvec2) ConvertUToF 120
Store 109(f32v) 121
122: 49(ivec2) Load 51(u8v)
123: 113(fvec2) ConvertUToF 122
Store 115(f64v) 123
124: 49(ivec2) Load 51(u8v)
125: 52(ivec2) Bitcast 124
Store 54(i8v) 125
126: 52(ivec2) Load 54(i8v)
127: 58(ivec2) SConvert 126
Store 60(i16v) 127
128: 49(ivec2) Load 51(u8v)
129: 58(ivec2) UConvert 128
130: 58(ivec2) Bitcast 129
Store 60(i16v) 130
131: 52(ivec2) Load 54(i8v)
132: 66(ivec2) SConvert 131
Store 68(i32v) 132
133: 49(ivec2) Load 51(u8v)
134: 66(ivec2) UConvert 133
135: 66(ivec2) Bitcast 134
Store 68(i32v) 135
136: 52(ivec2) Load 54(i8v)
137: 81(ivec2) SConvert 136
Store 83(i64v) 137
138: 52(ivec2) Load 54(i8v)
139: 81(ivec2) SConvert 138
140: 87(ivec2) Bitcast 139
Store 89(u64v) 140
145: 52(ivec2) Load 54(i8v)
146: 58(ivec2) SConvert 145
147: 142(ivec2) Bitcast 146
Store 144(u16v) 147
148: 49(ivec2) Load 51(u8v)
149: 142(ivec2) UConvert 148
Store 144(u16v) 149
150: 49(ivec2) Load 51(u8v)
151: 74(ivec2) UConvert 150
Store 76(u32v) 151
152: 49(ivec2) Load 51(u8v)
153: 81(ivec2) UConvert 152
154: 81(ivec2) Bitcast 153
Store 83(i64v) 154
155: 49(ivec2) Load 51(u8v)
156: 81(ivec2) UConvert 155
157: 81(ivec2) Bitcast 156
158: 87(ivec2) Bitcast 157
Store 89(u64v) 158
159: 52(ivec2) Load 54(i8v)
160: 101(fvec2) ConvertSToF 159
Store 103(f16v) 160
161: 52(ivec2) Load 54(i8v)
162: 107(fvec2) ConvertSToF 161
Store 109(f32v) 162
163: 52(ivec2) Load 54(i8v)
164: 113(fvec2) ConvertSToF 163
Store 115(f64v) 164
165: 49(ivec2) Load 51(u8v)
166: 101(fvec2) ConvertUToF 165
Store 103(f16v) 166
167: 49(ivec2) Load 51(u8v)
168: 107(fvec2) ConvertUToF 167
Store 109(f32v) 168
169: 49(ivec2) Load 51(u8v)
170: 113(fvec2) ConvertUToF 169
Store 115(f64v) 170
175: 172(bvec2) Load 174(bv)
179: 52(ivec2) Select 175 178 177
Store 54(i8v) 179
180: 172(bvec2) Load 174(bv)
185: 49(ivec2) Select 180 184 183
Store 51(u8v) 185
186: 52(ivec2) Load 54(i8v)
187: 172(bvec2) INotEqual 186 183
Store 174(bv) 187
188: 49(ivec2) Load 51(u8v)
189: 172(bvec2) INotEqual 188 183
Store 174(bv) 189
Return
FunctionEnd
10(operators(): 2 Function None 3
11: Label
189(u8v): 188(ptr) Variable Function
193(i8): 15(ptr) Variable Function
213(i): 212(ptr) Variable Function
220(uv): 219(ptr) Variable Function
238(i16): 38(ptr) Variable Function
275(b): 274(ptr) Variable Function
190: 187(ivec3) Load 189(u8v)
191: 187(ivec3) CompositeConstruct 172 172 172
192: 187(ivec3) IAdd 190 191
Store 189(u8v) 192
194: 14(int) Load 193(i8)
195: 14(int) ISub 194 172
Store 193(i8) 195
196: 14(int) Load 193(i8)
197: 14(int) IAdd 196 172
Store 193(i8) 197
198: 187(ivec3) Load 189(u8v)
199: 187(ivec3) CompositeConstruct 172 172 172
200: 187(ivec3) ISub 198 199
Store 189(u8v) 200
201: 187(ivec3) Load 189(u8v)
202: 187(ivec3) Not 201
Store 189(u8v) 202
203: 14(int) Load 193(i8)
Store 193(i8) 203
204: 187(ivec3) Load 189(u8v)
205: 187(ivec3) SNegate 204
Store 189(u8v) 205
206: 14(int) Load 193(i8)
207: 14(int) Load 193(i8)
208: 14(int) IAdd 207 206
Store 193(i8) 208
209: 187(ivec3) Load 189(u8v)
210: 187(ivec3) Load 189(u8v)
211: 187(ivec3) ISub 210 209
Store 189(u8v) 211
214: 14(int) Load 193(i8)
215: 27(int) SConvert 214
216: 27(int) Load 213(i)
217: 27(int) IMul 216 215
Store 213(i) 217
221: 187(ivec3) Load 189(u8v)
223: 222(ivec3) SConvert 221
224: 218(ivec3) Bitcast 223
225: 218(ivec3) Load 220(uv)
226: 218(ivec3) UDiv 225 224
Store 220(uv) 226
227: 14(int) Load 193(i8)
228: 27(int) SConvert 227
229: 17(int) Bitcast 228
230: 218(ivec3) Load 220(uv)
231: 218(ivec3) CompositeConstruct 229 229 229
232: 218(ivec3) UMod 230 231
Store 220(uv) 232
233: 187(ivec3) Load 189(u8v)
234: 222(ivec3) SConvert 233
235: 218(ivec3) Bitcast 234
236: 218(ivec3) Load 220(uv)
237: 218(ivec3) IAdd 235 236
Store 220(uv) 237
239: 14(int) Load 193(i8)
240: 37(int) SConvert 239
241: 37(int) Load 238(i16)
242: 37(int) ISub 240 241
Store 238(i16) 242
243: 187(ivec3) Load 189(u8v)
244: 222(ivec3) SConvert 243
245: 218(ivec3) Bitcast 244
246: 218(ivec3) Load 220(uv)
247: 218(ivec3) IMul 245 246
Store 220(uv) 247
248: 14(int) Load 193(i8)
249: 37(int) SConvert 248
250: 37(int) Load 238(i16)
251: 37(int) IMul 249 250
Store 238(i16) 251
252: 14(int) Load 193(i8)
253: 27(int) SConvert 252
254: 27(int) Load 213(i)
255: 27(int) SMod 253 254
Store 213(i) 255
256: 14(int) Load 193(i8)
257: 187(ivec3) Load 189(u8v)
258: 187(ivec3) CompositeConstruct 256 256 256
259: 187(ivec3) ShiftLeftLogical 257 258
Store 189(u8v) 259
261: 15(ptr) AccessChain 189(u8v) 260
262: 14(int) Load 261
263: 14(int) Load 193(i8)
264: 14(int) ShiftRightArithmetic 263 262
Store 193(i8) 264
265: 14(int) Load 193(i8)
267: 15(ptr) AccessChain 189(u8v) 266
268: 14(int) Load 267
269: 14(int) ShiftLeftLogical 265 268
Store 193(i8) 269
270: 187(ivec3) Load 189(u8v)
271: 14(int) Load 193(i8)
272: 187(ivec3) CompositeConstruct 271 271 271
273: 187(ivec3) ShiftLeftLogical 270 272
Store 189(u8v) 273
277: 15(ptr) AccessChain 189(u8v) 276
278: 14(int) Load 277
279: 14(int) Load 193(i8)
280: 167(bool) INotEqual 278 279
Store 275(b) 280
281: 14(int) Load 193(i8)
282: 15(ptr) AccessChain 189(u8v) 276
283: 14(int) Load 282
284: 167(bool) IEqual 281 283
Store 275(b) 284
285: 15(ptr) AccessChain 189(u8v) 276
286: 14(int) Load 285
287: 27(int) SConvert 286
288: 17(int) Bitcast 287
290: 289(ptr) AccessChain 220(uv) 260
291: 17(int) Load 290
292: 167(bool) UGreaterThan 288 291
Store 275(b) 292
293: 14(int) Load 193(i8)
294: 27(int) SConvert 293
295: 27(int) Load 213(i)
296: 167(bool) SLessThan 294 295
Store 275(b) 296
297: 15(ptr) AccessChain 189(u8v) 260
298: 14(int) Load 297
299: 27(int) SConvert 298
300: 17(int) Bitcast 299
301: 289(ptr) AccessChain 220(uv) 276
302: 17(int) Load 301
303: 167(bool) UGreaterThanEqual 300 302
Store 275(b) 303
304: 14(int) Load 193(i8)
305: 27(int) SConvert 304
306: 27(int) Load 213(i)
307: 167(bool) SLessThanEqual 305 306
Store 275(b) 307
308: 14(int) Load 193(i8)
192(u8v): 191(ptr) Variable Function
196(i8): 15(ptr) Variable Function
216(i): 215(ptr) Variable Function
223(uv): 222(ptr) Variable Function
242(i16): 241(ptr) Variable Function
279(b): 278(ptr) Variable Function
193: 190(ivec3) Load 192(u8v)
194: 190(ivec3) CompositeConstruct 176 176 176
195: 190(ivec3) IAdd 193 194
Store 192(u8v) 195
197: 14(int) Load 196(i8)
198: 14(int) ISub 197 176
Store 196(i8) 198
199: 14(int) Load 196(i8)
200: 14(int) IAdd 199 176
Store 196(i8) 200
201: 190(ivec3) Load 192(u8v)
202: 190(ivec3) CompositeConstruct 176 176 176
203: 190(ivec3) ISub 201 202
Store 192(u8v) 203
204: 190(ivec3) Load 192(u8v)
205: 190(ivec3) Not 204
Store 192(u8v) 205
206: 14(int) Load 196(i8)
Store 196(i8) 206
207: 190(ivec3) Load 192(u8v)
208: 190(ivec3) SNegate 207
Store 192(u8v) 208
209: 14(int) Load 196(i8)
210: 14(int) Load 196(i8)
211: 14(int) IAdd 210 209
Store 196(i8) 211
212: 190(ivec3) Load 192(u8v)
213: 190(ivec3) Load 192(u8v)
214: 190(ivec3) ISub 213 212
Store 192(u8v) 214
217: 14(int) Load 196(i8)
218: 27(int) SConvert 217
219: 27(int) Load 216(i)
220: 27(int) IMul 219 218
Store 216(i) 220
224: 190(ivec3) Load 192(u8v)
226: 225(ivec3) SConvert 224
227: 221(ivec3) Bitcast 226
228: 221(ivec3) Load 223(uv)
229: 221(ivec3) UDiv 228 227
Store 223(uv) 229
230: 14(int) Load 196(i8)
231: 27(int) SConvert 230
232: 17(int) Bitcast 231
233: 221(ivec3) Load 223(uv)
234: 221(ivec3) CompositeConstruct 232 232 232
235: 221(ivec3) UMod 233 234
Store 223(uv) 235
236: 190(ivec3) Load 192(u8v)
237: 225(ivec3) SConvert 236
238: 221(ivec3) Bitcast 237
239: 221(ivec3) Load 223(uv)
240: 221(ivec3) IAdd 238 239
Store 223(uv) 240
243: 14(int) Load 196(i8)
244: 57(int) SConvert 243
245: 57(int) Load 242(i16)
246: 57(int) ISub 244 245
Store 242(i16) 246
247: 190(ivec3) Load 192(u8v)
248: 225(ivec3) SConvert 247
249: 221(ivec3) Bitcast 248
250: 221(ivec3) Load 223(uv)
251: 221(ivec3) IMul 249 250
Store 223(uv) 251
252: 14(int) Load 196(i8)
253: 57(int) SConvert 252
254: 57(int) Load 242(i16)
255: 57(int) IMul 253 254
Store 242(i16) 255
256: 14(int) Load 196(i8)
257: 27(int) SConvert 256
258: 27(int) Load 216(i)
259: 27(int) SMod 257 258
Store 216(i) 259
260: 14(int) Load 196(i8)
261: 190(ivec3) Load 192(u8v)
262: 190(ivec3) CompositeConstruct 260 260 260
263: 190(ivec3) ShiftLeftLogical 261 262
Store 192(u8v) 263
265: 15(ptr) AccessChain 192(u8v) 264
266: 14(int) Load 265
267: 14(int) Load 196(i8)
268: 14(int) ShiftRightArithmetic 267 266
Store 196(i8) 268
269: 14(int) Load 196(i8)
271: 15(ptr) AccessChain 192(u8v) 270
272: 14(int) Load 271
273: 14(int) ShiftLeftLogical 269 272
Store 196(i8) 273
274: 190(ivec3) Load 192(u8v)
275: 14(int) Load 196(i8)
276: 190(ivec3) CompositeConstruct 275 275 275
277: 190(ivec3) ShiftLeftLogical 274 276
Store 192(u8v) 277
281: 15(ptr) AccessChain 192(u8v) 280
282: 14(int) Load 281
283: 14(int) Load 196(i8)
284: 171(bool) INotEqual 282 283
Store 279(b) 284
285: 14(int) Load 196(i8)
286: 15(ptr) AccessChain 192(u8v) 280
287: 14(int) Load 286
288: 171(bool) IEqual 285 287
Store 279(b) 288
289: 15(ptr) AccessChain 192(u8v) 280
290: 14(int) Load 289
291: 27(int) SConvert 290
292: 17(int) Bitcast 291
294: 293(ptr) AccessChain 223(uv) 264
295: 17(int) Load 294
296: 171(bool) UGreaterThan 292 295
Store 279(b) 296
297: 14(int) Load 196(i8)
298: 27(int) SConvert 297
299: 27(int) Load 216(i)
300: 171(bool) SLessThan 298 299
Store 279(b) 300
301: 15(ptr) AccessChain 192(u8v) 264
302: 14(int) Load 301
303: 27(int) SConvert 302
304: 17(int) Bitcast 303
305: 293(ptr) AccessChain 223(uv) 280
306: 17(int) Load 305
307: 171(bool) UGreaterThanEqual 304 306
Store 279(b) 307
308: 14(int) Load 196(i8)
309: 27(int) SConvert 308
310: 17(int) Bitcast 309
311: 218(ivec3) Load 220(uv)
312: 218(ivec3) CompositeConstruct 310 310 310
313: 218(ivec3) BitwiseOr 311 312
Store 220(uv) 313
314: 14(int) Load 193(i8)
315: 27(int) SConvert 314
316: 27(int) Load 213(i)
317: 27(int) BitwiseOr 315 316
Store 213(i) 317
318: 14(int) Load 193(i8)
319: 37(int) SConvert 318
320: 37(int) Load 238(i16)
321: 37(int) BitwiseAnd 320 319
Store 238(i16) 321
322: 187(ivec3) Load 189(u8v)
323: 222(ivec3) SConvert 322
324: 218(ivec3) Bitcast 323
325: 218(ivec3) Load 220(uv)
326: 218(ivec3) BitwiseAnd 324 325
Store 220(uv) 326
327: 14(int) Load 193(i8)
328: 27(int) SConvert 327
329: 17(int) Bitcast 328
330: 218(ivec3) Load 220(uv)
331: 218(ivec3) CompositeConstruct 329 329 329
332: 218(ivec3) BitwiseXor 330 331
Store 220(uv) 332
333: 187(ivec3) Load 189(u8v)
334: 14(int) Load 193(i8)
335: 187(ivec3) CompositeConstruct 334 334 334
336: 187(ivec3) BitwiseXor 333 335
Store 189(u8v) 336
310: 27(int) Load 216(i)
311: 171(bool) SLessThanEqual 309 310
Store 279(b) 311
312: 14(int) Load 196(i8)
313: 27(int) SConvert 312
314: 17(int) Bitcast 313
315: 221(ivec3) Load 223(uv)
316: 221(ivec3) CompositeConstruct 314 314 314
317: 221(ivec3) BitwiseOr 315 316
Store 223(uv) 317
318: 14(int) Load 196(i8)
319: 27(int) SConvert 318
320: 27(int) Load 216(i)
321: 27(int) BitwiseOr 319 320
Store 216(i) 321
322: 14(int) Load 196(i8)
323: 57(int) SConvert 322
324: 57(int) Load 242(i16)
325: 57(int) BitwiseAnd 324 323
Store 242(i16) 325
326: 190(ivec3) Load 192(u8v)
327: 225(ivec3) SConvert 326
328: 221(ivec3) Bitcast 327
329: 221(ivec3) Load 223(uv)
330: 221(ivec3) BitwiseAnd 328 329
Store 223(uv) 330
331: 14(int) Load 196(i8)
332: 27(int) SConvert 331
333: 17(int) Bitcast 332
334: 221(ivec3) Load 223(uv)
335: 221(ivec3) CompositeConstruct 333 333 333
336: 221(ivec3) BitwiseXor 334 335
Store 223(uv) 336
337: 190(ivec3) Load 192(u8v)
338: 14(int) Load 196(i8)
339: 190(ivec3) CompositeConstruct 338 338 338
340: 190(ivec3) BitwiseXor 337 339
Store 192(u8v) 340
Return
FunctionEnd
12(builtinFuncs(): 2 Function None 3
13: Label
337(i8v): 54(ptr) Variable Function
340(i8): 15(ptr) Variable Function
350(u8v): 188(ptr) Variable Function
352(u8): 38(ptr) Variable Function
426(i16): 38(ptr) Variable Function
429(i32): 212(ptr) Variable Function
432(i8v4): 431(ptr) Variable Function
435(u16): 212(ptr) Variable Function
436(u8v2): 51(ptr) Variable Function
439(u32): 289(ptr) Variable Function
442(u8v4): 441(ptr) Variable Function
454(bv): 453(ptr) Variable Function
338: 53(ivec2) Load 337(i8v)
339: 53(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 338
Store 337(i8v) 339
341: 14(int) Load 340(i8)
342: 14(int) ExtInst 1(GLSL.std.450) 7(SSign) 341
Store 340(i8) 342
343: 53(ivec2) Load 337(i8v)
344: 14(int) Load 340(i8)
345: 53(ivec2) CompositeConstruct 344 344
346: 53(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 343 345
Store 337(i8v) 346
347: 53(ivec2) Load 337(i8v)
349: 53(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 347 348
Store 337(i8v) 349
351: 187(ivec3) Load 350(u8v)
353: 37(int) Load 352(u8)
355: 354(ivec3) CompositeConstruct 353 353 353
356: 187(ivec3) ExtInst 1(GLSL.std.450) 39(SMin) 351 355
Store 350(u8v) 356
357: 187(ivec3) Load 350(u8v)
359: 187(ivec3) ExtInst 1(GLSL.std.450) 39(SMin) 357 358
Store 350(u8v) 359
360: 53(ivec2) Load 337(i8v)
361: 14(int) Load 340(i8)
362: 53(ivec2) CompositeConstruct 361 361
363: 53(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 360 362
Store 337(i8v) 363
364: 53(ivec2) Load 337(i8v)
365: 53(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 364 348
Store 337(i8v) 365
366: 187(ivec3) Load 350(u8v)
367: 37(int) Load 352(u8)
368: 354(ivec3) CompositeConstruct 367 367 367
369: 187(ivec3) ExtInst 1(GLSL.std.450) 42(SMax) 366 368
Store 350(u8v) 369
370: 187(ivec3) Load 350(u8v)
371: 187(ivec3) ExtInst 1(GLSL.std.450) 42(SMax) 370 358
Store 350(u8v) 371
372: 53(ivec2) Load 337(i8v)
373: 14(int) Load 340(i8)
374: 14(int) SNegate 373
375: 14(int) Load 340(i8)
376: 53(ivec2) CompositeConstruct 374 374
377: 53(ivec2) CompositeConstruct 375 375
378: 53(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 372 376 377
Store 337(i8v) 378
379: 53(ivec2) Load 337(i8v)
380: 53(ivec2) Load 337(i8v)
381: 53(ivec2) SNegate 380
382: 53(ivec2) Load 337(i8v)
383: 53(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 379 381 382
Store 337(i8v) 383
384: 187(ivec3) Load 350(u8v)
385: 37(int) Load 352(u8)
386: 37(int) SNegate 385
387: 37(int) Load 352(u8)
388: 354(ivec3) CompositeConstruct 386 386 386
389: 354(ivec3) CompositeConstruct 387 387 387
390: 187(ivec3) ExtInst 1(GLSL.std.450) 45(SClamp) 384 388 389
Store 350(u8v) 390
391: 187(ivec3) Load 350(u8v)
392: 187(ivec3) Load 350(u8v)
393: 187(ivec3) SNegate 392
394: 187(ivec3) Load 350(u8v)
395: 187(ivec3) ExtInst 1(GLSL.std.450) 45(SClamp) 391 393 394
Store 350(u8v) 395
396: 15(ptr) AccessChain 337(i8v) 276
397: 14(int) Load 396
398: 15(ptr) AccessChain 337(i8v) 260
399: 14(int) Load 398
401: 14(int) Select 400 399 397
Store 340(i8) 401
402: 14(int) Load 340(i8)
403: 53(ivec2) CompositeConstruct 402 402
404: 14(int) Load 340(i8)
405: 14(int) SNegate 404
406: 53(ivec2) CompositeConstruct 405 405
409: 53(ivec2) Select 408 406 403
Store 337(i8v) 409
410: 15(ptr) AccessChain 350(u8v) 276
411: 14(int) Load 410
412: 15(ptr) AccessChain 350(u8v) 260
413: 14(int) Load 412
414: 14(int) Select 400 413 411
415: 37(int) Bitcast 414
Store 352(u8) 415
416: 37(int) Load 352(u8)
417: 14(int) Bitcast 416
418: 187(ivec3) CompositeConstruct 417 417 417
419: 37(int) Load 352(u8)
420: 37(int) SNegate 419
341(i8v): 53(ptr) Variable Function
344(i8): 15(ptr) Variable Function
354(u8v): 191(ptr) Variable Function
356(u8): 37(ptr) Variable Function
430(i16): 241(ptr) Variable Function
433(i32): 215(ptr) Variable Function
436(i8v4): 435(ptr) Variable Function
440(u16): 439(ptr) Variable Function
441(u8v2): 50(ptr) Variable Function
444(u32): 293(ptr) Variable Function
447(u8v4): 446(ptr) Variable Function
459(bv): 458(ptr) Variable Function
342: 52(ivec2) Load 341(i8v)
343: 52(ivec2) ExtInst 1(GLSL.std.450) 5(SAbs) 342
Store 341(i8v) 343
345: 14(int) Load 344(i8)
346: 14(int) ExtInst 1(GLSL.std.450) 7(SSign) 345
Store 344(i8) 346
347: 52(ivec2) Load 341(i8v)
348: 14(int) Load 344(i8)
349: 52(ivec2) CompositeConstruct 348 348
350: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 347 349
Store 341(i8v) 350
351: 52(ivec2) Load 341(i8v)
353: 52(ivec2) ExtInst 1(GLSL.std.450) 39(SMin) 351 352
Store 341(i8v) 353
355: 190(ivec3) Load 354(u8v)
357: 36(int) Load 356(u8)
359: 358(ivec3) CompositeConstruct 357 357 357
360: 190(ivec3) ExtInst 1(GLSL.std.450) 39(SMin) 355 359
Store 354(u8v) 360
361: 190(ivec3) Load 354(u8v)
363: 190(ivec3) ExtInst 1(GLSL.std.450) 39(SMin) 361 362
Store 354(u8v) 363
364: 52(ivec2) Load 341(i8v)
365: 14(int) Load 344(i8)
366: 52(ivec2) CompositeConstruct 365 365
367: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 364 366
Store 341(i8v) 367
368: 52(ivec2) Load 341(i8v)
369: 52(ivec2) ExtInst 1(GLSL.std.450) 42(SMax) 368 352
Store 341(i8v) 369
370: 190(ivec3) Load 354(u8v)
371: 36(int) Load 356(u8)
372: 358(ivec3) CompositeConstruct 371 371 371
373: 190(ivec3) ExtInst 1(GLSL.std.450) 42(SMax) 370 372
Store 354(u8v) 373
374: 190(ivec3) Load 354(u8v)
375: 190(ivec3) ExtInst 1(GLSL.std.450) 42(SMax) 374 362
Store 354(u8v) 375
376: 52(ivec2) Load 341(i8v)
377: 14(int) Load 344(i8)
378: 14(int) SNegate 377
379: 14(int) Load 344(i8)
380: 52(ivec2) CompositeConstruct 378 378
381: 52(ivec2) CompositeConstruct 379 379
382: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 376 380 381
Store 341(i8v) 382
383: 52(ivec2) Load 341(i8v)
384: 52(ivec2) Load 341(i8v)
385: 52(ivec2) SNegate 384
386: 52(ivec2) Load 341(i8v)
387: 52(ivec2) ExtInst 1(GLSL.std.450) 45(SClamp) 383 385 386
Store 341(i8v) 387
388: 190(ivec3) Load 354(u8v)
389: 36(int) Load 356(u8)
390: 36(int) SNegate 389
391: 36(int) Load 356(u8)
392: 358(ivec3) CompositeConstruct 390 390 390
393: 358(ivec3) CompositeConstruct 391 391 391
394: 190(ivec3) ExtInst 1(GLSL.std.450) 45(SClamp) 388 392 393
Store 354(u8v) 394
395: 190(ivec3) Load 354(u8v)
396: 190(ivec3) Load 354(u8v)
397: 190(ivec3) SNegate 396
398: 190(ivec3) Load 354(u8v)
399: 190(ivec3) ExtInst 1(GLSL.std.450) 45(SClamp) 395 397 398
Store 354(u8v) 399
400: 15(ptr) AccessChain 341(i8v) 280
401: 14(int) Load 400
402: 15(ptr) AccessChain 341(i8v) 264
403: 14(int) Load 402
405: 14(int) Select 404 403 401
Store 344(i8) 405
406: 14(int) Load 344(i8)
407: 52(ivec2) CompositeConstruct 406 406
408: 14(int) Load 344(i8)
409: 14(int) SNegate 408
410: 52(ivec2) CompositeConstruct 409 409
413: 52(ivec2) Select 412 410 407
Store 341(i8v) 413
414: 15(ptr) AccessChain 354(u8v) 280
415: 14(int) Load 414
416: 15(ptr) AccessChain 354(u8v) 264
417: 14(int) Load 416
418: 14(int) Select 404 417 415
419: 36(int) Bitcast 418
Store 356(u8) 419
420: 36(int) Load 356(u8)
421: 14(int) Bitcast 420
422: 187(ivec3) CompositeConstruct 421 421 421
425: 187(ivec3) Select 424 422 418
Store 350(u8v) 425
427: 53(ivec2) Load 337(i8v)
428: 37(int) Bitcast 427
Store 426(i16) 428
433: 430(ivec4) Load 432(i8v4)
434: 27(int) Bitcast 433
Store 429(i32) 434
437: 50(ivec2) Load 436(u8v2)
422: 190(ivec3) CompositeConstruct 421 421 421
423: 36(int) Load 356(u8)
424: 36(int) SNegate 423
425: 14(int) Bitcast 424
426: 190(ivec3) CompositeConstruct 425 425 425
429: 190(ivec3) Select 428 426 422
Store 354(u8v) 429
431: 52(ivec2) Load 341(i8v)
432: 57(int) Bitcast 431
Store 430(i16) 432
437: 434(ivec4) Load 436(i8v4)
438: 27(int) Bitcast 437
Store 435(u16) 438
443: 440(ivec4) Load 442(u8v4)
444: 17(int) Bitcast 443
Store 439(u32) 444
445: 37(int) Load 426(i16)
446: 53(ivec2) Bitcast 445
Store 337(i8v) 446
447: 27(int) Load 429(i32)
448: 430(ivec4) Bitcast 447
Store 432(i8v4) 448
449: 27(int) Load 435(u16)
450: 50(ivec2) Bitcast 449
Store 436(u8v2) 450
451: 17(int) Load 439(u32)
452: 440(ivec4) Bitcast 451
Store 442(u8v4) 452
455: 187(ivec3) Load 350(u8v)
456: 37(int) Load 352(u8)
457: 14(int) Bitcast 456
458: 187(ivec3) CompositeConstruct 457 457 457
459: 423(bvec3) SLessThan 455 458
Store 454(bv) 459
460: 53(ivec2) Load 337(i8v)
461: 14(int) Load 340(i8)
462: 53(ivec2) CompositeConstruct 461 461
463: 168(bvec2) SLessThan 460 462
464: 423(bvec3) Load 454(bv)
465: 423(bvec3) VectorShuffle 464 463 3 4 2
Store 454(bv) 465
466: 187(ivec3) Load 350(u8v)
467: 37(int) Load 352(u8)
468: 14(int) Bitcast 467
469: 187(ivec3) CompositeConstruct 468 468 468
470: 423(bvec3) SLessThanEqual 466 469
Store 454(bv) 470
471: 53(ivec2) Load 337(i8v)
472: 14(int) Load 340(i8)
473: 53(ivec2) CompositeConstruct 472 472
474: 168(bvec2) SLessThanEqual 471 473
475: 423(bvec3) Load 454(bv)
476: 423(bvec3) VectorShuffle 475 474 3 4 2
Store 454(bv) 476
477: 187(ivec3) Load 350(u8v)
478: 37(int) Load 352(u8)
479: 14(int) Bitcast 478
480: 187(ivec3) CompositeConstruct 479 479 479
481: 423(bvec3) SGreaterThan 477 480
Store 454(bv) 481
482: 53(ivec2) Load 337(i8v)
483: 14(int) Load 340(i8)
484: 53(ivec2) CompositeConstruct 483 483
485: 168(bvec2) SGreaterThan 482 484
486: 423(bvec3) Load 454(bv)
487: 423(bvec3) VectorShuffle 486 485 3 4 2
Store 454(bv) 487
488: 187(ivec3) Load 350(u8v)
489: 37(int) Load 352(u8)
490: 14(int) Bitcast 489
491: 187(ivec3) CompositeConstruct 490 490 490
492: 423(bvec3) SGreaterThanEqual 488 491
Store 454(bv) 492
493: 53(ivec2) Load 337(i8v)
494: 14(int) Load 340(i8)
495: 53(ivec2) CompositeConstruct 494 494
496: 168(bvec2) SGreaterThanEqual 493 495
497: 423(bvec3) Load 454(bv)
498: 423(bvec3) VectorShuffle 497 496 3 4 2
Store 454(bv) 498
499: 187(ivec3) Load 350(u8v)
500: 37(int) Load 352(u8)
501: 14(int) Bitcast 500
502: 187(ivec3) CompositeConstruct 501 501 501
503: 423(bvec3) IEqual 499 502
Store 454(bv) 503
504: 53(ivec2) Load 337(i8v)
505: 14(int) Load 340(i8)
506: 53(ivec2) CompositeConstruct 505 505
507: 168(bvec2) IEqual 504 506
508: 423(bvec3) Load 454(bv)
509: 423(bvec3) VectorShuffle 508 507 3 4 2
Store 454(bv) 509
510: 187(ivec3) Load 350(u8v)
511: 37(int) Load 352(u8)
512: 14(int) Bitcast 511
513: 187(ivec3) CompositeConstruct 512 512 512
514: 423(bvec3) INotEqual 510 513
Store 454(bv) 514
515: 53(ivec2) Load 337(i8v)
516: 14(int) Load 340(i8)
517: 53(ivec2) CompositeConstruct 516 516
518: 168(bvec2) INotEqual 515 517
519: 423(bvec3) Load 454(bv)
520: 423(bvec3) VectorShuffle 519 518 3 4 2
Store 454(bv) 520
Store 433(i32) 438
442: 49(ivec2) Load 441(u8v2)
443: 141(int) Bitcast 442
Store 440(u16) 443
448: 445(ivec4) Load 447(u8v4)
449: 17(int) Bitcast 448
Store 444(u32) 449
450: 57(int) Load 430(i16)
451: 52(ivec2) Bitcast 450
Store 341(i8v) 451
452: 27(int) Load 433(i32)
453: 434(ivec4) Bitcast 452
Store 436(i8v4) 453
454: 141(int) Load 440(u16)
455: 49(ivec2) Bitcast 454
Store 441(u8v2) 455
456: 17(int) Load 444(u32)
457: 445(ivec4) Bitcast 456
Store 447(u8v4) 457
460: 190(ivec3) Load 354(u8v)
461: 36(int) Load 356(u8)
462: 14(int) Bitcast 461
463: 190(ivec3) CompositeConstruct 462 462 462
464: 427(bvec3) SLessThan 460 463
Store 459(bv) 464
465: 52(ivec2) Load 341(i8v)
466: 14(int) Load 344(i8)
467: 52(ivec2) CompositeConstruct 466 466
468: 172(bvec2) SLessThan 465 467
469: 427(bvec3) Load 459(bv)
470: 427(bvec3) VectorShuffle 469 468 3 4 2
Store 459(bv) 470
471: 190(ivec3) Load 354(u8v)
472: 36(int) Load 356(u8)
473: 14(int) Bitcast 472
474: 190(ivec3) CompositeConstruct 473 473 473
475: 427(bvec3) SLessThanEqual 471 474
Store 459(bv) 475
476: 52(ivec2) Load 341(i8v)
477: 14(int) Load 344(i8)
478: 52(ivec2) CompositeConstruct 477 477
479: 172(bvec2) SLessThanEqual 476 478
480: 427(bvec3) Load 459(bv)
481: 427(bvec3) VectorShuffle 480 479 3 4 2
Store 459(bv) 481
482: 190(ivec3) Load 354(u8v)
483: 36(int) Load 356(u8)
484: 14(int) Bitcast 483
485: 190(ivec3) CompositeConstruct 484 484 484
486: 427(bvec3) SGreaterThan 482 485
Store 459(bv) 486
487: 52(ivec2) Load 341(i8v)
488: 14(int) Load 344(i8)
489: 52(ivec2) CompositeConstruct 488 488
490: 172(bvec2) SGreaterThan 487 489
491: 427(bvec3) Load 459(bv)
492: 427(bvec3) VectorShuffle 491 490 3 4 2
Store 459(bv) 492
493: 190(ivec3) Load 354(u8v)
494: 36(int) Load 356(u8)
495: 14(int) Bitcast 494
496: 190(ivec3) CompositeConstruct 495 495 495
497: 427(bvec3) SGreaterThanEqual 493 496
Store 459(bv) 497
498: 52(ivec2) Load 341(i8v)
499: 14(int) Load 344(i8)
500: 52(ivec2) CompositeConstruct 499 499
501: 172(bvec2) SGreaterThanEqual 498 500
502: 427(bvec3) Load 459(bv)
503: 427(bvec3) VectorShuffle 502 501 3 4 2
Store 459(bv) 503
504: 190(ivec3) Load 354(u8v)
505: 36(int) Load 356(u8)
506: 14(int) Bitcast 505
507: 190(ivec3) CompositeConstruct 506 506 506
508: 427(bvec3) IEqual 504 507
Store 459(bv) 508
509: 52(ivec2) Load 341(i8v)
510: 14(int) Load 344(i8)
511: 52(ivec2) CompositeConstruct 510 510
512: 172(bvec2) IEqual 509 511
513: 427(bvec3) Load 459(bv)
514: 427(bvec3) VectorShuffle 513 512 3 4 2
Store 459(bv) 514
515: 190(ivec3) Load 354(u8v)
516: 36(int) Load 356(u8)
517: 14(int) Bitcast 516
518: 190(ivec3) CompositeConstruct 517 517 517
519: 427(bvec3) INotEqual 515 518
Store 459(bv) 519
520: 52(ivec2) Load 341(i8v)
521: 14(int) Load 344(i8)
522: 52(ivec2) CompositeConstruct 521 521
523: 172(bvec2) INotEqual 520 522
524: 427(bvec3) Load 459(bv)
525: 427(bvec3) VectorShuffle 524 523 3 4 2
Store 459(bv) 525
Return
FunctionEnd
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment