1hlsl.hull.6.tesc
2Shader version: 500
3vertices = 1
4vertex spacing = fractional_even_spacing
5triangle order = ccw
60:? Sequence
70:17  Function Definition: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges})
80:17    Function Parameters:
90:17      'p' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
100:17      'BlockID' ( in uint)
110:17      'Inside' ( out 2-element array of float)
120:?     Sequence
130:19      move second child to first child ( temp float)
140:19        direct index ( temp float)
150:19          Edges: direct index for structure ( temp 4-element array of float)
160:19            'Factors' ( temp structure{ temp 4-element array of float Edges})
170:19            Constant:
180:19              0 (const int)
190:19          Constant:
200:19            0 (const int)
210:19        Constant:
220:19          2.500000
230:20      move second child to first child ( temp float)
240:20        direct index ( temp float)
250:20          Edges: direct index for structure ( temp 4-element array of float)
260:20            'Factors' ( temp structure{ temp 4-element array of float Edges})
270:20            Constant:
280:20              0 (const int)
290:20          Constant:
300:20            1 (const int)
310:20        Constant:
320:20          4.250000
330:21      move second child to first child ( temp float)
340:21        direct index ( temp float)
350:21          Edges: direct index for structure ( temp 4-element array of float)
360:21            'Factors' ( temp structure{ temp 4-element array of float Edges})
370:21            Constant:
380:21              0 (const int)
390:21          Constant:
400:21            2 (const int)
410:21        Constant:
420:21          5.750000
430:22      move second child to first child ( temp float)
440:22        direct index ( temp float)
450:22          Edges: direct index for structure ( temp 4-element array of float)
460:22            'Factors' ( temp structure{ temp 4-element array of float Edges})
470:22            Constant:
480:22              0 (const int)
490:22          Constant:
500:22            3 (const int)
510:22        Constant:
520:22          7.500000
530:24      move second child to first child ( temp float)
540:24        direct index ( temp float)
550:24          'Inside' ( out 2-element array of float)
560:24          Constant:
570:24            0 (const int)
580:24        Constant:
590:24          6.750000
600:25      move second child to first child ( temp float)
610:25        direct index ( temp float)
620:25          'Inside' ( out 2-element array of float)
630:25          Constant:
640:25            1 (const int)
650:25        Constant:
660:25          7.250000
670:27      Branch: Return with expression
680:27        'Factors' ( temp structure{ temp 4-element array of float Edges})
690:42  Function Definition: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
700:42    Function Parameters:
710:42      'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
720:42      'uCPID' ( in uint)
730:?     Sequence
740:44      move second child to first child ( temp 4-component vector of float)
750:44        Position: direct index for structure ( temp 4-component vector of float)
760:44          'Out' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
770:44          Constant:
780:44            0 (const int)
790:44        f4Position: direct index for structure ( temp 4-component vector of float)
800:44          indirect index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
810:44            'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
820:44            'uCPID' ( in uint)
830:44          Constant:
840:44            0 (const int)
850:45      move second child to first child ( temp 3-component vector of float)
860:45        Color: direct index for structure ( temp 3-component vector of float)
870:45          'Out' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
880:45          Constant:
890:45            1 (const int)
900:45        f3Color: direct index for structure ( temp 3-component vector of float)
910:45          indirect index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
920:45            'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
930:45            'uCPID' ( in uint)
940:45          Constant:
950:45            1 (const int)
960:46      Branch: Return with expression
970:46        'Out' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
980:42  Function Definition: main( ( temp void)
990:42    Function Parameters:
1000:?     Sequence
1010:42      Sequence
1020:42        move second child to first child ( temp 4-component vector of float)
1030:42          f4Position: direct index for structure ( temp 4-component vector of float)
1040:42            direct index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
1050:?               'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
1060:42              Constant:
1070:42                0 (const int)
1080:42            Constant:
1090:42              0 (const int)
1100:42          direct index ( in 4-component vector of float Position)
1110:?             'inputPatch.f4Position' ( in 1-element array of 4-component vector of float Position)
1120:42            Constant:
1130:42              0 (const int)
1140:42        move second child to first child ( temp 3-component vector of float)
1150:42          f3Color: direct index for structure ( temp 3-component vector of float)
1160:42            direct index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
1170:?               'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
1180:42              Constant:
1190:42                0 (const int)
1200:42            Constant:
1210:42              1 (const int)
1220:42          direct index (layout( location=0) in 3-component vector of float)
1230:?             'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float)
1240:42            Constant:
1250:42              0 (const int)
1260:42      move second child to first child ( temp uint)
1270:?         'uCPID' ( temp uint)
1280:?         'uCPID' ( in uint InvocationID)
1290:42      Sequence
1300:42        move second child to first child ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
1310:42          'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
1320:42          Function Call: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
1330:?             'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
1340:?             'uCPID' ( temp uint)
1350:42        move second child to first child ( temp 4-component vector of float)
1360:42          indirect index (layout( location=0) out 4-component vector of float)
1370:?             '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float)
1380:?             'uCPID' ( in uint InvocationID)
1390:42          Position: direct index for structure ( temp 4-component vector of float)
1400:42            'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
1410:42            Constant:
1420:42              0 (const int)
1430:42        move second child to first child ( temp 3-component vector of float)
1440:42          indirect index (layout( location=1) out 3-component vector of float)
1450:?             '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float)
1460:?             'uCPID' ( in uint InvocationID)
1470:42          Color: direct index for structure ( temp 3-component vector of float)
1480:42            'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
1490:42            Constant:
1500:42              1 (const int)
1510:?       Barrier ( temp void)
1520:?       Test condition and select ( temp void)
1530:?         Condition
1540:?         Compare Equal ( temp bool)
1550:?           'uCPID' ( in uint InvocationID)
1560:?           Constant:
1570:?             0 (const int)
1580:?         true case
1590:?         Sequence
1600:?           move second child to first child ( temp structure{ temp 4-element array of float Edges})
1610:?             '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
1620:?             Function Call: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges})
1630:?               'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
1640:?               'BlockID' ( in uint PrimitiveID)
1650:?               'Inside' ( patch out 2-element array of float TessLevelInner)
1660:?           Sequence
1670:?             move second child to first child ( temp float)
1680:?               direct index ( patch out float TessLevelOuter)
1690:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
1700:?                 Constant:
1710:?                   0 (const int)
1720:?               direct index ( temp float)
1730:?                 Edges: direct index for structure ( temp 4-element array of float)
1740:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
1750:?                   Constant:
1760:?                     0 (const int)
1770:?                 Constant:
1780:?                   0 (const int)
1790:?             move second child to first child ( temp float)
1800:?               direct index ( patch out float TessLevelOuter)
1810:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
1820:?                 Constant:
1830:?                   1 (const int)
1840:?               direct index ( temp float)
1850:?                 Edges: direct index for structure ( temp 4-element array of float)
1860:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
1870:?                   Constant:
1880:?                     0 (const int)
1890:?                 Constant:
1900:?                   1 (const int)
1910:?             move second child to first child ( temp float)
1920:?               direct index ( patch out float TessLevelOuter)
1930:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
1940:?                 Constant:
1950:?                   2 (const int)
1960:?               direct index ( temp float)
1970:?                 Edges: direct index for structure ( temp 4-element array of float)
1980:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
1990:?                   Constant:
2000:?                     0 (const int)
2010:?                 Constant:
2020:?                   2 (const int)
2030:?             move second child to first child ( temp float)
2040:?               direct index ( patch out float TessLevelOuter)
2050:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
2060:?                 Constant:
2070:?                   3 (const int)
2080:?               direct index ( temp float)
2090:?                 Edges: direct index for structure ( temp 4-element array of float)
2100:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
2110:?                   Constant:
2120:?                     0 (const int)
2130:?                 Constant:
2140:?                   3 (const int)
2150:?   Linker Objects
2160:?     '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float)
2170:?     '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float)
2180:?     'inputPatch.f4Position' ( in 1-element array of 4-component vector of float Position)
2190:?     'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float)
2200:?     'uCPID' ( in uint InvocationID)
2210:?     'BlockID' ( in uint PrimitiveID)
2220:?     'Inside' ( patch out 2-element array of float TessLevelInner)
2230:?     '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
224
225
226Linked tessellation control stage:
227
228
229Shader version: 500
230vertices = 1
231vertex spacing = fractional_even_spacing
232triangle order = ccw
2330:? Sequence
2340:17  Function Definition: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges})
2350:17    Function Parameters:
2360:17      'p' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
2370:17      'BlockID' ( in uint)
2380:17      'Inside' ( out 2-element array of float)
2390:?     Sequence
2400:19      move second child to first child ( temp float)
2410:19        direct index ( temp float)
2420:19          Edges: direct index for structure ( temp 4-element array of float)
2430:19            'Factors' ( temp structure{ temp 4-element array of float Edges})
2440:19            Constant:
2450:19              0 (const int)
2460:19          Constant:
2470:19            0 (const int)
2480:19        Constant:
2490:19          2.500000
2500:20      move second child to first child ( temp float)
2510:20        direct index ( temp float)
2520:20          Edges: direct index for structure ( temp 4-element array of float)
2530:20            'Factors' ( temp structure{ temp 4-element array of float Edges})
2540:20            Constant:
2550:20              0 (const int)
2560:20          Constant:
2570:20            1 (const int)
2580:20        Constant:
2590:20          4.250000
2600:21      move second child to first child ( temp float)
2610:21        direct index ( temp float)
2620:21          Edges: direct index for structure ( temp 4-element array of float)
2630:21            'Factors' ( temp structure{ temp 4-element array of float Edges})
2640:21            Constant:
2650:21              0 (const int)
2660:21          Constant:
2670:21            2 (const int)
2680:21        Constant:
2690:21          5.750000
2700:22      move second child to first child ( temp float)
2710:22        direct index ( temp float)
2720:22          Edges: direct index for structure ( temp 4-element array of float)
2730:22            'Factors' ( temp structure{ temp 4-element array of float Edges})
2740:22            Constant:
2750:22              0 (const int)
2760:22          Constant:
2770:22            3 (const int)
2780:22        Constant:
2790:22          7.500000
2800:24      move second child to first child ( temp float)
2810:24        direct index ( temp float)
2820:24          'Inside' ( out 2-element array of float)
2830:24          Constant:
2840:24            0 (const int)
2850:24        Constant:
2860:24          6.750000
2870:25      move second child to first child ( temp float)
2880:25        direct index ( temp float)
2890:25          'Inside' ( out 2-element array of float)
2900:25          Constant:
2910:25            1 (const int)
2920:25        Constant:
2930:25          7.250000
2940:27      Branch: Return with expression
2950:27        'Factors' ( temp structure{ temp 4-element array of float Edges})
2960:42  Function Definition: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
2970:42    Function Parameters:
2980:42      'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
2990:42      'uCPID' ( in uint)
3000:?     Sequence
3010:44      move second child to first child ( temp 4-component vector of float)
3020:44        Position: direct index for structure ( temp 4-component vector of float)
3030:44          'Out' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3040:44          Constant:
3050:44            0 (const int)
3060:44        f4Position: direct index for structure ( temp 4-component vector of float)
3070:44          indirect index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3080:44            'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3090:44            'uCPID' ( in uint)
3100:44          Constant:
3110:44            0 (const int)
3120:45      move second child to first child ( temp 3-component vector of float)
3130:45        Color: direct index for structure ( temp 3-component vector of float)
3140:45          'Out' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3150:45          Constant:
3160:45            1 (const int)
3170:45        f3Color: direct index for structure ( temp 3-component vector of float)
3180:45          indirect index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3190:45            'inputPatch' ( in 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3200:45            'uCPID' ( in uint)
3210:45          Constant:
3220:45            1 (const int)
3230:46      Branch: Return with expression
3240:46        'Out' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3250:42  Function Definition: main( ( temp void)
3260:42    Function Parameters:
3270:?     Sequence
3280:42      Sequence
3290:42        move second child to first child ( temp 4-component vector of float)
3300:42          f4Position: direct index for structure ( temp 4-component vector of float)
3310:42            direct index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3320:?               'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3330:42              Constant:
3340:42                0 (const int)
3350:42            Constant:
3360:42              0 (const int)
3370:42          direct index ( in 4-component vector of float Position)
3380:?             'inputPatch.f4Position' ( in 1-element array of 4-component vector of float Position)
3390:42            Constant:
3400:42              0 (const int)
3410:42        move second child to first child ( temp 3-component vector of float)
3420:42          f3Color: direct index for structure ( temp 3-component vector of float)
3430:42            direct index ( temp structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3440:?               'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3450:42              Constant:
3460:42                0 (const int)
3470:42            Constant:
3480:42              1 (const int)
3490:42          direct index (layout( location=0) in 3-component vector of float)
3500:?             'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float)
3510:42            Constant:
3520:42              0 (const int)
3530:42      move second child to first child ( temp uint)
3540:?         'uCPID' ( temp uint)
3550:?         'uCPID' ( in uint InvocationID)
3560:42      Sequence
3570:42        move second child to first child ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3580:42          'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3590:42          Function Call: @main(struct-VSOutput-vf4-vf31[1];u1; ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3600:?             'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3610:?             'uCPID' ( temp uint)
3620:42        move second child to first child ( temp 4-component vector of float)
3630:42          indirect index (layout( location=0) out 4-component vector of float)
3640:?             '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float)
3650:?             'uCPID' ( in uint InvocationID)
3660:42          Position: direct index for structure ( temp 4-component vector of float)
3670:42            'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3680:42            Constant:
3690:42              0 (const int)
3700:42        move second child to first child ( temp 3-component vector of float)
3710:42          indirect index (layout( location=1) out 3-component vector of float)
3720:?             '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float)
3730:?             'uCPID' ( in uint InvocationID)
3740:42          Color: direct index for structure ( temp 3-component vector of float)
3750:42            'flattenTemp' ( temp structure{ temp 4-component vector of float Position,  temp 3-component vector of float Color})
3760:42            Constant:
3770:42              1 (const int)
3780:?       Barrier ( temp void)
3790:?       Test condition and select ( temp void)
3800:?         Condition
3810:?         Compare Equal ( temp bool)
3820:?           'uCPID' ( in uint InvocationID)
3830:?           Constant:
3840:?             0 (const int)
3850:?         true case
3860:?         Sequence
3870:?           move second child to first child ( temp structure{ temp 4-element array of float Edges})
3880:?             '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
3890:?             Function Call: ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2]; ( temp structure{ temp 4-element array of float Edges})
3900:?               'inputPatch' ( temp 1-element array of structure{ temp 4-component vector of float f4Position,  temp 3-component vector of float f3Color})
3910:?               'BlockID' ( in uint PrimitiveID)
3920:?               'Inside' ( patch out 2-element array of float TessLevelInner)
3930:?           Sequence
3940:?             move second child to first child ( temp float)
3950:?               direct index ( patch out float TessLevelOuter)
3960:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
3970:?                 Constant:
3980:?                   0 (const int)
3990:?               direct index ( temp float)
4000:?                 Edges: direct index for structure ( temp 4-element array of float)
4010:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
4020:?                   Constant:
4030:?                     0 (const int)
4040:?                 Constant:
4050:?                   0 (const int)
4060:?             move second child to first child ( temp float)
4070:?               direct index ( patch out float TessLevelOuter)
4080:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
4090:?                 Constant:
4100:?                   1 (const int)
4110:?               direct index ( temp float)
4120:?                 Edges: direct index for structure ( temp 4-element array of float)
4130:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
4140:?                   Constant:
4150:?                     0 (const int)
4160:?                 Constant:
4170:?                   1 (const int)
4180:?             move second child to first child ( temp float)
4190:?               direct index ( patch out float TessLevelOuter)
4200:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
4210:?                 Constant:
4220:?                   2 (const int)
4230:?               direct index ( temp float)
4240:?                 Edges: direct index for structure ( temp 4-element array of float)
4250:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
4260:?                   Constant:
4270:?                     0 (const int)
4280:?                 Constant:
4290:?                   2 (const int)
4300:?             move second child to first child ( temp float)
4310:?               direct index ( patch out float TessLevelOuter)
4320:?                 '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
4330:?                 Constant:
4340:?                   3 (const int)
4350:?               direct index ( temp float)
4360:?                 Edges: direct index for structure ( temp 4-element array of float)
4370:?                   '@patchConstantResult' ( temp structure{ temp 4-element array of float Edges})
4380:?                   Constant:
4390:?                     0 (const int)
4400:?                 Constant:
4410:?                   3 (const int)
4420:?   Linker Objects
4430:?     '@entryPointOutput.Position' (layout( location=0) out 1-element array of 4-component vector of float)
4440:?     '@entryPointOutput.Color' (layout( location=1) out 1-element array of 3-component vector of float)
4450:?     'inputPatch.f4Position' ( in 1-element array of 4-component vector of float Position)
4460:?     'inputPatch.f3Color' (layout( location=0) in 1-element array of 3-component vector of float)
4470:?     'uCPID' ( in uint InvocationID)
4480:?     'BlockID' ( in uint PrimitiveID)
4490:?     'Inside' ( patch out 2-element array of float TessLevelInner)
4500:?     '@patchConstantOutput.Edges' ( patch out 4-element array of float TessLevelOuter)
451
452// Module Version 10000
453// Generated by (magic number): 8000a
454// Id's are bound by 142
455
456                              Capability Tessellation
457               1:             ExtInstImport  "GLSL.std.450"
458                              MemoryModel Logical GLSL450
459                              EntryPoint TessellationControl 4  "main" 74 81 88 97 104 117 119 128
460                              ExecutionMode 4 OutputVertices 1
461                              ExecutionMode 4 Quads
462                              ExecutionMode 4 SpacingFractionalEven
463                              ExecutionMode 4 VertexOrderCcw
464                              Source HLSL 500
465                              Name 4  "main"
466                              Name 9  "VSOutput"
467                              MemberName 9(VSOutput) 0  "f4Position"
468                              MemberName 9(VSOutput) 1  "f3Color"
469                              Name 20  "HS_CONSTANT_DATA_OUTPUT"
470                              MemberName 20(HS_CONSTANT_DATA_OUTPUT) 0  "Edges"
471                              Name 25  "ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2];"
472                              Name 22  "p"
473                              Name 23  "BlockID"
474                              Name 24  "Inside"
475                              Name 27  "HSOutput"
476                              MemberName 27(HSOutput) 0  "Position"
477                              MemberName 27(HSOutput) 1  "Color"
478                              Name 31  "@main(struct-VSOutput-vf4-vf31[1];u1;"
479                              Name 29  "inputPatch"
480                              Name 30  "uCPID"
481                              Name 34  "Factors"
482                              Name 57  "Out"
483                              Name 71  "inputPatch"
484                              Name 74  "inputPatch.f4Position"
485                              Name 81  "inputPatch.f3Color"
486                              Name 86  "uCPID"
487                              Name 88  "uCPID"
488                              Name 90  "flattenTemp"
489                              Name 91  "param"
490                              Name 93  "param"
491                              Name 97  "@entryPointOutput.Position"
492                              Name 104  "@entryPointOutput.Color"
493                              Name 116  "@patchConstantResult"
494                              Name 117  "BlockID"
495                              Name 119  "Inside"
496                              Name 120  "param"
497                              Name 122  "param"
498                              Name 124  "param"
499                              Name 128  "@patchConstantOutput.Edges"
500                              Decorate 74(inputPatch.f4Position) BuiltIn Position
501                              Decorate 81(inputPatch.f3Color) Location 0
502                              Decorate 88(uCPID) BuiltIn InvocationId
503                              Decorate 97(@entryPointOutput.Position) Location 0
504                              Decorate 104(@entryPointOutput.Color) Location 1
505                              Decorate 117(BlockID) BuiltIn PrimitiveId
506                              Decorate 119(Inside) Patch
507                              Decorate 119(Inside) BuiltIn TessLevelInner
508                              Decorate 128(@patchConstantOutput.Edges) Patch
509                              Decorate 128(@patchConstantOutput.Edges) BuiltIn TessLevelOuter
510               2:             TypeVoid
511               3:             TypeFunction 2
512               6:             TypeFloat 32
513               7:             TypeVector 6(float) 4
514               8:             TypeVector 6(float) 3
515     9(VSOutput):             TypeStruct 7(fvec4) 8(fvec3)
516              10:             TypeInt 32 0
517              11:     10(int) Constant 1
518              12:             TypeArray 9(VSOutput) 11
519              13:             TypePointer Function 12
520              14:             TypePointer Function 10(int)
521              15:     10(int) Constant 2
522              16:             TypeArray 6(float) 15
523              17:             TypePointer Function 16
524              18:     10(int) Constant 4
525              19:             TypeArray 6(float) 18
52620(HS_CONSTANT_DATA_OUTPUT):             TypeStruct 19
527              21:             TypeFunction 20(HS_CONSTANT_DATA_OUTPUT) 13(ptr) 14(ptr) 17(ptr)
528    27(HSOutput):             TypeStruct 7(fvec4) 8(fvec3)
529              28:             TypeFunction 27(HSOutput) 13(ptr) 14(ptr)
530              33:             TypePointer Function 20(HS_CONSTANT_DATA_OUTPUT)
531              35:             TypeInt 32 1
532              36:     35(int) Constant 0
533              37:    6(float) Constant 1075838976
534              38:             TypePointer Function 6(float)
535              40:     35(int) Constant 1
536              41:    6(float) Constant 1082654720
537              43:     35(int) Constant 2
538              44:    6(float) Constant 1085800448
539              46:     35(int) Constant 3
540              47:    6(float) Constant 1089470464
541              49:    6(float) Constant 1087897600
542              51:    6(float) Constant 1088946176
543              56:             TypePointer Function 27(HSOutput)
544              59:             TypePointer Function 7(fvec4)
545              64:             TypePointer Function 8(fvec3)
546              72:             TypeArray 7(fvec4) 11
547              73:             TypePointer Input 72
54874(inputPatch.f4Position):     73(ptr) Variable Input
549              75:             TypePointer Input 7(fvec4)
550              79:             TypeArray 8(fvec3) 11
551              80:             TypePointer Input 79
55281(inputPatch.f3Color):     80(ptr) Variable Input
553              82:             TypePointer Input 8(fvec3)
554              87:             TypePointer Input 10(int)
555       88(uCPID):     87(ptr) Variable Input
556              96:             TypePointer Output 72
55797(@entryPointOutput.Position):     96(ptr) Variable Output
558             101:             TypePointer Output 7(fvec4)
559             103:             TypePointer Output 79
560104(@entryPointOutput.Color):    103(ptr) Variable Output
561             108:             TypePointer Output 8(fvec3)
562             110:     10(int) Constant 0
563             112:             TypeBool
564    117(BlockID):     87(ptr) Variable Input
565             118:             TypePointer Output 16
566     119(Inside):    118(ptr) Variable Output
567             127:             TypePointer Output 19
568128(@patchConstantOutput.Edges):    127(ptr) Variable Output
569             131:             TypePointer Output 6(float)
570         4(main):           2 Function None 3
571               5:             Label
572  71(inputPatch):     13(ptr) Variable Function
573       86(uCPID):     14(ptr) Variable Function
574 90(flattenTemp):     56(ptr) Variable Function
575       91(param):     13(ptr) Variable Function
576       93(param):     14(ptr) Variable Function
577116(@patchConstantResult):     33(ptr) Variable Function
578      120(param):     13(ptr) Variable Function
579      122(param):     14(ptr) Variable Function
580      124(param):     17(ptr) Variable Function
581              76:     75(ptr) AccessChain 74(inputPatch.f4Position) 36
582              77:    7(fvec4) Load 76
583              78:     59(ptr) AccessChain 71(inputPatch) 36 36
584                              Store 78 77
585              83:     82(ptr) AccessChain 81(inputPatch.f3Color) 36
586              84:    8(fvec3) Load 83
587              85:     64(ptr) AccessChain 71(inputPatch) 36 40
588                              Store 85 84
589              89:     10(int) Load 88(uCPID)
590                              Store 86(uCPID) 89
591              92:          12 Load 71(inputPatch)
592                              Store 91(param) 92
593              94:     10(int) Load 86(uCPID)
594                              Store 93(param) 94
595              95:27(HSOutput) FunctionCall 31(@main(struct-VSOutput-vf4-vf31[1];u1;) 91(param) 93(param)
596                              Store 90(flattenTemp) 95
597              98:     10(int) Load 88(uCPID)
598              99:     59(ptr) AccessChain 90(flattenTemp) 36
599             100:    7(fvec4) Load 99
600             102:    101(ptr) AccessChain 97(@entryPointOutput.Position) 98
601                              Store 102 100
602             105:     10(int) Load 88(uCPID)
603             106:     64(ptr) AccessChain 90(flattenTemp) 40
604             107:    8(fvec3) Load 106
605             109:    108(ptr) AccessChain 104(@entryPointOutput.Color) 105
606                              Store 109 107
607                              ControlBarrier 15 18 110
608             111:     10(int) Load 88(uCPID)
609             113:   112(bool) IEqual 111 36
610                              SelectionMerge 115 None
611                              BranchConditional 113 114 115
612             114:               Label
613             121:          12   Load 71(inputPatch)
614                                Store 120(param) 121
615             123:     10(int)   Load 117(BlockID)
616                                Store 122(param) 123
617             125:20(HS_CONSTANT_DATA_OUTPUT)   FunctionCall 25(ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2];) 120(param) 122(param) 124(param)
618             126:          16   Load 124(param)
619                                Store 119(Inside) 126
620                                Store 116(@patchConstantResult) 125
621             129:     38(ptr)   AccessChain 116(@patchConstantResult) 36 36
622             130:    6(float)   Load 129
623             132:    131(ptr)   AccessChain 128(@patchConstantOutput.Edges) 36
624                                Store 132 130
625             133:     38(ptr)   AccessChain 116(@patchConstantResult) 36 40
626             134:    6(float)   Load 133
627             135:    131(ptr)   AccessChain 128(@patchConstantOutput.Edges) 40
628                                Store 135 134
629             136:     38(ptr)   AccessChain 116(@patchConstantResult) 36 43
630             137:    6(float)   Load 136
631             138:    131(ptr)   AccessChain 128(@patchConstantOutput.Edges) 43
632                                Store 138 137
633             139:     38(ptr)   AccessChain 116(@patchConstantResult) 36 46
634             140:    6(float)   Load 139
635             141:    131(ptr)   AccessChain 128(@patchConstantOutput.Edges) 46
636                                Store 141 140
637                                Branch 115
638             115:             Label
639                              Return
640                              FunctionEnd
64125(ConstantHS(struct-VSOutput-vf4-vf31[1];u1;f1[2];):20(HS_CONSTANT_DATA_OUTPUT) Function None 21
642           22(p):     13(ptr) FunctionParameter
643     23(BlockID):     14(ptr) FunctionParameter
644      24(Inside):     17(ptr) FunctionParameter
645              26:             Label
646     34(Factors):     33(ptr) Variable Function
647              39:     38(ptr) AccessChain 34(Factors) 36 36
648                              Store 39 37
649              42:     38(ptr) AccessChain 34(Factors) 36 40
650                              Store 42 41
651              45:     38(ptr) AccessChain 34(Factors) 36 43
652                              Store 45 44
653              48:     38(ptr) AccessChain 34(Factors) 36 46
654                              Store 48 47
655              50:     38(ptr) AccessChain 24(Inside) 36
656                              Store 50 49
657              52:     38(ptr) AccessChain 24(Inside) 40
658                              Store 52 51
659              53:20(HS_CONSTANT_DATA_OUTPUT) Load 34(Factors)
660                              ReturnValue 53
661                              FunctionEnd
66231(@main(struct-VSOutput-vf4-vf31[1];u1;):27(HSOutput) Function None 28
663  29(inputPatch):     13(ptr) FunctionParameter
664       30(uCPID):     14(ptr) FunctionParameter
665              32:             Label
666         57(Out):     56(ptr) Variable Function
667              58:     10(int) Load 30(uCPID)
668              60:     59(ptr) AccessChain 29(inputPatch) 58 36
669              61:    7(fvec4) Load 60
670              62:     59(ptr) AccessChain 57(Out) 36
671                              Store 62 61
672              63:     10(int) Load 30(uCPID)
673              65:     64(ptr) AccessChain 29(inputPatch) 63 40
674              66:    8(fvec3) Load 65
675              67:     64(ptr) AccessChain 57(Out) 40
676                              Store 67 66
677              68:27(HSOutput) Load 57(Out)
678                              ReturnValue 68
679                              FunctionEnd
680