1spv.int16.amd.frag 2// Module Version 10000 3// Generated by (magic number): 8000b 4// Id's are bound by 576 5 6 Capability Shader 7 Capability Float16 8 Capability Float64 9 Capability Int64 10 Capability Int16 11 Capability StorageUniform16 12 Capability StorageInputOutput16 13 Extension "SPV_AMD_gpu_shader_int16" 14 Extension "SPV_KHR_16bit_storage" 15 1: ExtInstImport "GLSL.std.450" 16 MemoryModel Logical GLSL450 17 EntryPoint Fragment 4 "main" 535 537 18 ExecutionMode 4 OriginUpperLeft 19 Source GLSL 450 20 SourceExtension "GL_AMD_gpu_shader_half_float" 21 SourceExtension "GL_AMD_gpu_shader_int16" 22 SourceExtension "GL_ARB_gpu_shader_int64" 23 Name 4 "main" 24 Name 6 "literal(" 25 Name 8 "operators(" 26 Name 10 "typeCast(" 27 Name 12 "builtinFuncs(" 28 Name 16 "u16" 29 Name 25 "Uniforms" 30 MemberName 25(Uniforms) 0 "i" 31 Name 27 "" 32 Name 34 "indexable" 33 Name 45 "indexable" 34 Name 51 "u16v" 35 Name 57 "i16" 36 Name 70 "u16" 37 Name 127 "b" 38 Name 148 "u" 39 Name 159 "i" 40 Name 189 "i16v" 41 Name 192 "bv" 42 Name 200 "u16v" 43 Name 213 "iv" 44 Name 226 "uv" 45 Name 240 "fv" 46 Name 252 "dv" 47 Name 264 "f16v" 48 Name 276 "i64v" 49 Name 290 "u64v" 50 Name 305 "i16v" 51 Name 311 "i16" 52 Name 319 "u16v" 53 Name 321 "u16" 54 Name 393 "f16v" 55 Name 396 "exp" 56 Name 397 "ResType" 57 Name 420 "packi" 58 Name 425 "packu" 59 Name 436 "packi64" 60 Name 445 "packu64" 61 Name 454 "bv" 62 Name 531 "Block" 63 MemberName 531(Block) 0 "i16v" 64 MemberName 531(Block) 1 "u16" 65 Name 533 "block" 66 Name 535 "iu16v" 67 Name 537 "ii16" 68 Name 538 "si64" 69 Name 539 "su64" 70 Name 540 "si" 71 Name 541 "su" 72 Name 542 "sb" 73 Name 543 "si16" 74 Name 544 "su16" 75 Name 545 "i16_to_b" 76 Name 546 "u16_to_b" 77 Name 547 "b_to_i16" 78 Name 548 "b_to_u16" 79 Name 549 "i16_to_i" 80 Name 551 "u16_to_i" 81 Name 552 "i_to_i16" 82 Name 554 "i_to_u16" 83 Name 556 "i16_to_u" 84 Name 557 "u16_to_u" 85 Name 559 "u_to_i16" 86 Name 560 "u_to_u16" 87 Name 561 "i16_to_i64" 88 Name 564 "u16_to_i64" 89 Name 565 "i64_to_i16" 90 Name 567 "i64_to_u16" 91 Name 569 "i16_to_u64" 92 Name 570 "u16_to_u64" 93 Name 572 "u64_to_i16" 94 Name 573 "u64_to_u16" 95 Name 574 "i16_to_u16" 96 Name 575 "u16_to_i16" 97 MemberDecorate 25(Uniforms) 0 Offset 0 98 Decorate 25(Uniforms) Block 99 Decorate 27 DescriptorSet 0 100 Decorate 27 Binding 0 101 MemberDecorate 531(Block) 0 Offset 0 102 MemberDecorate 531(Block) 1 Offset 6 103 Decorate 531(Block) Block 104 Decorate 533(block) DescriptorSet 0 105 Decorate 533(block) Binding 1 106 Decorate 535(iu16v) Flat 107 Decorate 535(iu16v) Location 0 108 Decorate 537(ii16) Flat 109 Decorate 537(ii16) Location 1 110 Decorate 538(si64) SpecId 100 111 Decorate 539(su64) SpecId 101 112 Decorate 540(si) SpecId 102 113 Decorate 541(su) SpecId 103 114 Decorate 542(sb) SpecId 104 115 Decorate 543(si16) SpecId 105 116 Decorate 544(su16) SpecId 106 117 2: TypeVoid 118 3: TypeFunction 2 119 14: TypeInt 16 0 120 15: TypePointer Function 14(int16_t) 121 17: TypeInt 16 1 122 18: TypeInt 32 0 123 19: 18(int) Constant 3 124 20: TypeArray 17(int16_t) 19 125 21: 17(int16_t) Constant 273 126 22: 17(int16_t) Constant 4294967294 127 23: 17(int16_t) Constant 256 128 24: 20 ConstantComposite 21 22 23 129 25(Uniforms): TypeStruct 18(int) 130 26: TypePointer Uniform 25(Uniforms) 131 27: 26(ptr) Variable Uniform 132 28: TypeInt 32 1 133 29: 28(int) Constant 0 134 30: TypePointer Uniform 18(int) 135 33: TypePointer Function 20 136 35: TypePointer Function 17(int16_t) 137 39: TypeArray 14(int16_t) 19 138 40: 14(int16_t) Constant 65535 139 41: 39 ConstantComposite 40 40 40 140 44: TypePointer Function 39 141 49: TypeVector 14(int16_t) 3 142 50: TypePointer Function 49(i16vec3) 143 53: 17(int16_t) Constant 1 144 54: TypeVector 17(int16_t) 3 145 111: 18(int) Constant 1 146 117: 18(int) Constant 2 147 125: TypeBool 148 126: TypePointer Function 125(bool) 149 128: 18(int) Constant 0 150 147: TypePointer Function 18(int) 151 158: TypePointer Function 28(int) 152 187: TypeVector 17(int16_t) 2 153 188: TypePointer Function 187(i16vec2) 154 190: TypeVector 125(bool) 2 155 191: TypePointer Function 190(bvec2) 156 194: 17(int16_t) Constant 0 157 195:187(i16vec2) ConstantComposite 194 194 158 196:187(i16vec2) ConstantComposite 53 53 159 198: TypeVector 14(int16_t) 2 160 199: TypePointer Function 198(i16vec2) 161 202: 14(int16_t) Constant 0 162 203: 14(int16_t) Constant 1 163 204:198(i16vec2) ConstantComposite 202 202 164 205:198(i16vec2) ConstantComposite 203 203 165 211: TypeVector 28(int) 2 166 212: TypePointer Function 211(ivec2) 167 222: TypeVector 18(int) 2 168 225: TypePointer Function 222(ivec2) 169 237: TypeFloat 32 170 238: TypeVector 237(float) 2 171 239: TypePointer Function 238(fvec2) 172 249: TypeFloat 64 173 250: TypeVector 249(float64_t) 2 174 251: TypePointer Function 250(f64vec2) 175 261: TypeFloat 16 176 262: TypeVector 261(float16_t) 2 177 263: TypePointer Function 262(f16vec2) 178 273: TypeInt 64 1 179 274: TypeVector 273(int64_t) 2 180 275: TypePointer Function 274(i64vec2) 181 285: TypeInt 64 0 182 286: TypeVector 285(int64_t) 2 183 289: TypePointer Function 286(i64vec2) 184 316: 17(int16_t) Constant 4294967295 185 317:187(i16vec2) ConstantComposite 316 316 186 326: 49(i16vec3) ConstantComposite 202 202 202 187 368: 125(bool) ConstantTrue 188 375: 125(bool) ConstantFalse 189 376: 190(bvec2) ConstantComposite 375 375 190 388: TypeVector 125(bool) 3 191 389: 388(bvec3) ConstantComposite 375 375 375 192 391: TypeVector 261(float16_t) 3 193 392: TypePointer Function 391(f16vec3) 194 395: TypePointer Function 54(i16vec3) 195 397(ResType): TypeStruct 391(f16vec3) 54(i16vec3) 196 407: TypePointer Function 261(float16_t) 197 435: TypePointer Function 273(int64_t) 198 438: TypeVector 17(int16_t) 4 199 444: TypePointer Function 285(int64_t) 200 447: TypeVector 14(int16_t) 4 201 453: TypePointer Function 388(bvec3) 202 531(Block): TypeStruct 54(i16vec3) 14(int16_t) 203 532: TypePointer Uniform 531(Block) 204 533(block): 532(ptr) Variable Uniform 205 534: TypePointer Input 49(i16vec3) 206 535(iu16v): 534(ptr) Variable Input 207 536: TypePointer Input 17(int16_t) 208 537(ii16): 536(ptr) Variable Input 209 538(si64):273(int64_t) SpecConstant 4294967286 4294967295 210 539(su64):285(int64_t) SpecConstant 20 0 211 540(si): 28(int) SpecConstant 4294967291 212 541(su): 18(int) SpecConstant 4 213 542(sb): 125(bool) SpecConstantTrue 214 543(si16): 17(int16_t) SpecConstant 4294967291 215 544(su16): 14(int16_t) SpecConstant 4 216 545(i16_to_b): 125(bool) SpecConstantOp 171 543(si16) 202 217 546(u16_to_b): 125(bool) SpecConstantOp 171 544(su16) 202 218 547(b_to_i16): 17(int16_t) SpecConstantOp 169 542(sb) 53 194 219 548(b_to_u16): 14(int16_t) SpecConstantOp 169 542(sb) 203 202 220 549(i16_to_i): 28(int) SpecConstantOp 114 543(si16) 221 550: 18(int) SpecConstantOp 113 544(su16) 222 551(u16_to_i): 28(int) SpecConstantOp 128 550 128 223 552(i_to_i16): 17(int16_t) SpecConstantOp 114 540(si) 224 553: 17(int16_t) SpecConstantOp 114 540(si) 225 554(i_to_u16): 14(int16_t) SpecConstantOp 128 553 202 226 555: 28(int) SpecConstantOp 114 543(si16) 227 556(i16_to_u): 18(int) SpecConstantOp 128 555 128 228 557(u16_to_u): 18(int) SpecConstantOp 113 544(su16) 229 558: 14(int16_t) SpecConstantOp 113 541(su) 230 559(u_to_i16): 17(int16_t) SpecConstantOp 128 558 202 231 560(u_to_u16): 14(int16_t) SpecConstantOp 113 541(su) 232 561(i16_to_i64):273(int64_t) SpecConstantOp 114 543(si16) 233 562:285(int64_t) SpecConstantOp 113 544(su16) 234 563:285(int64_t) Constant 0 0 235 564(u16_to_i64):273(int64_t) SpecConstantOp 128 562 563 236 565(i64_to_i16): 17(int16_t) SpecConstantOp 114 538(si64) 237 566: 17(int16_t) SpecConstantOp 114 538(si64) 238 567(i64_to_u16): 14(int16_t) SpecConstantOp 128 566 202 239 568:273(int64_t) SpecConstantOp 114 543(si16) 240 569(i16_to_u64):285(int64_t) SpecConstantOp 128 568 563 241 570(u16_to_u64):285(int64_t) SpecConstantOp 113 544(su16) 242 571: 14(int16_t) SpecConstantOp 113 539(su64) 243 572(u64_to_i16): 17(int16_t) SpecConstantOp 128 571 202 244 573(u64_to_u16): 14(int16_t) SpecConstantOp 113 539(su64) 245 574(i16_to_u16): 14(int16_t) SpecConstantOp 128 543(si16) 202 246 575(u16_to_i16): 17(int16_t) SpecConstantOp 128 544(su16) 202 247 4(main): 2 Function None 3 248 5: Label 249 527: 2 FunctionCall 6(literal() 250 528: 2 FunctionCall 8(operators() 251 529: 2 FunctionCall 10(typeCast() 252 530: 2 FunctionCall 12(builtinFuncs() 253 Return 254 FunctionEnd 255 6(literal(): 2 Function None 3 256 7: Label 257 16(u16): 15(ptr) Variable Function 258 34(indexable): 33(ptr) Variable Function 259 45(indexable): 44(ptr) Variable Function 260 31: 30(ptr) AccessChain 27 29 261 32: 18(int) Load 31 262 Store 34(indexable) 24 263 36: 35(ptr) AccessChain 34(indexable) 32 264 37: 17(int16_t) Load 36 265 38: 14(int16_t) Bitcast 37 266 42: 30(ptr) AccessChain 27 29 267 43: 18(int) Load 42 268 Store 45(indexable) 41 269 46: 15(ptr) AccessChain 45(indexable) 43 270 47: 14(int16_t) Load 46 271 48: 14(int16_t) IAdd 38 47 272 Store 16(u16) 48 273 Return 274 FunctionEnd 275 8(operators(): 2 Function None 3 276 9: Label 277 51(u16v): 50(ptr) Variable Function 278 57(i16): 35(ptr) Variable Function 279 70(u16): 15(ptr) Variable Function 280 127(b): 126(ptr) Variable Function 281 148(u): 147(ptr) Variable Function 282 159(i): 158(ptr) Variable Function 283 52: 49(i16vec3) Load 51(u16v) 284 55: 54(i16vec3) CompositeConstruct 53 53 53 285 56: 49(i16vec3) IAdd 52 55 286 Store 51(u16v) 56 287 58: 17(int16_t) Load 57(i16) 288 59: 17(int16_t) ISub 58 53 289 Store 57(i16) 59 290 60: 17(int16_t) Load 57(i16) 291 61: 17(int16_t) IAdd 60 53 292 Store 57(i16) 61 293 62: 49(i16vec3) Load 51(u16v) 294 63: 54(i16vec3) CompositeConstruct 53 53 53 295 64: 49(i16vec3) ISub 62 63 296 Store 51(u16v) 64 297 65: 49(i16vec3) Load 51(u16v) 298 66: 49(i16vec3) Not 65 299 Store 51(u16v) 66 300 67: 17(int16_t) Load 57(i16) 301 Store 57(i16) 67 302 68: 49(i16vec3) Load 51(u16v) 303 69: 49(i16vec3) SNegate 68 304 Store 51(u16v) 69 305 71: 17(int16_t) Load 57(i16) 306 72: 14(int16_t) Bitcast 71 307 73: 14(int16_t) Load 70(u16) 308 74: 14(int16_t) IAdd 73 72 309 Store 70(u16) 74 310 75: 49(i16vec3) Load 51(u16v) 311 76: 49(i16vec3) Load 51(u16v) 312 77: 49(i16vec3) ISub 76 75 313 Store 51(u16v) 77 314 78: 17(int16_t) Load 57(i16) 315 79: 17(int16_t) Load 57(i16) 316 80: 17(int16_t) IMul 79 78 317 Store 57(i16) 80 318 81: 49(i16vec3) Load 51(u16v) 319 82: 49(i16vec3) Load 51(u16v) 320 83: 49(i16vec3) UDiv 82 81 321 Store 51(u16v) 83 322 84: 17(int16_t) Load 57(i16) 323 85: 14(int16_t) Bitcast 84 324 86: 49(i16vec3) Load 51(u16v) 325 87: 49(i16vec3) CompositeConstruct 85 85 85 326 88: 49(i16vec3) UMod 86 87 327 Store 51(u16v) 88 328 89: 49(i16vec3) Load 51(u16v) 329 90: 49(i16vec3) Load 51(u16v) 330 91: 49(i16vec3) IAdd 89 90 331 Store 51(u16v) 91 332 92: 17(int16_t) Load 57(i16) 333 93: 14(int16_t) Bitcast 92 334 94: 14(int16_t) Load 70(u16) 335 95: 14(int16_t) ISub 93 94 336 Store 70(u16) 95 337 96: 49(i16vec3) Load 51(u16v) 338 97: 17(int16_t) Load 57(i16) 339 98: 14(int16_t) Bitcast 97 340 99: 49(i16vec3) CompositeConstruct 98 98 98 341 100: 49(i16vec3) IMul 96 99 342 Store 51(u16v) 100 343 101: 17(int16_t) Load 57(i16) 344 102: 17(int16_t) Load 57(i16) 345 103: 17(int16_t) IMul 101 102 346 Store 57(i16) 103 347 104: 17(int16_t) Load 57(i16) 348 105: 17(int16_t) Load 57(i16) 349 106: 17(int16_t) SMod 104 105 350 Store 57(i16) 106 351 107: 17(int16_t) Load 57(i16) 352 108: 49(i16vec3) Load 51(u16v) 353 109: 54(i16vec3) CompositeConstruct 107 107 107 354 110: 49(i16vec3) ShiftLeftLogical 108 109 355 Store 51(u16v) 110 356 112: 15(ptr) AccessChain 51(u16v) 111 357 113: 14(int16_t) Load 112 358 114: 17(int16_t) Load 57(i16) 359 115: 17(int16_t) ShiftRightArithmetic 114 113 360 Store 57(i16) 115 361 116: 17(int16_t) Load 57(i16) 362 118: 15(ptr) AccessChain 51(u16v) 117 363 119: 14(int16_t) Load 118 364 120: 17(int16_t) ShiftLeftLogical 116 119 365 Store 57(i16) 120 366 121: 49(i16vec3) Load 51(u16v) 367 122: 17(int16_t) Load 57(i16) 368 123: 54(i16vec3) CompositeConstruct 122 122 122 369 124: 49(i16vec3) ShiftLeftLogical 121 123 370 Store 51(u16v) 124 371 129: 15(ptr) AccessChain 51(u16v) 128 372 130: 14(int16_t) Load 129 373 131: 17(int16_t) Load 57(i16) 374 132: 14(int16_t) Bitcast 131 375 133: 125(bool) INotEqual 130 132 376 Store 127(b) 133 377 134: 17(int16_t) Load 57(i16) 378 135: 14(int16_t) Bitcast 134 379 136: 15(ptr) AccessChain 51(u16v) 128 380 137: 14(int16_t) Load 136 381 138: 125(bool) IEqual 135 137 382 Store 127(b) 138 383 139: 15(ptr) AccessChain 51(u16v) 128 384 140: 14(int16_t) Load 139 385 141: 15(ptr) AccessChain 51(u16v) 111 386 142: 14(int16_t) Load 141 387 143: 125(bool) UGreaterThan 140 142 388 Store 127(b) 143 389 144: 17(int16_t) Load 57(i16) 390 145: 28(int) SConvert 144 391 146: 18(int) Bitcast 145 392 149: 18(int) Load 148(u) 393 150: 125(bool) ULessThan 146 149 394 Store 127(b) 150 395 151: 15(ptr) AccessChain 51(u16v) 111 396 152: 14(int16_t) Load 151 397 153: 15(ptr) AccessChain 51(u16v) 128 398 154: 14(int16_t) Load 153 399 155: 125(bool) UGreaterThanEqual 152 154 400 Store 127(b) 155 401 156: 17(int16_t) Load 57(i16) 402 157: 28(int) SConvert 156 403 160: 28(int) Load 159(i) 404 161: 125(bool) SLessThanEqual 157 160 405 Store 127(b) 161 406 162: 17(int16_t) Load 57(i16) 407 163: 14(int16_t) Bitcast 162 408 164: 49(i16vec3) Load 51(u16v) 409 165: 49(i16vec3) CompositeConstruct 163 163 163 410 166: 49(i16vec3) BitwiseOr 164 165 411 Store 51(u16v) 166 412 167: 17(int16_t) Load 57(i16) 413 168: 14(int16_t) Bitcast 167 414 169: 14(int16_t) Load 70(u16) 415 170: 14(int16_t) BitwiseOr 168 169 416 Store 70(u16) 170 417 171: 17(int16_t) Load 57(i16) 418 172: 17(int16_t) Load 57(i16) 419 173: 17(int16_t) BitwiseAnd 172 171 420 Store 57(i16) 173 421 174: 49(i16vec3) Load 51(u16v) 422 175: 49(i16vec3) Load 51(u16v) 423 176: 49(i16vec3) BitwiseAnd 174 175 424 Store 51(u16v) 176 425 177: 17(int16_t) Load 57(i16) 426 178: 14(int16_t) Bitcast 177 427 179: 49(i16vec3) Load 51(u16v) 428 180: 49(i16vec3) CompositeConstruct 178 178 178 429 181: 49(i16vec3) BitwiseXor 179 180 430 Store 51(u16v) 181 431 182: 49(i16vec3) Load 51(u16v) 432 183: 17(int16_t) Load 57(i16) 433 184: 14(int16_t) Bitcast 183 434 185: 49(i16vec3) CompositeConstruct 184 184 184 435 186: 49(i16vec3) BitwiseXor 182 185 436 Store 51(u16v) 186 437 Return 438 FunctionEnd 439 10(typeCast(): 2 Function None 3 440 11: Label 441 189(i16v): 188(ptr) Variable Function 442 192(bv): 191(ptr) Variable Function 443 200(u16v): 199(ptr) Variable Function 444 213(iv): 212(ptr) Variable Function 445 226(uv): 225(ptr) Variable Function 446 240(fv): 239(ptr) Variable Function 447 252(dv): 251(ptr) Variable Function 448 264(f16v): 263(ptr) Variable Function 449 276(i64v): 275(ptr) Variable Function 450 290(u64v): 289(ptr) Variable Function 451 193: 190(bvec2) Load 192(bv) 452 197:187(i16vec2) Select 193 196 195 453 Store 189(i16v) 197 454 201: 190(bvec2) Load 192(bv) 455 206:198(i16vec2) Select 201 205 204 456 Store 200(u16v) 206 457 207:187(i16vec2) Load 189(i16v) 458 208: 190(bvec2) INotEqual 207 204 459 Store 192(bv) 208 460 209:198(i16vec2) Load 200(u16v) 461 210: 190(bvec2) INotEqual 209 204 462 Store 192(bv) 210 463 214: 211(ivec2) Load 213(iv) 464 215:187(i16vec2) SConvert 214 465 Store 189(i16v) 215 466 216: 211(ivec2) Load 213(iv) 467 217:187(i16vec2) SConvert 216 468 218:198(i16vec2) Bitcast 217 469 Store 200(u16v) 218 470 219:187(i16vec2) Load 189(i16v) 471 220: 211(ivec2) SConvert 219 472 Store 213(iv) 220 473 221:198(i16vec2) Load 200(u16v) 474 223: 222(ivec2) UConvert 221 475 224: 211(ivec2) Bitcast 223 476 Store 213(iv) 224 477 227: 222(ivec2) Load 226(uv) 478 228:198(i16vec2) UConvert 227 479 229:187(i16vec2) Bitcast 228 480 Store 189(i16v) 229 481 230: 222(ivec2) Load 226(uv) 482 231:198(i16vec2) UConvert 230 483 Store 200(u16v) 231 484 232:187(i16vec2) Load 189(i16v) 485 233: 211(ivec2) SConvert 232 486 234: 222(ivec2) Bitcast 233 487 Store 226(uv) 234 488 235:198(i16vec2) Load 200(u16v) 489 236: 222(ivec2) UConvert 235 490 Store 226(uv) 236 491 241: 238(fvec2) Load 240(fv) 492 242:187(i16vec2) ConvertFToS 241 493 Store 189(i16v) 242 494 243: 238(fvec2) Load 240(fv) 495 244:198(i16vec2) ConvertFToU 243 496 Store 200(u16v) 244 497 245:187(i16vec2) Load 189(i16v) 498 246: 238(fvec2) ConvertSToF 245 499 Store 240(fv) 246 500 247:198(i16vec2) Load 200(u16v) 501 248: 238(fvec2) ConvertUToF 247 502 Store 240(fv) 248 503 253:250(f64vec2) Load 252(dv) 504 254:187(i16vec2) ConvertFToS 253 505 Store 189(i16v) 254 506 255:250(f64vec2) Load 252(dv) 507 256:198(i16vec2) ConvertFToU 255 508 Store 200(u16v) 256 509 257:187(i16vec2) Load 189(i16v) 510 258:250(f64vec2) ConvertSToF 257 511 Store 252(dv) 258 512 259:198(i16vec2) Load 200(u16v) 513 260:250(f64vec2) ConvertUToF 259 514 Store 252(dv) 260 515 265:262(f16vec2) Load 264(f16v) 516 266:187(i16vec2) ConvertFToS 265 517 Store 189(i16v) 266 518 267:262(f16vec2) Load 264(f16v) 519 268:198(i16vec2) ConvertFToU 267 520 Store 200(u16v) 268 521 269:187(i16vec2) Load 189(i16v) 522 270:262(f16vec2) ConvertSToF 269 523 Store 264(f16v) 270 524 271:198(i16vec2) Load 200(u16v) 525 272:262(f16vec2) ConvertUToF 271 526 Store 264(f16v) 272 527 277:274(i64vec2) Load 276(i64v) 528 278:187(i16vec2) SConvert 277 529 Store 189(i16v) 278 530 279:274(i64vec2) Load 276(i64v) 531 280:187(i16vec2) SConvert 279 532 281:198(i16vec2) Bitcast 280 533 Store 200(u16v) 281 534 282:187(i16vec2) Load 189(i16v) 535 283:274(i64vec2) SConvert 282 536 Store 276(i64v) 283 537 284:198(i16vec2) Load 200(u16v) 538 287:286(i64vec2) UConvert 284 539 288:274(i64vec2) Bitcast 287 540 Store 276(i64v) 288 541 291:286(i64vec2) Load 290(u64v) 542 292:198(i16vec2) UConvert 291 543 293:187(i16vec2) Bitcast 292 544 Store 189(i16v) 293 545 294:286(i64vec2) Load 290(u64v) 546 295:198(i16vec2) UConvert 294 547 Store 200(u16v) 295 548 296:187(i16vec2) Load 189(i16v) 549 297:274(i64vec2) SConvert 296 550 298:286(i64vec2) Bitcast 297 551 Store 290(u64v) 298 552 299:198(i16vec2) Load 200(u16v) 553 300:286(i64vec2) UConvert 299 554 Store 290(u64v) 300 555 301:198(i16vec2) Load 200(u16v) 556 302:187(i16vec2) Bitcast 301 557 Store 189(i16v) 302 558 303:187(i16vec2) Load 189(i16v) 559 304:198(i16vec2) Bitcast 303 560 Store 200(u16v) 304 561 Return 562 FunctionEnd 56312(builtinFuncs(): 2 Function None 3 564 13: Label 565 305(i16v): 188(ptr) Variable Function 566 311(i16): 35(ptr) Variable Function 567 319(u16v): 50(ptr) Variable Function 568 321(u16): 15(ptr) Variable Function 569 393(f16v): 392(ptr) Variable Function 570 396(exp): 395(ptr) Variable Function 571 420(packi): 158(ptr) Variable Function 572 425(packu): 147(ptr) Variable Function 573 436(packi64): 435(ptr) Variable Function 574 445(packu64): 444(ptr) Variable Function 575 454(bv): 453(ptr) Variable Function 576 306:187(i16vec2) Load 305(i16v) 577 307:187(i16vec2) ExtInst 1(GLSL.std.450) 5(SAbs) 306 578 Store 305(i16v) 307 579 308:187(i16vec2) Load 305(i16v) 580 309:187(i16vec2) ExtInst 1(GLSL.std.450) 7(SSign) 308 581 Store 305(i16v) 309 582 310:187(i16vec2) Load 305(i16v) 583 312: 17(int16_t) Load 311(i16) 584 313:187(i16vec2) CompositeConstruct 312 312 585 314:187(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 310 313 586 Store 305(i16v) 314 587 315:187(i16vec2) Load 305(i16v) 588 318:187(i16vec2) ExtInst 1(GLSL.std.450) 39(SMin) 315 317 589 Store 305(i16v) 318 590 320: 49(i16vec3) Load 319(u16v) 591 322: 14(int16_t) Load 321(u16) 592 323: 49(i16vec3) CompositeConstruct 322 322 322 593 324: 49(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 320 323 594 Store 319(u16v) 324 595 325: 49(i16vec3) Load 319(u16v) 596 327: 49(i16vec3) ExtInst 1(GLSL.std.450) 38(UMin) 325 326 597 Store 319(u16v) 327 598 328:187(i16vec2) Load 305(i16v) 599 329: 17(int16_t) Load 311(i16) 600 330:187(i16vec2) CompositeConstruct 329 329 601 331:187(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 328 330 602 Store 305(i16v) 331 603 332:187(i16vec2) Load 305(i16v) 604 333:187(i16vec2) ExtInst 1(GLSL.std.450) 42(SMax) 332 317 605 Store 305(i16v) 333 606 334: 49(i16vec3) Load 319(u16v) 607 335: 14(int16_t) Load 321(u16) 608 336: 49(i16vec3) CompositeConstruct 335 335 335 609 337: 49(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 334 336 610 Store 319(u16v) 337 611 338: 49(i16vec3) Load 319(u16v) 612 339: 49(i16vec3) ExtInst 1(GLSL.std.450) 41(UMax) 338 326 613 Store 319(u16v) 339 614 340:187(i16vec2) Load 305(i16v) 615 341: 17(int16_t) Load 311(i16) 616 342: 17(int16_t) SNegate 341 617 343: 17(int16_t) Load 311(i16) 618 344:187(i16vec2) CompositeConstruct 342 342 619 345:187(i16vec2) CompositeConstruct 343 343 620 346:187(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 340 344 345 621 Store 305(i16v) 346 622 347:187(i16vec2) Load 305(i16v) 623 348:187(i16vec2) Load 305(i16v) 624 349:187(i16vec2) SNegate 348 625 350:187(i16vec2) Load 305(i16v) 626 351:187(i16vec2) ExtInst 1(GLSL.std.450) 45(SClamp) 347 349 350 627 Store 305(i16v) 351 628 352: 49(i16vec3) Load 319(u16v) 629 353: 14(int16_t) Load 321(u16) 630 354: 14(int16_t) SNegate 353 631 355: 14(int16_t) Load 321(u16) 632 356: 49(i16vec3) CompositeConstruct 354 354 354 633 357: 49(i16vec3) CompositeConstruct 355 355 355 634 358: 49(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 352 356 357 635 Store 319(u16v) 358 636 359: 49(i16vec3) Load 319(u16v) 637 360: 49(i16vec3) Load 319(u16v) 638 361: 49(i16vec3) SNegate 360 639 362: 49(i16vec3) Load 319(u16v) 640 363: 49(i16vec3) ExtInst 1(GLSL.std.450) 44(UClamp) 359 361 362 641 Store 319(u16v) 363 642 364: 35(ptr) AccessChain 305(i16v) 128 643 365: 17(int16_t) Load 364 644 366: 35(ptr) AccessChain 305(i16v) 111 645 367: 17(int16_t) Load 366 646 369: 17(int16_t) Select 368 367 365 647 Store 311(i16) 369 648 370: 17(int16_t) Load 311(i16) 649 371:187(i16vec2) CompositeConstruct 370 370 650 372: 17(int16_t) Load 311(i16) 651 373: 17(int16_t) SNegate 372 652 374:187(i16vec2) CompositeConstruct 373 373 653 377:187(i16vec2) Select 376 374 371 654 Store 305(i16v) 377 655 378: 15(ptr) AccessChain 319(u16v) 128 656 379: 14(int16_t) Load 378 657 380: 15(ptr) AccessChain 319(u16v) 111 658 381: 14(int16_t) Load 380 659 382: 14(int16_t) Select 368 381 379 660 Store 321(u16) 382 661 383: 14(int16_t) Load 321(u16) 662 384: 49(i16vec3) CompositeConstruct 383 383 383 663 385: 14(int16_t) Load 321(u16) 664 386: 14(int16_t) SNegate 385 665 387: 49(i16vec3) CompositeConstruct 386 386 386 666 390: 49(i16vec3) Select 389 387 384 667 Store 319(u16v) 390 668 394:391(f16vec3) Load 393(f16v) 669 398:397(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 394 670 399: 54(i16vec3) CompositeExtract 398 1 671 Store 396(exp) 399 672 400:391(f16vec3) CompositeExtract 398 0 673 Store 393(f16v) 400 674 401:391(f16vec3) Load 393(f16v) 675 402: 54(i16vec3) Load 396(exp) 676 403:391(f16vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 401 402 677 Store 393(f16v) 403 678 404:391(f16vec3) Load 393(f16v) 679 405:262(f16vec2) VectorShuffle 404 404 0 1 680 406:187(i16vec2) Bitcast 405 681 Store 305(i16v) 406 682 408: 407(ptr) AccessChain 393(f16v) 117 683 409:261(float16_t) Load 408 684 410: 14(int16_t) Bitcast 409 685 411: 15(ptr) AccessChain 319(u16v) 128 686 Store 411 410 687 412:187(i16vec2) Load 305(i16v) 688 413:262(f16vec2) Bitcast 412 689 414: 407(ptr) AccessChain 393(f16v) 128 690 415:261(float16_t) CompositeExtract 413 0 691 Store 414 415 692 416: 407(ptr) AccessChain 393(f16v) 111 693 417:261(float16_t) CompositeExtract 413 1 694 Store 416 417 695 418: 49(i16vec3) Load 319(u16v) 696 419:391(f16vec3) Bitcast 418 697 Store 393(f16v) 419 698 421:187(i16vec2) Load 305(i16v) 699 422: 28(int) Bitcast 421 700 Store 420(packi) 422 701 423: 28(int) Load 420(packi) 702 424:187(i16vec2) Bitcast 423 703 Store 305(i16v) 424 704 426: 49(i16vec3) Load 319(u16v) 705 427:198(i16vec2) VectorShuffle 426 426 0 1 706 428: 18(int) Bitcast 427 707 Store 425(packu) 428 708 429: 18(int) Load 425(packu) 709 430:198(i16vec2) Bitcast 429 710 431: 15(ptr) AccessChain 319(u16v) 128 711 432: 14(int16_t) CompositeExtract 430 0 712 Store 431 432 713 433: 15(ptr) AccessChain 319(u16v) 111 714 434: 14(int16_t) CompositeExtract 430 1 715 Store 433 434 716 437: 17(int16_t) Load 311(i16) 717 439:438(i16vec4) CompositeConstruct 437 437 437 437 718 440:273(int64_t) Bitcast 439 719 Store 436(packi64) 440 720 441:273(int64_t) Load 436(packi64) 721 442:438(i16vec4) Bitcast 441 722 443:187(i16vec2) VectorShuffle 442 442 0 1 723 Store 305(i16v) 443 724 446: 14(int16_t) Load 321(u16) 725 448:447(i16vec4) CompositeConstruct 446 446 446 446 726 449:285(int64_t) Bitcast 448 727 Store 445(packu64) 449 728 450:285(int64_t) Load 445(packu64) 729 451:447(i16vec4) Bitcast 450 730 452: 49(i16vec3) VectorShuffle 451 451 0 1 2 731 Store 319(u16v) 452 732 455: 49(i16vec3) Load 319(u16v) 733 456: 14(int16_t) Load 321(u16) 734 457: 49(i16vec3) CompositeConstruct 456 456 456 735 458: 388(bvec3) ULessThan 455 457 736 Store 454(bv) 458 737 459:187(i16vec2) Load 305(i16v) 738 460: 17(int16_t) Load 311(i16) 739 461:187(i16vec2) CompositeConstruct 460 460 740 462: 190(bvec2) SLessThan 459 461 741 463: 126(ptr) AccessChain 454(bv) 128 742 464: 125(bool) CompositeExtract 462 0 743 Store 463 464 744 465: 126(ptr) AccessChain 454(bv) 111 745 466: 125(bool) CompositeExtract 462 1 746 Store 465 466 747 467: 49(i16vec3) Load 319(u16v) 748 468: 14(int16_t) Load 321(u16) 749 469: 49(i16vec3) CompositeConstruct 468 468 468 750 470: 388(bvec3) ULessThanEqual 467 469 751 Store 454(bv) 470 752 471:187(i16vec2) Load 305(i16v) 753 472: 17(int16_t) Load 311(i16) 754 473:187(i16vec2) CompositeConstruct 472 472 755 474: 190(bvec2) SLessThanEqual 471 473 756 475: 126(ptr) AccessChain 454(bv) 128 757 476: 125(bool) CompositeExtract 474 0 758 Store 475 476 759 477: 126(ptr) AccessChain 454(bv) 111 760 478: 125(bool) CompositeExtract 474 1 761 Store 477 478 762 479: 49(i16vec3) Load 319(u16v) 763 480: 14(int16_t) Load 321(u16) 764 481: 49(i16vec3) CompositeConstruct 480 480 480 765 482: 388(bvec3) UGreaterThan 479 481 766 Store 454(bv) 482 767 483:187(i16vec2) Load 305(i16v) 768 484: 17(int16_t) Load 311(i16) 769 485:187(i16vec2) CompositeConstruct 484 484 770 486: 190(bvec2) SGreaterThan 483 485 771 487: 126(ptr) AccessChain 454(bv) 128 772 488: 125(bool) CompositeExtract 486 0 773 Store 487 488 774 489: 126(ptr) AccessChain 454(bv) 111 775 490: 125(bool) CompositeExtract 486 1 776 Store 489 490 777 491: 49(i16vec3) Load 319(u16v) 778 492: 14(int16_t) Load 321(u16) 779 493: 49(i16vec3) CompositeConstruct 492 492 492 780 494: 388(bvec3) UGreaterThanEqual 491 493 781 Store 454(bv) 494 782 495:187(i16vec2) Load 305(i16v) 783 496: 17(int16_t) Load 311(i16) 784 497:187(i16vec2) CompositeConstruct 496 496 785 498: 190(bvec2) SGreaterThanEqual 495 497 786 499: 126(ptr) AccessChain 454(bv) 128 787 500: 125(bool) CompositeExtract 498 0 788 Store 499 500 789 501: 126(ptr) AccessChain 454(bv) 111 790 502: 125(bool) CompositeExtract 498 1 791 Store 501 502 792 503: 49(i16vec3) Load 319(u16v) 793 504: 14(int16_t) Load 321(u16) 794 505: 49(i16vec3) CompositeConstruct 504 504 504 795 506: 388(bvec3) IEqual 503 505 796 Store 454(bv) 506 797 507:187(i16vec2) Load 305(i16v) 798 508: 17(int16_t) Load 311(i16) 799 509:187(i16vec2) CompositeConstruct 508 508 800 510: 190(bvec2) IEqual 507 509 801 511: 126(ptr) AccessChain 454(bv) 128 802 512: 125(bool) CompositeExtract 510 0 803 Store 511 512 804 513: 126(ptr) AccessChain 454(bv) 111 805 514: 125(bool) CompositeExtract 510 1 806 Store 513 514 807 515: 49(i16vec3) Load 319(u16v) 808 516: 14(int16_t) Load 321(u16) 809 517: 49(i16vec3) CompositeConstruct 516 516 516 810 518: 388(bvec3) INotEqual 515 517 811 Store 454(bv) 518 812 519:187(i16vec2) Load 305(i16v) 813 520: 17(int16_t) Load 311(i16) 814 521:187(i16vec2) CompositeConstruct 520 520 815 522: 190(bvec2) INotEqual 519 521 816 523: 126(ptr) AccessChain 454(bv) 128 817 524: 125(bool) CompositeExtract 522 0 818 Store 523 524 819 525: 126(ptr) AccessChain 454(bv) 111 820 526: 125(bool) CompositeExtract 522 1 821 Store 525 526 822 Return 823 FunctionEnd 824