1spv.float16.frag 2Validation failed 3// Module Version 10000 4// Generated by (magic number): 8000b 5// Id's are bound by 541 6 7 Capability Shader 8 Capability Float16 9 Capability Float64 10 Capability Int64 11 Capability DerivativeControl 12 Capability InterpolationFunction 13 Capability StorageUniformBufferBlock16 14 Capability StorageUniform16 15 Capability StorageInputOutput16 16 Extension "SPV_AMD_gpu_shader_half_float" 17 Extension "SPV_KHR_16bit_storage" 18 1: ExtInstImport "GLSL.std.450" 19 MemoryModel Logical GLSL450 20 EntryPoint Fragment 4 "main" 464 21 ExecutionMode 4 OriginUpperLeft 22 Source GLSL 450 23 SourceExtension "GL_AMD_gpu_shader_half_float" 24 SourceExtension "GL_ARB_gpu_shader_int64" 25 Name 4 "main" 26 Name 6 "literal(" 27 Name 8 "operators(" 28 Name 10 "typeCast(" 29 Name 12 "builtinAngleTrigFuncs(" 30 Name 14 "builtinExpFuncs(" 31 Name 16 "builtinCommonFuncs(" 32 Name 18 "builtinPackUnpackFuncs(" 33 Name 20 "builtinGeometryFuncs(" 34 Name 22 "builtinMatrixFuncs(" 35 Name 24 "builtinVecRelFuncs(" 36 Name 26 "builtinFragProcFuncs(" 37 Name 31 "f16v" 38 Name 42 "f16v" 39 Name 64 "f16m" 40 Name 87 "f16" 41 Name 111 "b" 42 Name 153 "f16v" 43 Name 156 "bv" 44 Name 167 "fv" 45 Name 175 "dv" 46 Name 182 "iv" 47 Name 189 "uv" 48 Name 197 "i64v" 49 Name 205 "u64v" 50 Name 212 "f16v2" 51 Name 213 "f16v1" 52 Name 245 "f16v2" 53 Name 246 "f16v1" 54 Name 262 "f16v2" 55 Name 263 "f16v1" 56 Name 284 "f16" 57 Name 288 "f16v3" 58 Name 290 "ResType" 59 Name 331 "bv" 60 Name 352 "b" 61 Name 362 "iv" 62 Name 363 "ResType" 63 Name 371 "u" 64 Name 372 "f16v" 65 Name 377 "f16" 66 Name 378 "f16v1" 67 Name 382 "f16v2" 68 Name 388 "f16v3" 69 Name 407 "f16m3" 70 Name 408 "f16m1" 71 Name 410 "f16m2" 72 Name 419 "f16v1" 73 Name 421 "f16v2" 74 Name 426 "f16m4" 75 Name 429 "f16" 76 Name 432 "f16m5" 77 Name 437 "f16m6" 78 Name 438 "f16m7" 79 Name 441 "bv" 80 Name 442 "f16v1" 81 Name 444 "f16v2" 82 Name 462 "f16v" 83 Name 464 "if16v" 84 Name 521 "S" 85 MemberName 521(S) 0 "x" 86 MemberName 521(S) 1 "y" 87 MemberName 521(S) 2 "z" 88 Name 523 "B1" 89 MemberName 523(B1) 0 "a" 90 MemberName 523(B1) 1 "b" 91 MemberName 523(B1) 2 "c" 92 MemberName 523(B1) 3 "d" 93 MemberName 523(B1) 4 "e" 94 MemberName 523(B1) 5 "f" 95 MemberName 523(B1) 6 "g" 96 MemberName 523(B1) 7 "h" 97 Name 525 "" 98 Name 528 "S" 99 MemberName 528(S) 0 "x" 100 MemberName 528(S) 1 "y" 101 MemberName 528(S) 2 "z" 102 Name 530 "B2" 103 MemberName 530(B2) 0 "o" 104 MemberName 530(B2) 1 "p" 105 MemberName 530(B2) 2 "q" 106 MemberName 530(B2) 3 "r" 107 MemberName 530(B2) 4 "s" 108 MemberName 530(B2) 5 "t" 109 MemberName 530(B2) 6 "u" 110 MemberName 530(B2) 7 "v" 111 Name 532 "" 112 Name 533 "sf16" 113 Name 534 "sf" 114 Name 535 "sd" 115 Name 536 "f16_to_f" 116 Name 538 "f16_to_d" 117 Name 539 "f_to_f16" 118 Name 540 "d_to_f16" 119 Decorate 464(if16v) Location 0 120 Decorate 519 ArrayStride 16 121 Decorate 520 ArrayStride 32 122 MemberDecorate 521(S) 0 Offset 0 123 MemberDecorate 521(S) 1 Offset 4 124 MemberDecorate 521(S) 2 Offset 8 125 Decorate 522 ArrayStride 16 126 Decorate 523(B1) Block 127 MemberDecorate 523(B1) 0 Offset 0 128 MemberDecorate 523(B1) 1 Offset 4 129 MemberDecorate 523(B1) 2 Offset 8 130 MemberDecorate 523(B1) 3 Offset 16 131 MemberDecorate 523(B1) 4 ColMajor 132 MemberDecorate 523(B1) 4 MatrixStride 16 133 MemberDecorate 523(B1) 4 Offset 48 134 MemberDecorate 523(B1) 5 ColMajor 135 MemberDecorate 523(B1) 5 MatrixStride 16 136 MemberDecorate 523(B1) 5 Offset 80 137 MemberDecorate 523(B1) 6 Offset 144 138 MemberDecorate 523(B1) 7 Offset 160 139 Decorate 525 Binding 0 140 Decorate 525 DescriptorSet 0 141 Decorate 526 ArrayStride 2 142 Decorate 527 ArrayStride 12 143 MemberDecorate 528(S) 0 Offset 0 144 MemberDecorate 528(S) 1 Offset 4 145 MemberDecorate 528(S) 2 Offset 8 146 Decorate 529 ArrayStride 16 147 Decorate 530(B2) BufferBlock 148 MemberDecorate 530(B2) 0 Offset 0 149 MemberDecorate 530(B2) 1 Offset 4 150 MemberDecorate 530(B2) 2 Offset 8 151 MemberDecorate 530(B2) 3 Offset 14 152 MemberDecorate 530(B2) 4 RowMajor 153 MemberDecorate 530(B2) 4 MatrixStride 4 154 MemberDecorate 530(B2) 4 Offset 20 155 MemberDecorate 530(B2) 5 RowMajor 156 MemberDecorate 530(B2) 5 MatrixStride 4 157 MemberDecorate 530(B2) 5 Offset 32 158 MemberDecorate 530(B2) 6 Offset 56 159 MemberDecorate 530(B2) 7 Offset 72 160 Decorate 532 Binding 0 161 Decorate 532 DescriptorSet 0 162 Decorate 533(sf16) SpecId 100 163 Decorate 534(sf) SpecId 101 164 Decorate 535(sd) SpecId 102 165 2: TypeVoid 166 3: TypeFunction 2 167 28: TypeFloat 16 168 29: TypeVector 28(float16_t) 2 169 30: TypePointer Function 29(f16vec2) 170 32:28(float16_t) Constant 16 171 33: TypeInt 32 0 172 34: 33(int) Constant 0 173 35: TypePointer Function 28(float16_t) 174 37:28(float16_t) Constant 46080 175 38:28(float16_t) Constant 10158 176 39: 29(f16vec2) ConstantComposite 37 38 177 56:28(float16_t) Constant 15360 178 62: TypeMatrix 29(f16vec2) 2 179 63: TypePointer Function 62 180 90: 33(int) Constant 1 181 109: TypeBool 182 110: TypePointer Function 109(bool) 183 151: TypeVector 28(float16_t) 3 184 152: TypePointer Function 151(f16vec3) 185 154: TypeVector 109(bool) 3 186 155: TypePointer Function 154(bvec3) 187 158:28(float16_t) Constant 0 188 159:151(f16vec3) ConstantComposite 158 158 158 189 160:151(f16vec3) ConstantComposite 56 56 56 190 164: TypeFloat 32 191 165: TypeVector 164(float) 3 192 166: TypePointer Function 165(fvec3) 193 172: TypeFloat 64 194 173: TypeVector 172(float64_t) 3 195 174: TypePointer Function 173(f64vec3) 196 179: TypeInt 32 1 197 180: TypeVector 179(int) 3 198 181: TypePointer Function 180(ivec3) 199 187: TypeVector 33(int) 3 200 188: TypePointer Function 187(ivec3) 201 194: TypeInt 64 1 202 195: TypeVector 194(int64_t) 3 203 196: TypePointer Function 195(i64vec3) 204 202: TypeInt 64 0 205 203: TypeVector 202(int64_t) 3 206 204: TypePointer Function 203(i64vec3) 207 210: TypeVector 28(float16_t) 4 208 211: TypePointer Function 210(f16vec4) 209 290(ResType): TypeStruct 151(f16vec3) 151(f16vec3) 210 363(ResType): TypeStruct 151(f16vec3) 180(ivec3) 211 370: TypePointer Function 33(int) 212 405: TypeMatrix 151(f16vec3) 2 213 406: TypePointer Function 405 214 424: TypeMatrix 29(f16vec2) 3 215 425: TypePointer Function 424 216 430: TypeMatrix 151(f16vec3) 3 217 431: TypePointer Function 430 218 435: TypeMatrix 210(f16vec4) 4 219 436: TypePointer Function 435 220 463: TypePointer Input 151(f16vec3) 221 464(if16v): 463(ptr) Variable Input 222 465: TypePointer Input 28(float16_t) 223 508: 179(int) Constant 1 224 515:28(float16_t) Constant 14336 225 516: 29(f16vec2) ConstantComposite 515 515 226 518: 33(int) Constant 2 227 519: TypeArray 28(float16_t) 518 228 520: TypeArray 405 518 229 521(S): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 230 522: TypeArray 521(S) 518 231 523(B1): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 519 405 520 521(S) 522 232 524: TypePointer Uniform 523(B1) 233 525: 524(ptr) Variable Uniform 234 526: TypeArray 28(float16_t) 518 235 527: TypeArray 405 518 236 528(S): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 237 529: TypeArray 528(S) 518 238 530(B2): TypeStruct 28(float16_t) 29(f16vec2) 151(f16vec3) 526 405 527 528(S) 529 239 531: TypePointer Uniform 530(B2) 240 532: 531(ptr) Variable Uniform 241 533(sf16):28(float16_t) SpecConstant 12288 242 534(sf): 164(float) SpecConstant 1048576000 243 535(sd):172(float64_t) SpecConstant 0 1071644672 244 536(f16_to_f): 164(float) SpecConstantOp 115 533(sf16) 245 537: 164(float) SpecConstantOp 115 533(sf16) 246 538(f16_to_d):172(float64_t) SpecConstantOp 115 537 247 539(f_to_f16):28(float16_t) SpecConstantOp 115 534(sf) 248 540(d_to_f16):28(float16_t) SpecConstantOp 115 535(sd) 249 4(main): 2 Function None 3 250 5: Label 251 Return 252 FunctionEnd 253 6(literal(): 2 Function None 3 254 7: Label 255 31(f16v): 30(ptr) Variable Function 256 36: 35(ptr) AccessChain 31(f16v) 34 257 Store 36 32 258 40: 29(f16vec2) Load 31(f16v) 259 41: 29(f16vec2) FAdd 40 39 260 Store 31(f16v) 41 261 Return 262 FunctionEnd 263 8(operators(): 2 Function None 3 264 9: Label 265 42(f16v): 30(ptr) Variable Function 266 64(f16m): 63(ptr) Variable Function 267 87(f16): 35(ptr) Variable Function 268 111(b): 110(ptr) Variable Function 269 43: 29(f16vec2) Load 42(f16v) 270 44: 29(f16vec2) Load 42(f16v) 271 45: 29(f16vec2) FAdd 44 43 272 Store 42(f16v) 45 273 46: 29(f16vec2) Load 42(f16v) 274 47: 29(f16vec2) Load 42(f16v) 275 48: 29(f16vec2) FSub 47 46 276 Store 42(f16v) 48 277 49: 29(f16vec2) Load 42(f16v) 278 50: 29(f16vec2) Load 42(f16v) 279 51: 29(f16vec2) FMul 50 49 280 Store 42(f16v) 51 281 52: 29(f16vec2) Load 42(f16v) 282 53: 29(f16vec2) Load 42(f16v) 283 54: 29(f16vec2) FDiv 53 52 284 Store 42(f16v) 54 285 55: 29(f16vec2) Load 42(f16v) 286 57: 29(f16vec2) CompositeConstruct 56 56 287 58: 29(f16vec2) FAdd 55 57 288 Store 42(f16v) 58 289 59: 29(f16vec2) Load 42(f16v) 290 60: 29(f16vec2) CompositeConstruct 56 56 291 61: 29(f16vec2) FSub 59 60 292 Store 42(f16v) 61 293 65: 62 Load 64(f16m) 294 66: 29(f16vec2) CompositeConstruct 56 56 295 67: 29(f16vec2) CompositeExtract 65 0 296 68: 29(f16vec2) FAdd 67 66 297 69: 29(f16vec2) CompositeExtract 65 1 298 70: 29(f16vec2) FAdd 69 66 299 71: 62 CompositeConstruct 68 70 300 Store 64(f16m) 71 301 72: 62 Load 64(f16m) 302 73: 29(f16vec2) CompositeConstruct 56 56 303 74: 29(f16vec2) CompositeExtract 72 0 304 75: 29(f16vec2) FSub 74 73 305 76: 29(f16vec2) CompositeExtract 72 1 306 77: 29(f16vec2) FSub 76 73 307 78: 62 CompositeConstruct 75 77 308 Store 64(f16m) 78 309 79: 29(f16vec2) Load 42(f16v) 310 80: 29(f16vec2) FNegate 79 311 Store 42(f16v) 80 312 81: 62 Load 64(f16m) 313 82: 29(f16vec2) CompositeExtract 81 0 314 83: 29(f16vec2) FNegate 82 315 84: 29(f16vec2) CompositeExtract 81 1 316 85: 29(f16vec2) FNegate 84 317 86: 62 CompositeConstruct 83 85 318 Store 64(f16m) 86 319 88: 35(ptr) AccessChain 42(f16v) 34 320 89:28(float16_t) Load 88 321 91: 35(ptr) AccessChain 42(f16v) 90 322 92:28(float16_t) Load 91 323 93:28(float16_t) FAdd 89 92 324 Store 87(f16) 93 325 94: 35(ptr) AccessChain 42(f16v) 34 326 95:28(float16_t) Load 94 327 96: 35(ptr) AccessChain 42(f16v) 90 328 97:28(float16_t) Load 96 329 98:28(float16_t) FSub 95 97 330 Store 87(f16) 98 331 99: 35(ptr) AccessChain 42(f16v) 34 332 100:28(float16_t) Load 99 333 101: 35(ptr) AccessChain 42(f16v) 90 334 102:28(float16_t) Load 101 335 103:28(float16_t) FMul 100 102 336 Store 87(f16) 103 337 104: 35(ptr) AccessChain 42(f16v) 34 338 105:28(float16_t) Load 104 339 106: 35(ptr) AccessChain 42(f16v) 90 340 107:28(float16_t) Load 106 341 108:28(float16_t) FDiv 105 107 342 Store 87(f16) 108 343 112: 35(ptr) AccessChain 42(f16v) 34 344 113:28(float16_t) Load 112 345 114:28(float16_t) Load 87(f16) 346 115: 109(bool) FUnordNotEqual 113 114 347 Store 111(b) 115 348 116: 35(ptr) AccessChain 42(f16v) 90 349 117:28(float16_t) Load 116 350 118:28(float16_t) Load 87(f16) 351 119: 109(bool) FOrdEqual 117 118 352 Store 111(b) 119 353 120: 35(ptr) AccessChain 42(f16v) 34 354 121:28(float16_t) Load 120 355 122:28(float16_t) Load 87(f16) 356 123: 109(bool) FOrdGreaterThan 121 122 357 Store 111(b) 123 358 124: 35(ptr) AccessChain 42(f16v) 90 359 125:28(float16_t) Load 124 360 126:28(float16_t) Load 87(f16) 361 127: 109(bool) FOrdLessThan 125 126 362 Store 111(b) 127 363 128: 35(ptr) AccessChain 42(f16v) 34 364 129:28(float16_t) Load 128 365 130:28(float16_t) Load 87(f16) 366 131: 109(bool) FOrdGreaterThanEqual 129 130 367 Store 111(b) 131 368 132: 35(ptr) AccessChain 42(f16v) 90 369 133:28(float16_t) Load 132 370 134:28(float16_t) Load 87(f16) 371 135: 109(bool) FOrdLessThanEqual 133 134 372 Store 111(b) 135 373 136: 29(f16vec2) Load 42(f16v) 374 137:28(float16_t) Load 87(f16) 375 138: 29(f16vec2) VectorTimesScalar 136 137 376 Store 42(f16v) 138 377 139: 62 Load 64(f16m) 378 140:28(float16_t) Load 87(f16) 379 141: 62 MatrixTimesScalar 139 140 380 Store 64(f16m) 141 381 142: 62 Load 64(f16m) 382 143: 29(f16vec2) Load 42(f16v) 383 144: 29(f16vec2) MatrixTimesVector 142 143 384 Store 42(f16v) 144 385 145: 29(f16vec2) Load 42(f16v) 386 146: 62 Load 64(f16m) 387 147: 29(f16vec2) VectorTimesMatrix 145 146 388 Store 42(f16v) 147 389 148: 62 Load 64(f16m) 390 149: 62 Load 64(f16m) 391 150: 62 MatrixTimesMatrix 148 149 392 Store 64(f16m) 150 393 Return 394 FunctionEnd 395 10(typeCast(): 2 Function None 3 396 11: Label 397 153(f16v): 152(ptr) Variable Function 398 156(bv): 155(ptr) Variable Function 399 167(fv): 166(ptr) Variable Function 400 175(dv): 174(ptr) Variable Function 401 182(iv): 181(ptr) Variable Function 402 189(uv): 188(ptr) Variable Function 403 197(i64v): 196(ptr) Variable Function 404 205(u64v): 204(ptr) Variable Function 405 157: 154(bvec3) Load 156(bv) 406 161:151(f16vec3) Select 157 160 159 407 Store 153(f16v) 161 408 162:151(f16vec3) Load 153(f16v) 409 163: 154(bvec3) FUnordNotEqual 162 159 410 Store 156(bv) 163 411 168: 165(fvec3) Load 167(fv) 412 169:151(f16vec3) FConvert 168 413 Store 153(f16v) 169 414 170:151(f16vec3) Load 153(f16v) 415 171: 165(fvec3) FConvert 170 416 Store 167(fv) 171 417 176:173(f64vec3) Load 175(dv) 418 177:151(f16vec3) FConvert 176 419 Store 153(f16v) 177 420 178:173(f64vec3) Load 175(dv) 421 Store 175(dv) 178 422 183: 180(ivec3) Load 182(iv) 423 184:151(f16vec3) ConvertSToF 183 424 Store 153(f16v) 184 425 185:151(f16vec3) Load 153(f16v) 426 186: 180(ivec3) ConvertFToS 185 427 Store 182(iv) 186 428 190: 187(ivec3) Load 189(uv) 429 191:151(f16vec3) ConvertUToF 190 430 Store 153(f16v) 191 431 192:151(f16vec3) Load 153(f16v) 432 193: 187(ivec3) ConvertFToU 192 433 Store 189(uv) 193 434 198:195(i64vec3) Load 197(i64v) 435 199:151(f16vec3) ConvertSToF 198 436 Store 153(f16v) 199 437 200:151(f16vec3) Load 153(f16v) 438 201:195(i64vec3) ConvertFToS 200 439 Store 197(i64v) 201 440 206:203(i64vec3) Load 205(u64v) 441 207:151(f16vec3) ConvertUToF 206 442 Store 153(f16v) 207 443 208:151(f16vec3) Load 153(f16v) 444 209:203(i64vec3) ConvertFToU 208 445 Store 205(u64v) 209 446 Return 447 FunctionEnd 44812(builtinAngleTrigFuncs(): 2 Function None 3 449 13: Label 450 212(f16v2): 211(ptr) Variable Function 451 213(f16v1): 211(ptr) Variable Function 452 214:210(f16vec4) Load 213(f16v1) 453 215:210(f16vec4) ExtInst 1(GLSL.std.450) 11(Radians) 214 454 Store 212(f16v2) 215 455 216:210(f16vec4) Load 213(f16v1) 456 217:210(f16vec4) ExtInst 1(GLSL.std.450) 12(Degrees) 216 457 Store 212(f16v2) 217 458 218:210(f16vec4) Load 213(f16v1) 459 219:210(f16vec4) ExtInst 1(GLSL.std.450) 13(Sin) 218 460 Store 212(f16v2) 219 461 220:210(f16vec4) Load 213(f16v1) 462 221:210(f16vec4) ExtInst 1(GLSL.std.450) 14(Cos) 220 463 Store 212(f16v2) 221 464 222:210(f16vec4) Load 213(f16v1) 465 223:210(f16vec4) ExtInst 1(GLSL.std.450) 15(Tan) 222 466 Store 212(f16v2) 223 467 224:210(f16vec4) Load 213(f16v1) 468 225:210(f16vec4) ExtInst 1(GLSL.std.450) 16(Asin) 224 469 Store 212(f16v2) 225 470 226:210(f16vec4) Load 213(f16v1) 471 227:210(f16vec4) ExtInst 1(GLSL.std.450) 17(Acos) 226 472 Store 212(f16v2) 227 473 228:210(f16vec4) Load 213(f16v1) 474 229:210(f16vec4) Load 212(f16v2) 475 230:210(f16vec4) ExtInst 1(GLSL.std.450) 25(Atan2) 228 229 476 Store 212(f16v2) 230 477 231:210(f16vec4) Load 213(f16v1) 478 232:210(f16vec4) ExtInst 1(GLSL.std.450) 18(Atan) 231 479 Store 212(f16v2) 232 480 233:210(f16vec4) Load 213(f16v1) 481 234:210(f16vec4) ExtInst 1(GLSL.std.450) 19(Sinh) 233 482 Store 212(f16v2) 234 483 235:210(f16vec4) Load 213(f16v1) 484 236:210(f16vec4) ExtInst 1(GLSL.std.450) 20(Cosh) 235 485 Store 212(f16v2) 236 486 237:210(f16vec4) Load 213(f16v1) 487 238:210(f16vec4) ExtInst 1(GLSL.std.450) 21(Tanh) 237 488 Store 212(f16v2) 238 489 239:210(f16vec4) Load 213(f16v1) 490 240:210(f16vec4) ExtInst 1(GLSL.std.450) 22(Asinh) 239 491 Store 212(f16v2) 240 492 241:210(f16vec4) Load 213(f16v1) 493 242:210(f16vec4) ExtInst 1(GLSL.std.450) 23(Acosh) 241 494 Store 212(f16v2) 242 495 243:210(f16vec4) Load 213(f16v1) 496 244:210(f16vec4) ExtInst 1(GLSL.std.450) 24(Atanh) 243 497 Store 212(f16v2) 244 498 Return 499 FunctionEnd 50014(builtinExpFuncs(): 2 Function None 3 501 15: Label 502 245(f16v2): 30(ptr) Variable Function 503 246(f16v1): 30(ptr) Variable Function 504 247: 29(f16vec2) Load 246(f16v1) 505 248: 29(f16vec2) Load 245(f16v2) 506 249: 29(f16vec2) ExtInst 1(GLSL.std.450) 26(Pow) 247 248 507 Store 245(f16v2) 249 508 250: 29(f16vec2) Load 246(f16v1) 509 251: 29(f16vec2) ExtInst 1(GLSL.std.450) 27(Exp) 250 510 Store 245(f16v2) 251 511 252: 29(f16vec2) Load 246(f16v1) 512 253: 29(f16vec2) ExtInst 1(GLSL.std.450) 28(Log) 252 513 Store 245(f16v2) 253 514 254: 29(f16vec2) Load 246(f16v1) 515 255: 29(f16vec2) ExtInst 1(GLSL.std.450) 29(Exp2) 254 516 Store 245(f16v2) 255 517 256: 29(f16vec2) Load 246(f16v1) 518 257: 29(f16vec2) ExtInst 1(GLSL.std.450) 30(Log2) 256 519 Store 245(f16v2) 257 520 258: 29(f16vec2) Load 246(f16v1) 521 259: 29(f16vec2) ExtInst 1(GLSL.std.450) 31(Sqrt) 258 522 Store 245(f16v2) 259 523 260: 29(f16vec2) Load 246(f16v1) 524 261: 29(f16vec2) ExtInst 1(GLSL.std.450) 32(InverseSqrt) 260 525 Store 245(f16v2) 261 526 Return 527 FunctionEnd 52816(builtinCommonFuncs(): 2 Function None 3 529 17: Label 530 262(f16v2): 152(ptr) Variable Function 531 263(f16v1): 152(ptr) Variable Function 532 284(f16): 35(ptr) Variable Function 533 288(f16v3): 152(ptr) Variable Function 534 331(bv): 155(ptr) Variable Function 535 352(b): 110(ptr) Variable Function 536 362(iv): 181(ptr) Variable Function 537 264:151(f16vec3) Load 263(f16v1) 538 265:151(f16vec3) ExtInst 1(GLSL.std.450) 4(FAbs) 264 539 Store 262(f16v2) 265 540 266:151(f16vec3) Load 263(f16v1) 541 267:151(f16vec3) ExtInst 1(GLSL.std.450) 6(FSign) 266 542 Store 262(f16v2) 267 543 268:151(f16vec3) Load 263(f16v1) 544 269:151(f16vec3) ExtInst 1(GLSL.std.450) 8(Floor) 268 545 Store 262(f16v2) 269 546 270:151(f16vec3) Load 263(f16v1) 547 271:151(f16vec3) ExtInst 1(GLSL.std.450) 3(Trunc) 270 548 Store 262(f16v2) 271 549 272:151(f16vec3) Load 263(f16v1) 550 273:151(f16vec3) ExtInst 1(GLSL.std.450) 1(Round) 272 551 Store 262(f16v2) 273 552 274:151(f16vec3) Load 263(f16v1) 553 275:151(f16vec3) ExtInst 1(GLSL.std.450) 2(RoundEven) 274 554 Store 262(f16v2) 275 555 276:151(f16vec3) Load 263(f16v1) 556 277:151(f16vec3) ExtInst 1(GLSL.std.450) 9(Ceil) 276 557 Store 262(f16v2) 277 558 278:151(f16vec3) Load 263(f16v1) 559 279:151(f16vec3) ExtInst 1(GLSL.std.450) 10(Fract) 278 560 Store 262(f16v2) 279 561 280:151(f16vec3) Load 263(f16v1) 562 281:151(f16vec3) Load 262(f16v2) 563 282:151(f16vec3) FMod 280 281 564 Store 262(f16v2) 282 565 283:151(f16vec3) Load 263(f16v1) 566 285:28(float16_t) Load 284(f16) 567 286:151(f16vec3) CompositeConstruct 285 285 285 568 287:151(f16vec3) FMod 283 286 569 Store 262(f16v2) 287 570 289:151(f16vec3) Load 263(f16v1) 571 291:290(ResType) ExtInst 1(GLSL.std.450) 36(ModfStruct) 289 572 292:151(f16vec3) CompositeExtract 291 1 573 Store 262(f16v2) 292 574 293:151(f16vec3) CompositeExtract 291 0 575 Store 288(f16v3) 293 576 294:151(f16vec3) Load 263(f16v1) 577 295:151(f16vec3) Load 262(f16v2) 578 296:151(f16vec3) ExtInst 1(GLSL.std.450) 37(FMin) 294 295 579 Store 288(f16v3) 296 580 297:151(f16vec3) Load 263(f16v1) 581 298:28(float16_t) Load 284(f16) 582 299:151(f16vec3) CompositeConstruct 298 298 298 583 300:151(f16vec3) ExtInst 1(GLSL.std.450) 37(FMin) 297 299 584 Store 288(f16v3) 300 585 301:151(f16vec3) Load 263(f16v1) 586 302:151(f16vec3) Load 262(f16v2) 587 303:151(f16vec3) ExtInst 1(GLSL.std.450) 40(FMax) 301 302 588 Store 288(f16v3) 303 589 304:151(f16vec3) Load 263(f16v1) 590 305:28(float16_t) Load 284(f16) 591 306:151(f16vec3) CompositeConstruct 305 305 305 592 307:151(f16vec3) ExtInst 1(GLSL.std.450) 40(FMax) 304 306 593 Store 288(f16v3) 307 594 308:151(f16vec3) Load 263(f16v1) 595 309:28(float16_t) Load 284(f16) 596 310: 35(ptr) AccessChain 262(f16v2) 34 597 311:28(float16_t) Load 310 598 312:151(f16vec3) CompositeConstruct 309 309 309 599 313:151(f16vec3) CompositeConstruct 311 311 311 600 314:151(f16vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 308 312 313 601 Store 288(f16v3) 314 602 315:151(f16vec3) Load 263(f16v1) 603 316:151(f16vec3) Load 262(f16v2) 604 317:28(float16_t) Load 284(f16) 605 318:151(f16vec3) CompositeConstruct 317 317 317 606 319:151(f16vec3) ExtInst 1(GLSL.std.450) 43(FClamp) 315 316 318 607 Store 288(f16v3) 319 608 320:151(f16vec3) Load 263(f16v1) 609 321:151(f16vec3) Load 262(f16v2) 610 322:28(float16_t) Load 284(f16) 611 323:151(f16vec3) CompositeConstruct 322 322 322 612 324:151(f16vec3) ExtInst 1(GLSL.std.450) 46(FMix) 320 321 323 613 Store 288(f16v3) 324 614 325:151(f16vec3) Load 263(f16v1) 615 326:151(f16vec3) Load 262(f16v2) 616 327:151(f16vec3) Load 288(f16v3) 617 328:151(f16vec3) ExtInst 1(GLSL.std.450) 46(FMix) 325 326 327 618 Store 288(f16v3) 328 619 329:151(f16vec3) Load 263(f16v1) 620 330:151(f16vec3) Load 262(f16v2) 621 332: 154(bvec3) Load 331(bv) 622 333:151(f16vec3) Select 332 330 329 623 Store 288(f16v3) 333 624 334:151(f16vec3) Load 263(f16v1) 625 335:151(f16vec3) Load 262(f16v2) 626 336:151(f16vec3) ExtInst 1(GLSL.std.450) 48(Step) 334 335 627 Store 288(f16v3) 336 628 337:28(float16_t) Load 284(f16) 629 338:151(f16vec3) Load 288(f16v3) 630 339:151(f16vec3) CompositeConstruct 337 337 337 631 340:151(f16vec3) ExtInst 1(GLSL.std.450) 48(Step) 339 338 632 Store 288(f16v3) 340 633 341:151(f16vec3) Load 263(f16v1) 634 342:151(f16vec3) Load 262(f16v2) 635 343:151(f16vec3) Load 288(f16v3) 636 344:151(f16vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 341 342 343 637 Store 288(f16v3) 344 638 345:28(float16_t) Load 284(f16) 639 346: 35(ptr) AccessChain 263(f16v1) 34 640 347:28(float16_t) Load 346 641 348:151(f16vec3) Load 262(f16v2) 642 349:151(f16vec3) CompositeConstruct 345 345 345 643 350:151(f16vec3) CompositeConstruct 347 347 347 644 351:151(f16vec3) ExtInst 1(GLSL.std.450) 49(SmoothStep) 349 350 348 645 Store 288(f16v3) 351 646 353:28(float16_t) Load 284(f16) 647 354: 109(bool) IsNan 353 648 Store 352(b) 354 649 355:151(f16vec3) Load 263(f16v1) 650 356: 154(bvec3) IsInf 355 651 Store 331(bv) 356 652 357:151(f16vec3) Load 263(f16v1) 653 358:151(f16vec3) Load 262(f16v2) 654 359:151(f16vec3) Load 288(f16v3) 655 360:151(f16vec3) ExtInst 1(GLSL.std.450) 50(Fma) 357 358 359 656 Store 288(f16v3) 360 657 361:151(f16vec3) Load 263(f16v1) 658 364:363(ResType) ExtInst 1(GLSL.std.450) 52(FrexpStruct) 361 659 365: 180(ivec3) CompositeExtract 364 1 660 Store 362(iv) 365 661 366:151(f16vec3) CompositeExtract 364 0 662 Store 262(f16v2) 366 663 367:151(f16vec3) Load 263(f16v1) 664 368: 180(ivec3) Load 362(iv) 665 369:151(f16vec3) ExtInst 1(GLSL.std.450) 53(Ldexp) 367 368 666 Store 262(f16v2) 369 667 Return 668 FunctionEnd 66918(builtinPackUnpackFuncs(): 2 Function None 3 670 19: Label 671 371(u): 370(ptr) Variable Function 672 372(f16v): 30(ptr) Variable Function 673 373: 29(f16vec2) Load 372(f16v) 674 374: 33(int) Bitcast 373 675 Store 371(u) 374 676 375: 33(int) Load 371(u) 677 376: 29(f16vec2) Bitcast 375 678 Store 372(f16v) 376 679 Return 680 FunctionEnd 68120(builtinGeometryFuncs(): 2 Function None 3 682 21: Label 683 377(f16): 35(ptr) Variable Function 684 378(f16v1): 152(ptr) Variable Function 685 382(f16v2): 152(ptr) Variable Function 686 388(f16v3): 152(ptr) Variable Function 687 379:151(f16vec3) Load 378(f16v1) 688 380:28(float16_t) ExtInst 1(GLSL.std.450) 66(Length) 379 689 Store 377(f16) 380 690 381:151(f16vec3) Load 378(f16v1) 691 383:151(f16vec3) Load 382(f16v2) 692 384:28(float16_t) ExtInst 1(GLSL.std.450) 67(Distance) 381 383 693 Store 377(f16) 384 694 385:151(f16vec3) Load 378(f16v1) 695 386:151(f16vec3) Load 382(f16v2) 696 387:28(float16_t) Dot 385 386 697 Store 377(f16) 387 698 389:151(f16vec3) Load 378(f16v1) 699 390:151(f16vec3) Load 382(f16v2) 700 391:151(f16vec3) ExtInst 1(GLSL.std.450) 68(Cross) 389 390 701 Store 388(f16v3) 391 702 392:151(f16vec3) Load 378(f16v1) 703 393:151(f16vec3) ExtInst 1(GLSL.std.450) 69(Normalize) 392 704 Store 382(f16v2) 393 705 394:151(f16vec3) Load 378(f16v1) 706 395:151(f16vec3) Load 382(f16v2) 707 396:151(f16vec3) Load 388(f16v3) 708 397:151(f16vec3) ExtInst 1(GLSL.std.450) 70(FaceForward) 394 395 396 709 Store 388(f16v3) 397 710 398:151(f16vec3) Load 378(f16v1) 711 399:151(f16vec3) Load 382(f16v2) 712 400:151(f16vec3) ExtInst 1(GLSL.std.450) 71(Reflect) 398 399 713 Store 388(f16v3) 400 714 401:151(f16vec3) Load 378(f16v1) 715 402:151(f16vec3) Load 382(f16v2) 716 403:28(float16_t) Load 377(f16) 717 404:151(f16vec3) ExtInst 1(GLSL.std.450) 72(Refract) 401 402 403 718 Store 388(f16v3) 404 719 Return 720 FunctionEnd 72122(builtinMatrixFuncs(): 2 Function None 3 722 23: Label 723 407(f16m3): 406(ptr) Variable Function 724 408(f16m1): 406(ptr) Variable Function 725 410(f16m2): 406(ptr) Variable Function 726 419(f16v1): 152(ptr) Variable Function 727 421(f16v2): 30(ptr) Variable Function 728 426(f16m4): 425(ptr) Variable Function 729 429(f16): 35(ptr) Variable Function 730 432(f16m5): 431(ptr) Variable Function 731 437(f16m6): 436(ptr) Variable Function 732 438(f16m7): 436(ptr) Variable Function 733 409: 405 Load 408(f16m1) 734 411: 405 Load 410(f16m2) 735 412:151(f16vec3) CompositeExtract 409 0 736 413:151(f16vec3) CompositeExtract 411 0 737 414:151(f16vec3) FMul 412 413 738 415:151(f16vec3) CompositeExtract 409 1 739 416:151(f16vec3) CompositeExtract 411 1 740 417:151(f16vec3) FMul 415 416 741 418: 405 CompositeConstruct 414 417 742 Store 407(f16m3) 418 743 420:151(f16vec3) Load 419(f16v1) 744 422: 29(f16vec2) Load 421(f16v2) 745 423: 405 OuterProduct 420 422 746 Store 408(f16m1) 423 747 427: 405 Load 408(f16m1) 748 428: 424 Transpose 427 749 Store 426(f16m4) 428 750 433: 430 Load 432(f16m5) 751 434:28(float16_t) ExtInst 1(GLSL.std.450) 33(Determinant) 433 752 Store 429(f16) 434 753 439: 435 Load 438(f16m7) 754 440: 435 ExtInst 1(GLSL.std.450) 34(MatrixInverse) 439 755 Store 437(f16m6) 440 756 Return 757 FunctionEnd 75824(builtinVecRelFuncs(): 2 Function None 3 759 25: Label 760 441(bv): 155(ptr) Variable Function 761 442(f16v1): 152(ptr) Variable Function 762 444(f16v2): 152(ptr) Variable Function 763 443:151(f16vec3) Load 442(f16v1) 764 445:151(f16vec3) Load 444(f16v2) 765 446: 154(bvec3) FOrdLessThan 443 445 766 Store 441(bv) 446 767 447:151(f16vec3) Load 442(f16v1) 768 448:151(f16vec3) Load 444(f16v2) 769 449: 154(bvec3) FOrdLessThanEqual 447 448 770 Store 441(bv) 449 771 450:151(f16vec3) Load 442(f16v1) 772 451:151(f16vec3) Load 444(f16v2) 773 452: 154(bvec3) FOrdGreaterThan 450 451 774 Store 441(bv) 452 775 453:151(f16vec3) Load 442(f16v1) 776 454:151(f16vec3) Load 444(f16v2) 777 455: 154(bvec3) FOrdGreaterThanEqual 453 454 778 Store 441(bv) 455 779 456:151(f16vec3) Load 442(f16v1) 780 457:151(f16vec3) Load 444(f16v2) 781 458: 154(bvec3) FOrdEqual 456 457 782 Store 441(bv) 458 783 459:151(f16vec3) Load 442(f16v1) 784 460:151(f16vec3) Load 444(f16v2) 785 461: 154(bvec3) FUnordNotEqual 459 460 786 Store 441(bv) 461 787 Return 788 FunctionEnd 78926(builtinFragProcFuncs(): 2 Function None 3 790 27: Label 791 462(f16v): 152(ptr) Variable Function 792 466: 465(ptr) AccessChain 464(if16v) 34 793 467:28(float16_t) Load 466 794 468:28(float16_t) DPdx 467 795 469: 35(ptr) AccessChain 462(f16v) 34 796 Store 469 468 797 470: 465(ptr) AccessChain 464(if16v) 90 798 471:28(float16_t) Load 470 799 472:28(float16_t) DPdy 471 800 473: 35(ptr) AccessChain 462(f16v) 90 801 Store 473 472 802 474:151(f16vec3) Load 464(if16v) 803 475: 29(f16vec2) VectorShuffle 474 474 0 1 804 476: 29(f16vec2) DPdxFine 475 805 477: 35(ptr) AccessChain 462(f16v) 34 806 478:28(float16_t) CompositeExtract 476 0 807 Store 477 478 808 479: 35(ptr) AccessChain 462(f16v) 90 809 480:28(float16_t) CompositeExtract 476 1 810 Store 479 480 811 481:151(f16vec3) Load 464(if16v) 812 482: 29(f16vec2) VectorShuffle 481 481 0 1 813 483: 29(f16vec2) DPdyFine 482 814 484: 35(ptr) AccessChain 462(f16v) 34 815 485:28(float16_t) CompositeExtract 483 0 816 Store 484 485 817 486: 35(ptr) AccessChain 462(f16v) 90 818 487:28(float16_t) CompositeExtract 483 1 819 Store 486 487 820 488:151(f16vec3) Load 464(if16v) 821 489:151(f16vec3) DPdxCoarse 488 822 Store 462(f16v) 489 823 490:151(f16vec3) Load 464(if16v) 824 491:151(f16vec3) DPdxCoarse 490 825 Store 462(f16v) 491 826 492: 465(ptr) AccessChain 464(if16v) 34 827 493:28(float16_t) Load 492 828 494:28(float16_t) Fwidth 493 829 495: 35(ptr) AccessChain 462(f16v) 34 830 Store 495 494 831 496:151(f16vec3) Load 464(if16v) 832 497: 29(f16vec2) VectorShuffle 496 496 0 1 833 498: 29(f16vec2) FwidthFine 497 834 499: 35(ptr) AccessChain 462(f16v) 34 835 500:28(float16_t) CompositeExtract 498 0 836 Store 499 500 837 501: 35(ptr) AccessChain 462(f16v) 90 838 502:28(float16_t) CompositeExtract 498 1 839 Store 501 502 840 503:151(f16vec3) Load 464(if16v) 841 504:151(f16vec3) FwidthCoarse 503 842 Store 462(f16v) 504 843 505: 465(ptr) AccessChain 464(if16v) 34 844 506:28(float16_t) ExtInst 1(GLSL.std.450) 76(InterpolateAtCentroid) 505 845 507: 35(ptr) AccessChain 462(f16v) 34 846 Store 507 506 847 509:151(f16vec3) ExtInst 1(GLSL.std.450) 77(InterpolateAtSample) 464(if16v) 508 848 510: 29(f16vec2) VectorShuffle 509 509 0 1 849 511: 35(ptr) AccessChain 462(f16v) 34 850 512:28(float16_t) CompositeExtract 510 0 851 Store 511 512 852 513: 35(ptr) AccessChain 462(f16v) 90 853 514:28(float16_t) CompositeExtract 510 1 854 Store 513 514 855 517:151(f16vec3) ExtInst 1(GLSL.std.450) 78(InterpolateAtOffset) 464(if16v) 516 856 Store 462(f16v) 517 857 Return 858 FunctionEnd 859