1hlsl.forLoop.frag 2Shader version: 500 3gl_FragCoord origin is upper left 40:? Sequence 50:1 Function Definition: f0( ( temp void) 60:1 Function Parameters: 70:? Sequence 80:? Sequence 90:2 Loop with condition tested first 100:2 No loop condition 110:2 No loop body 120:5 Function Definition: f1(vf4; ( temp void) 130:5 Function Parameters: 140:5 'input' ( in 4-component vector of float) 150:? Sequence 160:6 Sequence 170:6 Pre-Increment ( temp 4-component vector of float) 180:6 'input' ( in 4-component vector of float) 190:6 Loop with condition tested first 200:6 No loop condition 210:6 No loop body 220:9 Function Definition: f2(vf4; ( temp void) 230:9 Function Parameters: 240:9 'input' ( in 4-component vector of float) 250:? Sequence 260:? Sequence 270:10 Loop with condition tested first: Unroll 280:10 Loop Condition 290:10 any ( temp bool) 300:10 NotEqual ( temp 4-component vector of bool) 310:10 'input' ( in 4-component vector of float) 320:10 'input' ( in 4-component vector of float) 330:10 No loop body 340:13 Function Definition: f3(vf4; ( temp float) 350:13 Function Parameters: 360:13 'input' ( in 4-component vector of float) 370:? Sequence 380:? Sequence 390:14 Loop with condition tested first 400:14 Loop Condition 410:14 any ( temp bool) 420:14 NotEqual ( temp 4-component vector of bool) 430:14 'input' ( in 4-component vector of float) 440:14 'input' ( in 4-component vector of float) 450:14 Loop Body 460:? Sequence 470:14 Branch: Return with expression 480:14 Construct float ( temp float) 490:14 Negate value ( temp 4-component vector of float) 500:14 'input' ( in 4-component vector of float) 510:17 Function Definition: f4(vf4; ( temp float) 520:17 Function Parameters: 530:17 'input' ( in 4-component vector of float) 540:? Sequence 550:18 Sequence 560:18 Pre-Decrement ( temp 4-component vector of float) 570:18 'input' ( in 4-component vector of float) 580:18 Loop with condition tested first 590:18 Loop Condition 600:18 any ( temp bool) 610:18 NotEqual ( temp 4-component vector of bool) 620:18 'input' ( in 4-component vector of float) 630:18 'input' ( in 4-component vector of float) 640:18 Loop Body 650:? Sequence 660:18 Branch: Return with expression 670:18 Construct float ( temp float) 680:18 Negate value ( temp 4-component vector of float) 690:18 'input' ( in 4-component vector of float) 700:18 Loop Terminal Expression 710:18 add second child into first child ( temp 4-component vector of float) 720:18 'input' ( in 4-component vector of float) 730:18 Constant: 740:18 2.000000 750:21 Function Definition: f5(vf4; ( temp void) 760:21 Function Parameters: 770:21 'input' ( in 4-component vector of float) 780:? Sequence 790:? Sequence 800:22 Loop with condition tested first 810:22 No loop condition 820:22 Loop Body 830:22 Test condition and select ( temp void) 840:22 Condition 850:22 Compare Greater Than ( temp bool) 860:22 direct index ( temp float) 870:22 'input' ( in 4-component vector of float) 880:22 Constant: 890:22 0 (const int) 900:22 Constant: 910:22 2.000000 920:22 true case 930:22 Branch: Break 940:25 Function Definition: f6(vf4; ( temp void) 950:25 Function Parameters: 960:25 'input' ( in 4-component vector of float) 970:? Sequence 980:? Sequence 990:26 Loop with condition tested first 1000:26 No loop condition 1010:26 Loop Body 1020:26 Test condition and select ( temp void) 1030:26 Condition 1040:26 Compare Greater Than ( temp bool) 1050:26 direct index ( temp float) 1060:26 'input' ( in 4-component vector of float) 1070:26 Constant: 1080:26 0 (const int) 1090:26 Constant: 1100:26 2.000000 1110:26 true case 1120:26 Branch: Continue 1130:29 Function Definition: f99( ( temp void) 1140:29 Function Parameters: 1150:? Sequence 1160:30 Sequence 1170:30 move second child to first child ( temp int) 1180:30 'first' ( temp int) 1190:30 Constant: 1200:30 0 (const int) 1210:30 move second child to first child ( temp int) 1220:30 'second' ( temp int) 1230:30 Constant: 1240:30 1 (const int) 1250:30 Loop with condition tested first 1260:30 No loop condition 1270:30 Loop Body 1280:30 add ( temp int) 1290:30 'first' ( temp int) 1300:30 'second' ( temp int) 1310:33 Function Definition: f100(f1; ( temp void) 1320:33 Function Parameters: 1330:33 'ii' ( in float) 1340:? Sequence 1350:? Sequence 1360:34 Comma ( temp float) 1370:34 Comma ( temp float) 1380:34 Pre-Decrement ( temp float) 1390:34 'ii' ( in float) 1400:34 Pre-Decrement ( temp float) 1410:34 'ii' ( in float) 1420:34 Pre-Decrement ( temp float) 1430:34 'ii' ( in float) 1440:34 Loop with condition tested first 1450:34 No loop condition 1460:34 Loop Body 1470:34 'ii' ( in float) 1480:38 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 1490:38 Function Parameters: 1500:38 'input' ( in 4-component vector of float) 1510:? Sequence 1520:39 Function Call: f0( ( temp void) 1530:40 Function Call: f1(vf4; ( temp void) 1540:40 'input' ( in 4-component vector of float) 1550:41 Function Call: f2(vf4; ( temp void) 1560:41 'input' ( in 4-component vector of float) 1570:42 Function Call: f3(vf4; ( temp float) 1580:42 'input' ( in 4-component vector of float) 1590:43 Function Call: f4(vf4; ( temp float) 1600:43 'input' ( in 4-component vector of float) 1610:44 Function Call: f5(vf4; ( temp void) 1620:44 'input' ( in 4-component vector of float) 1630:45 Function Call: f6(vf4; ( temp void) 1640:45 'input' ( in 4-component vector of float) 1650:48 Sequence 1660:48 move second child to first child ( temp int) 1670:48 'ii' ( temp int) 1680:48 Constant: 1690:48 -1 (const int) 1700:48 Loop with condition tested first 1710:48 Loop Condition 1720:48 Compare Less Than ( temp bool) 1730:48 'ii' ( temp int) 1740:48 Constant: 1750:48 3 (const int) 1760:48 Loop Body 1770:48 Test condition and select ( temp void) 1780:48 Condition 1790:48 Compare Equal ( temp bool) 1800:48 'ii' ( temp int) 1810:48 Constant: 1820:48 2 (const int) 1830:48 true case 1840:48 Branch: Continue 1850:48 Loop Terminal Expression 1860:48 Pre-Increment ( temp int) 1870:48 'ii' ( temp int) 1880:49 Pre-Decrement ( temp float) 1890:49 'ii' ( temp float) 1900:51 Function Call: f99( ( temp void) 1910:53 Sequence 1920:53 move second child to first child ( temp int) 1930:53 'i' ( temp int) 1940:53 Constant: 1950:53 0 (const int) 1960:53 move second child to first child ( temp int) 1970:53 'count' ( temp int) 1980:53 Convert float to int ( temp int) 1990:53 'ii' ( temp float) 2000:53 Loop with condition tested first 2010:53 Loop Condition 2020:53 Compare Less Than ( temp bool) 2030:53 'i' ( temp int) 2040:53 'count' ( temp int) 2050:53 No loop body 2060:53 Loop Terminal Expression 2070:53 Post-Increment ( temp int) 2080:53 'i' ( temp int) 2090:54 Sequence 2100:54 move second child to first child ( temp float) 2110:54 'first' ( temp float) 2120:54 Constant: 2130:54 0.000000 2140:54 Loop with condition tested first 2150:54 Loop Condition 2160:54 Compare Less Than ( temp bool) 2170:54 'first' ( temp float) 2180:54 direct index ( temp float) 2190:54 'second' ( temp 2-element array of float) 2200:54 Constant: 2210:54 0 (const int) 2220:54 Loop Body 2230:54 add ( temp float) 2240:54 add ( temp float) 2250:54 'first' ( temp float) 2260:54 direct index ( temp float) 2270:54 'second' ( temp 2-element array of float) 2280:54 Constant: 2290:54 1 (const int) 2300:54 'third' ( temp float) 2310:54 Loop Terminal Expression 2320:54 Pre-Increment ( temp float) 2330:54 direct index ( temp float) 2340:54 'second' ( temp 2-element array of float) 2350:54 Constant: 2360:54 1 (const int) 2370:56 Function Call: f100(f1; ( temp void) 2380:56 'ii' ( temp float) 2390:58 Branch: Return with expression 2400:58 'input' ( in 4-component vector of float) 2410:38 Function Definition: PixelShaderFunction( ( temp void) 2420:38 Function Parameters: 2430:? Sequence 2440:38 move second child to first child ( temp 4-component vector of float) 2450:? 'input' ( temp 4-component vector of float) 2460:? 'input' (layout( location=0) in 4-component vector of float) 2470:38 move second child to first child ( temp 4-component vector of float) 2480:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 2490:38 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 2500:? 'input' ( temp 4-component vector of float) 2510:? Linker Objects 2520:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 2530:? 'input' (layout( location=0) in 4-component vector of float) 254 255 256Linked fragment stage: 257 258 259Shader version: 500 260gl_FragCoord origin is upper left 2610:? Sequence 2620:1 Function Definition: f0( ( temp void) 2630:1 Function Parameters: 2640:? Sequence 2650:? Sequence 2660:2 Loop with condition tested first 2670:2 No loop condition 2680:2 No loop body 2690:5 Function Definition: f1(vf4; ( temp void) 2700:5 Function Parameters: 2710:5 'input' ( in 4-component vector of float) 2720:? Sequence 2730:6 Sequence 2740:6 Pre-Increment ( temp 4-component vector of float) 2750:6 'input' ( in 4-component vector of float) 2760:6 Loop with condition tested first 2770:6 No loop condition 2780:6 No loop body 2790:9 Function Definition: f2(vf4; ( temp void) 2800:9 Function Parameters: 2810:9 'input' ( in 4-component vector of float) 2820:? Sequence 2830:? Sequence 2840:10 Loop with condition tested first: Unroll 2850:10 Loop Condition 2860:10 any ( temp bool) 2870:10 NotEqual ( temp 4-component vector of bool) 2880:10 'input' ( in 4-component vector of float) 2890:10 'input' ( in 4-component vector of float) 2900:10 No loop body 2910:13 Function Definition: f3(vf4; ( temp float) 2920:13 Function Parameters: 2930:13 'input' ( in 4-component vector of float) 2940:? Sequence 2950:? Sequence 2960:14 Loop with condition tested first 2970:14 Loop Condition 2980:14 any ( temp bool) 2990:14 NotEqual ( temp 4-component vector of bool) 3000:14 'input' ( in 4-component vector of float) 3010:14 'input' ( in 4-component vector of float) 3020:14 Loop Body 3030:? Sequence 3040:14 Branch: Return with expression 3050:14 Construct float ( temp float) 3060:14 Negate value ( temp 4-component vector of float) 3070:14 'input' ( in 4-component vector of float) 3080:17 Function Definition: f4(vf4; ( temp float) 3090:17 Function Parameters: 3100:17 'input' ( in 4-component vector of float) 3110:? Sequence 3120:18 Sequence 3130:18 Pre-Decrement ( temp 4-component vector of float) 3140:18 'input' ( in 4-component vector of float) 3150:18 Loop with condition tested first 3160:18 Loop Condition 3170:18 any ( temp bool) 3180:18 NotEqual ( temp 4-component vector of bool) 3190:18 'input' ( in 4-component vector of float) 3200:18 'input' ( in 4-component vector of float) 3210:18 Loop Body 3220:? Sequence 3230:18 Branch: Return with expression 3240:18 Construct float ( temp float) 3250:18 Negate value ( temp 4-component vector of float) 3260:18 'input' ( in 4-component vector of float) 3270:18 Loop Terminal Expression 3280:18 add second child into first child ( temp 4-component vector of float) 3290:18 'input' ( in 4-component vector of float) 3300:18 Constant: 3310:18 2.000000 3320:21 Function Definition: f5(vf4; ( temp void) 3330:21 Function Parameters: 3340:21 'input' ( in 4-component vector of float) 3350:? Sequence 3360:? Sequence 3370:22 Loop with condition tested first 3380:22 No loop condition 3390:22 Loop Body 3400:22 Test condition and select ( temp void) 3410:22 Condition 3420:22 Compare Greater Than ( temp bool) 3430:22 direct index ( temp float) 3440:22 'input' ( in 4-component vector of float) 3450:22 Constant: 3460:22 0 (const int) 3470:22 Constant: 3480:22 2.000000 3490:22 true case 3500:22 Branch: Break 3510:25 Function Definition: f6(vf4; ( temp void) 3520:25 Function Parameters: 3530:25 'input' ( in 4-component vector of float) 3540:? Sequence 3550:? Sequence 3560:26 Loop with condition tested first 3570:26 No loop condition 3580:26 Loop Body 3590:26 Test condition and select ( temp void) 3600:26 Condition 3610:26 Compare Greater Than ( temp bool) 3620:26 direct index ( temp float) 3630:26 'input' ( in 4-component vector of float) 3640:26 Constant: 3650:26 0 (const int) 3660:26 Constant: 3670:26 2.000000 3680:26 true case 3690:26 Branch: Continue 3700:29 Function Definition: f99( ( temp void) 3710:29 Function Parameters: 3720:? Sequence 3730:30 Sequence 3740:30 move second child to first child ( temp int) 3750:30 'first' ( temp int) 3760:30 Constant: 3770:30 0 (const int) 3780:30 move second child to first child ( temp int) 3790:30 'second' ( temp int) 3800:30 Constant: 3810:30 1 (const int) 3820:30 Loop with condition tested first 3830:30 No loop condition 3840:30 Loop Body 3850:30 add ( temp int) 3860:30 'first' ( temp int) 3870:30 'second' ( temp int) 3880:33 Function Definition: f100(f1; ( temp void) 3890:33 Function Parameters: 3900:33 'ii' ( in float) 3910:? Sequence 3920:? Sequence 3930:34 Comma ( temp float) 3940:34 Comma ( temp float) 3950:34 Pre-Decrement ( temp float) 3960:34 'ii' ( in float) 3970:34 Pre-Decrement ( temp float) 3980:34 'ii' ( in float) 3990:34 Pre-Decrement ( temp float) 4000:34 'ii' ( in float) 4010:34 Loop with condition tested first 4020:34 No loop condition 4030:34 Loop Body 4040:34 'ii' ( in float) 4050:38 Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 4060:38 Function Parameters: 4070:38 'input' ( in 4-component vector of float) 4080:? Sequence 4090:39 Function Call: f0( ( temp void) 4100:40 Function Call: f1(vf4; ( temp void) 4110:40 'input' ( in 4-component vector of float) 4120:41 Function Call: f2(vf4; ( temp void) 4130:41 'input' ( in 4-component vector of float) 4140:42 Function Call: f3(vf4; ( temp float) 4150:42 'input' ( in 4-component vector of float) 4160:43 Function Call: f4(vf4; ( temp float) 4170:43 'input' ( in 4-component vector of float) 4180:44 Function Call: f5(vf4; ( temp void) 4190:44 'input' ( in 4-component vector of float) 4200:45 Function Call: f6(vf4; ( temp void) 4210:45 'input' ( in 4-component vector of float) 4220:48 Sequence 4230:48 move second child to first child ( temp int) 4240:48 'ii' ( temp int) 4250:48 Constant: 4260:48 -1 (const int) 4270:48 Loop with condition tested first 4280:48 Loop Condition 4290:48 Compare Less Than ( temp bool) 4300:48 'ii' ( temp int) 4310:48 Constant: 4320:48 3 (const int) 4330:48 Loop Body 4340:48 Test condition and select ( temp void) 4350:48 Condition 4360:48 Compare Equal ( temp bool) 4370:48 'ii' ( temp int) 4380:48 Constant: 4390:48 2 (const int) 4400:48 true case 4410:48 Branch: Continue 4420:48 Loop Terminal Expression 4430:48 Pre-Increment ( temp int) 4440:48 'ii' ( temp int) 4450:49 Pre-Decrement ( temp float) 4460:49 'ii' ( temp float) 4470:51 Function Call: f99( ( temp void) 4480:53 Sequence 4490:53 move second child to first child ( temp int) 4500:53 'i' ( temp int) 4510:53 Constant: 4520:53 0 (const int) 4530:53 move second child to first child ( temp int) 4540:53 'count' ( temp int) 4550:53 Convert float to int ( temp int) 4560:53 'ii' ( temp float) 4570:53 Loop with condition tested first 4580:53 Loop Condition 4590:53 Compare Less Than ( temp bool) 4600:53 'i' ( temp int) 4610:53 'count' ( temp int) 4620:53 No loop body 4630:53 Loop Terminal Expression 4640:53 Post-Increment ( temp int) 4650:53 'i' ( temp int) 4660:54 Sequence 4670:54 move second child to first child ( temp float) 4680:54 'first' ( temp float) 4690:54 Constant: 4700:54 0.000000 4710:54 Loop with condition tested first 4720:54 Loop Condition 4730:54 Compare Less Than ( temp bool) 4740:54 'first' ( temp float) 4750:54 direct index ( temp float) 4760:54 'second' ( temp 2-element array of float) 4770:54 Constant: 4780:54 0 (const int) 4790:54 Loop Body 4800:54 add ( temp float) 4810:54 add ( temp float) 4820:54 'first' ( temp float) 4830:54 direct index ( temp float) 4840:54 'second' ( temp 2-element array of float) 4850:54 Constant: 4860:54 1 (const int) 4870:54 'third' ( temp float) 4880:54 Loop Terminal Expression 4890:54 Pre-Increment ( temp float) 4900:54 direct index ( temp float) 4910:54 'second' ( temp 2-element array of float) 4920:54 Constant: 4930:54 1 (const int) 4940:56 Function Call: f100(f1; ( temp void) 4950:56 'ii' ( temp float) 4960:58 Branch: Return with expression 4970:58 'input' ( in 4-component vector of float) 4980:38 Function Definition: PixelShaderFunction( ( temp void) 4990:38 Function Parameters: 5000:? Sequence 5010:38 move second child to first child ( temp 4-component vector of float) 5020:? 'input' ( temp 4-component vector of float) 5030:? 'input' (layout( location=0) in 4-component vector of float) 5040:38 move second child to first child ( temp 4-component vector of float) 5050:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 5060:38 Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float) 5070:? 'input' ( temp 4-component vector of float) 5080:? Linker Objects 5090:? '@entryPointOutput' (layout( location=0) out 4-component vector of float) 5100:? 'input' (layout( location=0) in 4-component vector of float) 511 512// Module Version 10000 513// Generated by (magic number): 8000a 514// Id's are bound by 240 515 516 Capability Shader 517 1: ExtInstImport "GLSL.std.450" 518 MemoryModel Logical GLSL450 519 EntryPoint Fragment 4 "PixelShaderFunction" 233 236 520 ExecutionMode 4 OriginUpperLeft 521 Source HLSL 500 522 Name 4 "PixelShaderFunction" 523 Name 6 "f0(" 524 Name 13 "f1(vf4;" 525 Name 12 "input" 526 Name 16 "f2(vf4;" 527 Name 15 "input" 528 Name 20 "f3(vf4;" 529 Name 19 "input" 530 Name 23 "f4(vf4;" 531 Name 22 "input" 532 Name 26 "f5(vf4;" 533 Name 25 "input" 534 Name 29 "f6(vf4;" 535 Name 28 "input" 536 Name 31 "f99(" 537 Name 36 "f100(f1;" 538 Name 35 "ii" 539 Name 40 "@PixelShaderFunction(vf4;" 540 Name 39 "input" 541 Name 124 "first" 542 Name 126 "second" 543 Name 146 "param" 544 Name 149 "param" 545 Name 152 "param" 546 Name 155 "param" 547 Name 158 "param" 548 Name 161 "param" 549 Name 164 "ii" 550 Name 182 "ii" 551 Name 186 "i" 552 Name 187 "count" 553 Name 200 "first" 554 Name 211 "second" 555 Name 219 "third" 556 Name 225 "param" 557 Name 231 "input" 558 Name 233 "input" 559 Name 236 "@entryPointOutput" 560 Name 237 "param" 561 Decorate 233(input) Location 0 562 Decorate 236(@entryPointOutput) Location 0 563 2: TypeVoid 564 3: TypeFunction 2 565 8: TypeFloat 32 566 9: TypeVector 8(float) 4 567 10: TypePointer Function 9(fvec4) 568 11: TypeFunction 2 10(ptr) 569 18: TypeFunction 8(float) 10(ptr) 570 33: TypePointer Function 8(float) 571 34: TypeFunction 2 33(ptr) 572 38: TypeFunction 9(fvec4) 10(ptr) 573 47: 8(float) Constant 1065353216 574 61: TypeBool 575 62: TypeVector 61(bool) 4 576 95: 8(float) Constant 1073741824 577 104: TypeInt 32 0 578 105: 104(int) Constant 0 579 122: TypeInt 32 1 580 123: TypePointer Function 122(int) 581 125: 122(int) Constant 0 582 127: 122(int) Constant 1 583 165: 122(int) Constant 4294967295 584 172: 122(int) Constant 3 585 175: 122(int) Constant 2 586 201: 8(float) Constant 0 587 208: 104(int) Constant 2 588 209: TypeArray 8(float) 208 589 210: TypePointer Function 209 590 232: TypePointer Input 9(fvec4) 591 233(input): 232(ptr) Variable Input 592 235: TypePointer Output 9(fvec4) 593236(@entryPointOutput): 235(ptr) Variable Output 5944(PixelShaderFunction): 2 Function None 3 595 5: Label 596 231(input): 10(ptr) Variable Function 597 237(param): 10(ptr) Variable Function 598 234: 9(fvec4) Load 233(input) 599 Store 231(input) 234 600 238: 9(fvec4) Load 231(input) 601 Store 237(param) 238 602 239: 9(fvec4) FunctionCall 40(@PixelShaderFunction(vf4;) 237(param) 603 Store 236(@entryPointOutput) 239 604 Return 605 FunctionEnd 606 6(f0(): 2 Function None 3 607 7: Label 608 Branch 42 609 42: Label 610 LoopMerge 44 45 None 611 Branch 43 612 43: Label 613 Branch 45 614 45: Label 615 Branch 42 616 44: Label 617 Unreachable 618 FunctionEnd 619 13(f1(vf4;): 2 Function None 11 620 12(input): 10(ptr) FunctionParameter 621 14: Label 622 46: 9(fvec4) Load 12(input) 623 48: 9(fvec4) CompositeConstruct 47 47 47 47 624 49: 9(fvec4) FAdd 46 48 625 Store 12(input) 49 626 Branch 50 627 50: Label 628 LoopMerge 52 53 None 629 Branch 51 630 51: Label 631 Branch 53 632 53: Label 633 Branch 50 634 52: Label 635 Unreachable 636 FunctionEnd 637 16(f2(vf4;): 2 Function None 11 638 15(input): 10(ptr) FunctionParameter 639 17: Label 640 Branch 54 641 54: Label 642 LoopMerge 56 57 Unroll 643 Branch 58 644 58: Label 645 59: 9(fvec4) Load 15(input) 646 60: 9(fvec4) Load 15(input) 647 63: 62(bvec4) FUnordNotEqual 59 60 648 64: 61(bool) Any 63 649 BranchConditional 64 55 56 650 55: Label 651 Branch 57 652 57: Label 653 Branch 54 654 56: Label 655 Return 656 FunctionEnd 657 20(f3(vf4;): 8(float) Function None 18 658 19(input): 10(ptr) FunctionParameter 659 21: Label 660 Branch 65 661 65: Label 662 LoopMerge 67 68 None 663 Branch 69 664 69: Label 665 70: 9(fvec4) Load 19(input) 666 71: 9(fvec4) Load 19(input) 667 72: 62(bvec4) FUnordNotEqual 70 71 668 73: 61(bool) Any 72 669 BranchConditional 73 66 67 670 66: Label 671 74: 9(fvec4) Load 19(input) 672 75: 9(fvec4) FNegate 74 673 76: 8(float) CompositeExtract 75 0 674 ReturnValue 76 675 68: Label 676 Branch 65 677 67: Label 678 78: 8(float) Undef 679 ReturnValue 78 680 FunctionEnd 681 23(f4(vf4;): 8(float) Function None 18 682 22(input): 10(ptr) FunctionParameter 683 24: Label 684 79: 9(fvec4) Load 22(input) 685 80: 9(fvec4) CompositeConstruct 47 47 47 47 686 81: 9(fvec4) FSub 79 80 687 Store 22(input) 81 688 Branch 82 689 82: Label 690 LoopMerge 84 85 None 691 Branch 86 692 86: Label 693 87: 9(fvec4) Load 22(input) 694 88: 9(fvec4) Load 22(input) 695 89: 62(bvec4) FUnordNotEqual 87 88 696 90: 61(bool) Any 89 697 BranchConditional 90 83 84 698 83: Label 699 91: 9(fvec4) Load 22(input) 700 92: 9(fvec4) FNegate 91 701 93: 8(float) CompositeExtract 92 0 702 ReturnValue 93 703 85: Label 704 Branch 82 705 84: Label 706 99: 8(float) Undef 707 ReturnValue 99 708 FunctionEnd 709 26(f5(vf4;): 2 Function None 11 710 25(input): 10(ptr) FunctionParameter 711 27: Label 712 Branch 100 713 100: Label 714 LoopMerge 102 103 None 715 Branch 101 716 101: Label 717 106: 33(ptr) AccessChain 25(input) 105 718 107: 8(float) Load 106 719 108: 61(bool) FOrdGreaterThan 107 95 720 SelectionMerge 110 None 721 BranchConditional 108 109 110 722 109: Label 723 Branch 102 724 110: Label 725 Branch 103 726 103: Label 727 Branch 100 728 102: Label 729 Return 730 FunctionEnd 731 29(f6(vf4;): 2 Function None 11 732 28(input): 10(ptr) FunctionParameter 733 30: Label 734 Branch 112 735 112: Label 736 LoopMerge 114 115 None 737 Branch 113 738 113: Label 739 116: 33(ptr) AccessChain 28(input) 105 740 117: 8(float) Load 116 741 118: 61(bool) FOrdGreaterThan 117 95 742 SelectionMerge 120 None 743 BranchConditional 118 119 120 744 119: Label 745 Branch 115 746 120: Label 747 Branch 115 748 115: Label 749 Branch 112 750 114: Label 751 Unreachable 752 FunctionEnd 753 31(f99(): 2 Function None 3 754 32: Label 755 124(first): 123(ptr) Variable Function 756 126(second): 123(ptr) Variable Function 757 Store 124(first) 125 758 Store 126(second) 127 759 Branch 128 760 128: Label 761 LoopMerge 130 131 None 762 Branch 129 763 129: Label 764 132: 122(int) Load 124(first) 765 133: 122(int) Load 126(second) 766 134: 122(int) IAdd 132 133 767 Branch 131 768 131: Label 769 Branch 128 770 130: Label 771 Unreachable 772 FunctionEnd 773 36(f100(f1;): 2 Function None 34 774 35(ii): 33(ptr) FunctionParameter 775 37: Label 776 135: 8(float) Load 35(ii) 777 136: 8(float) FSub 135 47 778 Store 35(ii) 136 779 137: 8(float) Load 35(ii) 780 138: 8(float) FSub 137 47 781 Store 35(ii) 138 782 139: 8(float) Load 35(ii) 783 140: 8(float) FSub 139 47 784 Store 35(ii) 140 785 Branch 141 786 141: Label 787 LoopMerge 143 144 None 788 Branch 142 789 142: Label 790 Branch 144 791 144: Label 792 Branch 141 793 143: Label 794 Unreachable 795 FunctionEnd 79640(@PixelShaderFunction(vf4;): 9(fvec4) Function None 38 797 39(input): 10(ptr) FunctionParameter 798 41: Label 799 146(param): 10(ptr) Variable Function 800 149(param): 10(ptr) Variable Function 801 152(param): 10(ptr) Variable Function 802 155(param): 10(ptr) Variable Function 803 158(param): 10(ptr) Variable Function 804 161(param): 10(ptr) Variable Function 805 164(ii): 123(ptr) Variable Function 806 182(ii): 33(ptr) Variable Function 807 186(i): 123(ptr) Variable Function 808 187(count): 123(ptr) Variable Function 809 200(first): 33(ptr) Variable Function 810 211(second): 210(ptr) Variable Function 811 219(third): 33(ptr) Variable Function 812 225(param): 33(ptr) Variable Function 813 145: 2 FunctionCall 6(f0() 814 147: 9(fvec4) Load 39(input) 815 Store 146(param) 147 816 148: 2 FunctionCall 13(f1(vf4;) 146(param) 817 150: 9(fvec4) Load 39(input) 818 Store 149(param) 150 819 151: 2 FunctionCall 16(f2(vf4;) 149(param) 820 153: 9(fvec4) Load 39(input) 821 Store 152(param) 153 822 154: 8(float) FunctionCall 20(f3(vf4;) 152(param) 823 156: 9(fvec4) Load 39(input) 824 Store 155(param) 156 825 157: 8(float) FunctionCall 23(f4(vf4;) 155(param) 826 159: 9(fvec4) Load 39(input) 827 Store 158(param) 159 828 160: 2 FunctionCall 26(f5(vf4;) 158(param) 829 162: 9(fvec4) Load 39(input) 830 Store 161(param) 162 831 163: 2 FunctionCall 29(f6(vf4;) 161(param) 832 Store 164(ii) 165 833 Branch 166 834 166: Label 835 LoopMerge 168 169 None 836 Branch 170 837 170: Label 838 171: 122(int) Load 164(ii) 839 173: 61(bool) SLessThan 171 172 840 BranchConditional 173 167 168 841 167: Label 842 174: 122(int) Load 164(ii) 843 176: 61(bool) IEqual 174 175 844 SelectionMerge 178 None 845 BranchConditional 176 177 178 846 177: Label 847 Branch 169 848 178: Label 849 Branch 169 850 169: Label 851 180: 122(int) Load 164(ii) 852 181: 122(int) IAdd 180 127 853 Store 164(ii) 181 854 Branch 166 855 168: Label 856 183: 8(float) Load 182(ii) 857 184: 8(float) FSub 183 47 858 Store 182(ii) 184 859 185: 2 FunctionCall 31(f99() 860 Store 186(i) 125 861 188: 8(float) Load 182(ii) 862 189: 122(int) ConvertFToS 188 863 Store 187(count) 189 864 Branch 190 865 190: Label 866 LoopMerge 192 193 None 867 Branch 194 868 194: Label 869 195: 122(int) Load 186(i) 870 196: 122(int) Load 187(count) 871 197: 61(bool) SLessThan 195 196 872 BranchConditional 197 191 192 873 191: Label 874 Branch 193 875 193: Label 876 198: 122(int) Load 186(i) 877 199: 122(int) IAdd 198 127 878 Store 186(i) 199 879 Branch 190 880 192: Label 881 Store 200(first) 201 882 Branch 202 883 202: Label 884 LoopMerge 204 205 None 885 Branch 206 886 206: Label 887 207: 8(float) Load 200(first) 888 212: 33(ptr) AccessChain 211(second) 125 889 213: 8(float) Load 212 890 214: 61(bool) FOrdLessThan 207 213 891 BranchConditional 214 203 204 892 203: Label 893 215: 8(float) Load 200(first) 894 216: 33(ptr) AccessChain 211(second) 127 895 217: 8(float) Load 216 896 218: 8(float) FAdd 215 217 897 220: 8(float) Load 219(third) 898 221: 8(float) FAdd 218 220 899 Branch 205 900 205: Label 901 222: 33(ptr) AccessChain 211(second) 127 902 223: 8(float) Load 222 903 224: 8(float) FAdd 223 47 904 Store 222 224 905 Branch 202 906 204: Label 907 226: 8(float) Load 182(ii) 908 Store 225(param) 226 909 227: 2 FunctionCall 36(f100(f1;) 225(param) 910 228: 9(fvec4) Load 39(input) 911 ReturnValue 228 912 FunctionEnd 913