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