1hlsl.type.identifier.frag 2Shader version: 500 3gl_FragCoord origin is upper left 40:? Sequence 50:6 Function Definition: fn(f1; ( temp float) 60:6 Function Parameters: 70:6 'float' ( in float) 80:? Sequence 90:6 Branch: Return with expression 100:6 'float' ( in float) 110:9 Function Definition: @main( ( temp 4-component vector of float) 120:9 Function Parameters: 130:? Sequence 140:10 Sequence 150:10 move second child to first child ( temp float) 160:10 'float' ( temp float) 170:10 Constant: 180:10 7.000000 190:11 Sequence 200:11 move second child to first child ( temp 2-element array of bool) 210:11 'bool' ( temp 2-element array of bool) 220:11 Construct bool ( temp 2-element array of bool) 230:11 Convert float to bool ( temp bool) 240:11 'float' ( temp float) 250:11 Convert float to bool ( temp bool) 260:11 'float' ( temp float) 270:12 Sequence 280:12 move second child to first child ( temp int) 290:12 'int' ( temp int) 300:12 Convert bool to int ( temp int) 310:12 direct index ( temp bool) 320:12 'bool' ( temp 2-element array of bool) 330:12 Constant: 340:12 1 (const int) 350:13 Sequence 360:13 move second child to first child ( temp uint) 370:13 'uint' ( temp uint) 380:13 Convert float to uint ( temp uint) 390:13 add ( temp float) 400:13 'float' ( temp float) 410:13 Convert int to float ( temp float) 420:13 'int' ( temp int) 430:14 Sequence 440:14 move second child to first child ( temp mediump float) 450:14 'min16float' ( temp mediump float) 460:14 Convert uint to float ( temp mediump float) 470:14 'uint' ( temp mediump uint) 480:15 Sequence 490:15 move second child to first child ( temp mediump float) 500:15 'min10float' ( temp mediump float) 510:15 'min16float' ( temp mediump float) 520:16 Sequence 530:16 move second child to first child ( temp float) 540:16 'half' ( temp float) 550:16 Constant: 560:16 0.500000 570:? Sequence 580:20 move second child to first child ( temp float) 590:20 float: direct index for structure ( temp float) 600:20 'float' ( temp structure{ temp float float}) 610:20 Constant: 620:20 0 (const int) 630:20 Constant: 640:20 42.000000 650:23 move second child to first child ( temp bool) 660:23 direct index ( temp bool) 670:23 'bool' ( temp 2-element array of bool) 680:23 Constant: 690:23 0 (const int) 700:23 direct index ( temp bool) 710:23 'bool' ( temp 2-element array of bool) 720:23 Constant: 730:23 1 (const int) 740:25 move second child to first child ( temp mediump float) 750:25 'float' ( temp mediump float) 760:25 add ( temp mediump float) 770:25 add ( temp mediump float) 780:25 add ( temp mediump float) 790:25 add ( temp mediump float) 800:25 add ( temp mediump float) 810:25 add ( temp mediump float) 820:25 'float' ( temp mediump float) 830:25 Convert int to float ( temp mediump float) 840:25 'int' ( temp mediump int) 850:25 Convert uint to float ( temp mediump float) 860:25 'uint' ( temp mediump uint) 870:25 'min16float' ( temp mediump float) 880:25 'min10float' ( temp mediump float) 890:25 Test condition and select ( temp mediump float): no shortcircuit 900:25 Condition 910:25 direct index ( temp bool) 920:25 'bool' ( temp 2-element array of bool) 930:25 Constant: 940:25 0 (const int) 950:25 true case 960:25 Convert int to float ( temp mediump float) 970:25 'int' ( temp mediump int) 980:25 false case 990:25 'float' ( temp mediump float) 1000:25 Function Call: fn(f1; ( temp mediump float) 1010:25 'float' ( temp mediump float) 1020:28 move second child to first child ( temp float) 1030:28 direct index ( temp float) 1040:28 direct index ( temp 3-component vector of float) 1050:28 'half2x3' ( temp 2X3 matrix of float) 1060:28 Constant: 1070:28 0 (const int) 1080:28 Constant: 1090:28 0 (const int) 1100:28 component-wise multiply ( temp float) 1110:28 'float' ( temp float) 1120:28 'float' ( temp float) 1130:30 Branch: Return with expression 1140:30 Construct vec4 ( temp 4-component vector of float) 1150:30 add ( temp float) 1160:30 'float' ( temp float) 1170:30 direct index ( temp float) 1180:30 direct index ( temp 3-component vector of float) 1190:30 'half2x3' ( temp 2X3 matrix of float) 1200:30 Constant: 1210:30 0 (const int) 1220:30 Constant: 1230:30 0 (const int) 1240:9 Function Definition: main( ( temp void) 1250:9 Function Parameters: 1260:? Sequence 1270:9 move second child to first child ( temp 4-component vector of float) 1280:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 1290:9 Function Call: @main( ( temp 4-component vector of float) 1300:? Linker Objects 1310:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 132 133 134Linked fragment stage: 135 136 137Shader version: 500 138gl_FragCoord origin is upper left 1390:? Sequence 1400:6 Function Definition: fn(f1; ( temp float) 1410:6 Function Parameters: 1420:6 'float' ( in float) 1430:? Sequence 1440:6 Branch: Return with expression 1450:6 'float' ( in float) 1460:9 Function Definition: @main( ( temp 4-component vector of float) 1470:9 Function Parameters: 1480:? Sequence 1490:10 Sequence 1500:10 move second child to first child ( temp float) 1510:10 'float' ( temp float) 1520:10 Constant: 1530:10 7.000000 1540:11 Sequence 1550:11 move second child to first child ( temp 2-element array of bool) 1560:11 'bool' ( temp 2-element array of bool) 1570:11 Construct bool ( temp 2-element array of bool) 1580:11 Convert float to bool ( temp bool) 1590:11 'float' ( temp float) 1600:11 Convert float to bool ( temp bool) 1610:11 'float' ( temp float) 1620:12 Sequence 1630:12 move second child to first child ( temp int) 1640:12 'int' ( temp int) 1650:12 Convert bool to int ( temp int) 1660:12 direct index ( temp bool) 1670:12 'bool' ( temp 2-element array of bool) 1680:12 Constant: 1690:12 1 (const int) 1700:13 Sequence 1710:13 move second child to first child ( temp uint) 1720:13 'uint' ( temp uint) 1730:13 Convert float to uint ( temp uint) 1740:13 add ( temp float) 1750:13 'float' ( temp float) 1760:13 Convert int to float ( temp float) 1770:13 'int' ( temp int) 1780:14 Sequence 1790:14 move second child to first child ( temp mediump float) 1800:14 'min16float' ( temp mediump float) 1810:14 Convert uint to float ( temp mediump float) 1820:14 'uint' ( temp mediump uint) 1830:15 Sequence 1840:15 move second child to first child ( temp mediump float) 1850:15 'min10float' ( temp mediump float) 1860:15 'min16float' ( temp mediump float) 1870:16 Sequence 1880:16 move second child to first child ( temp float) 1890:16 'half' ( temp float) 1900:16 Constant: 1910:16 0.500000 1920:? Sequence 1930:20 move second child to first child ( temp float) 1940:20 float: direct index for structure ( temp float) 1950:20 'float' ( temp structure{ temp float float}) 1960:20 Constant: 1970:20 0 (const int) 1980:20 Constant: 1990:20 42.000000 2000:23 move second child to first child ( temp bool) 2010:23 direct index ( temp bool) 2020:23 'bool' ( temp 2-element array of bool) 2030:23 Constant: 2040:23 0 (const int) 2050:23 direct index ( temp bool) 2060:23 'bool' ( temp 2-element array of bool) 2070:23 Constant: 2080:23 1 (const int) 2090:25 move second child to first child ( temp mediump float) 2100:25 'float' ( temp mediump float) 2110:25 add ( temp mediump float) 2120:25 add ( temp mediump float) 2130:25 add ( temp mediump float) 2140:25 add ( temp mediump float) 2150:25 add ( temp mediump float) 2160:25 add ( temp mediump float) 2170:25 'float' ( temp mediump float) 2180:25 Convert int to float ( temp mediump float) 2190:25 'int' ( temp mediump int) 2200:25 Convert uint to float ( temp mediump float) 2210:25 'uint' ( temp mediump uint) 2220:25 'min16float' ( temp mediump float) 2230:25 'min10float' ( temp mediump float) 2240:25 Test condition and select ( temp mediump float): no shortcircuit 2250:25 Condition 2260:25 direct index ( temp bool) 2270:25 'bool' ( temp 2-element array of bool) 2280:25 Constant: 2290:25 0 (const int) 2300:25 true case 2310:25 Convert int to float ( temp mediump float) 2320:25 'int' ( temp mediump int) 2330:25 false case 2340:25 'float' ( temp mediump float) 2350:25 Function Call: fn(f1; ( temp mediump float) 2360:25 'float' ( temp mediump float) 2370:28 move second child to first child ( temp float) 2380:28 direct index ( temp float) 2390:28 direct index ( temp 3-component vector of float) 2400:28 'half2x3' ( temp 2X3 matrix of float) 2410:28 Constant: 2420:28 0 (const int) 2430:28 Constant: 2440:28 0 (const int) 2450:28 component-wise multiply ( temp float) 2460:28 'float' ( temp float) 2470:28 'float' ( temp float) 2480:30 Branch: Return with expression 2490:30 Construct vec4 ( temp 4-component vector of float) 2500:30 add ( temp float) 2510:30 'float' ( temp float) 2520:30 direct index ( temp float) 2530:30 direct index ( temp 3-component vector of float) 2540:30 'half2x3' ( temp 2X3 matrix of float) 2550:30 Constant: 2560:30 0 (const int) 2570:30 Constant: 2580:30 0 (const int) 2590:9 Function Definition: main( ( temp void) 2600:9 Function Parameters: 2610:? Sequence 2620:9 move second child to first child ( temp 4-component vector of float) 2630:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 2640:9 Function Call: @main( ( temp 4-component vector of float) 2650:? Linker Objects 2660:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 267 268// Module Version 10000 269// Generated by (magic number): 8000a 270// Id's are bound by 105 271 272 Capability Shader 273 1: ExtInstImport "GLSL.std.450" 274 MemoryModel Logical GLSL450 275 EntryPoint Fragment 4 "main" 103 276 ExecutionMode 4 OriginUpperLeft 277 Source HLSL 500 278 Name 4 "main" 279 Name 10 "fn(f1;" 280 Name 9 "float" 281 Name 14 "@main(" 282 Name 19 "float" 283 Name 26 "bool" 284 Name 35 "int" 285 Name 43 "uint" 286 Name 49 "min16float" 287 Name 52 "min10float" 288 Name 54 "half" 289 Name 56 "foo_t" 290 MemberName 56(foo_t) 0 "float" 291 Name 58 "float" 292 Name 82 "param" 293 Name 89 "half2x3" 294 Name 103 "@entryPointOutput" 295 Decorate 49(min16float) RelaxedPrecision 296 Decorate 50 RelaxedPrecision 297 Decorate 51 RelaxedPrecision 298 Decorate 52(min10float) RelaxedPrecision 299 Decorate 53 RelaxedPrecision 300 Decorate 64 RelaxedPrecision 301 Decorate 65 RelaxedPrecision 302 Decorate 66 RelaxedPrecision 303 Decorate 67 RelaxedPrecision 304 Decorate 68 RelaxedPrecision 305 Decorate 69 RelaxedPrecision 306 Decorate 70 RelaxedPrecision 307 Decorate 71 RelaxedPrecision 308 Decorate 72 RelaxedPrecision 309 Decorate 73 RelaxedPrecision 310 Decorate 74 RelaxedPrecision 311 Decorate 77 RelaxedPrecision 312 Decorate 78 RelaxedPrecision 313 Decorate 79 RelaxedPrecision 314 Decorate 81 RelaxedPrecision 315 Decorate 83 RelaxedPrecision 316 Decorate 84 RelaxedPrecision 317 Decorate 85 RelaxedPrecision 318 Decorate 103(@entryPointOutput) Location 0 319 2: TypeVoid 320 3: TypeFunction 2 321 6: TypeFloat 32 322 7: TypePointer Function 6(float) 323 8: TypeFunction 6(float) 7(ptr) 324 12: TypeVector 6(float) 4 325 13: TypeFunction 12(fvec4) 326 20: 6(float) Constant 1088421888 327 21: TypeBool 328 22: TypeInt 32 0 329 23: 22(int) Constant 2 330 24: TypeArray 21(bool) 23 331 25: TypePointer Function 24 332 28: 6(float) Constant 0 333 33: TypeInt 32 1 334 34: TypePointer Function 33(int) 335 36: 33(int) Constant 1 336 37: TypePointer Function 21(bool) 337 40: 33(int) Constant 0 338 42: TypePointer Function 22(int) 339 55: 6(float) Constant 1056964608 340 56(foo_t): TypeStruct 6(float) 341 57: TypePointer Function 56(foo_t) 342 59: 6(float) Constant 1109917696 343 86: TypeVector 6(float) 3 344 87: TypeMatrix 86(fvec3) 2 345 88: TypePointer Function 87 346 93: 22(int) Constant 0 347 102: TypePointer Output 12(fvec4) 348103(@entryPointOutput): 102(ptr) Variable Output 349 4(main): 2 Function None 3 350 5: Label 351 104: 12(fvec4) FunctionCall 14(@main() 352 Store 103(@entryPointOutput) 104 353 Return 354 FunctionEnd 355 10(fn(f1;): 6(float) Function None 8 356 9(float): 7(ptr) FunctionParameter 357 11: Label 358 16: 6(float) Load 9(float) 359 ReturnValue 16 360 FunctionEnd 361 14(@main(): 12(fvec4) Function None 13 362 15: Label 363 19(float): 7(ptr) Variable Function 364 26(bool): 25(ptr) Variable Function 365 35(int): 34(ptr) Variable Function 366 43(uint): 42(ptr) Variable Function 367 49(min16float): 7(ptr) Variable Function 368 52(min10float): 7(ptr) Variable Function 369 54(half): 7(ptr) Variable Function 370 58(float): 57(ptr) Variable Function 371 82(param): 7(ptr) Variable Function 372 89(half2x3): 88(ptr) Variable Function 373 Store 19(float) 20 374 27: 6(float) Load 19(float) 375 29: 21(bool) FUnordNotEqual 27 28 376 30: 6(float) Load 19(float) 377 31: 21(bool) FUnordNotEqual 30 28 378 32: 24 CompositeConstruct 29 31 379 Store 26(bool) 32 380 38: 37(ptr) AccessChain 26(bool) 36 381 39: 21(bool) Load 38 382 41: 33(int) Select 39 36 40 383 Store 35(int) 41 384 44: 6(float) Load 19(float) 385 45: 33(int) Load 35(int) 386 46: 6(float) ConvertSToF 45 387 47: 6(float) FAdd 44 46 388 48: 22(int) ConvertFToU 47 389 Store 43(uint) 48 390 50: 22(int) Load 43(uint) 391 51: 6(float) ConvertUToF 50 392 Store 49(min16float) 51 393 53: 6(float) Load 49(min16float) 394 Store 52(min10float) 53 395 Store 54(half) 55 396 60: 7(ptr) AccessChain 58(float) 40 397 Store 60 59 398 61: 37(ptr) AccessChain 26(bool) 36 399 62: 21(bool) Load 61 400 63: 37(ptr) AccessChain 26(bool) 40 401 Store 63 62 402 64: 6(float) Load 19(float) 403 65: 33(int) Load 35(int) 404 66: 6(float) ConvertSToF 65 405 67: 6(float) FAdd 64 66 406 68: 22(int) Load 43(uint) 407 69: 6(float) ConvertUToF 68 408 70: 6(float) FAdd 67 69 409 71: 6(float) Load 49(min16float) 410 72: 6(float) FAdd 70 71 411 73: 6(float) Load 52(min10float) 412 74: 6(float) FAdd 72 73 413 75: 37(ptr) AccessChain 26(bool) 40 414 76: 21(bool) Load 75 415 77: 33(int) Load 35(int) 416 78: 6(float) ConvertSToF 77 417 79: 6(float) Load 19(float) 418 80: 6(float) Select 76 78 79 419 81: 6(float) FAdd 74 80 420 83: 6(float) Load 19(float) 421 Store 82(param) 83 422 84: 6(float) FunctionCall 10(fn(f1;) 82(param) 423 85: 6(float) FAdd 81 84 424 Store 19(float) 85 425 90: 6(float) Load 19(float) 426 91: 6(float) Load 19(float) 427 92: 6(float) FMul 90 91 428 94: 7(ptr) AccessChain 89(half2x3) 40 93 429 Store 94 92 430 95: 6(float) Load 19(float) 431 96: 7(ptr) AccessChain 89(half2x3) 40 93 432 97: 6(float) Load 96 433 98: 6(float) FAdd 95 97 434 99: 12(fvec4) CompositeConstruct 98 98 98 98 435 ReturnValue 99 436 FunctionEnd 437