• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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