1hlsl.hull.ctrlpt-2.tesc
2Shader version: 500
3vertices = 3
4vertex spacing = fractional_odd_spacing
5triangle order = cw
60:? Sequence
70:28  Function Definition: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
80:28    Function Parameters:
90:28      'i' ( in 3-element array of structure{ temp 3-component vector of float val})
100:28      'cpid' ( in uint)
110:?     Sequence
120:29      val: direct index for structure ( temp 3-component vector of float)
130:29        direct index ( temp structure{ temp 3-component vector of float val})
140:29          'i' ( in 3-element array of structure{ temp 3-component vector of float val})
150:29          Constant:
160:29            0 (const int)
170:29        Constant:
180:29          0 (const int)
190:32      move second child to first child ( temp 3-component vector of float)
200:32        val: direct index for structure ( temp 3-component vector of float)
210:32          'o' ( temp structure{ temp 3-component vector of float val})
220:32          Constant:
230:32            0 (const int)
240:32        Construct vec3 ( temp 3-component vector of float)
250:32          Convert uint to float ( temp float)
260:32            'cpid' ( in uint)
270:33      Branch: Return with expression
280:33        'o' ( temp structure{ temp 3-component vector of float val})
290:28  Function Definition: main( ( temp void)
300:28    Function Parameters:
310:?     Sequence
320:28      move second child to first child ( temp 3-element array of structure{ temp 3-component vector of float val})
330:?         'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
340:?         'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val})
350:28      move second child to first child ( temp uint)
360:?         'cpid' ( temp uint)
370:?         'cpid' ( in uint InvocationID)
380:28      move second child to first child ( temp structure{ temp 3-component vector of float val})
390:28        indirect index (layout( location=0) out structure{ temp 3-component vector of float val})
400:?           '@entryPointOutput' (layout( location=0) out 3-element array of structure{ temp 3-component vector of float val})
410:?           'cpid' ( in uint InvocationID)
420:28        Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
430:?           'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
440:?           'cpid' ( temp uint)
450:?       Barrier ( temp void)
460:?       Test condition and select ( temp void)
470:?         Condition
480:?         Compare Equal ( temp bool)
490:?           'cpid' ( in uint InvocationID)
500:?           Constant:
510:?             0 (const int)
520:?         true case
530:?         Sequence
540:?           move second child to first child ( temp structure{ temp 3-component vector of float val})
550:?             direct index ( temp structure{ temp 3-component vector of float val})
560:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
570:?               Constant:
580:?                 0 (const int)
590:?             Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
600:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
610:?               Constant:
620:?                 0 (const uint)
630:?           move second child to first child ( temp structure{ temp 3-component vector of float val})
640:?             direct index ( temp structure{ temp 3-component vector of float val})
650:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
660:?               Constant:
670:?                 1 (const int)
680:?             Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
690:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
700:?               Constant:
710:?                 1 (const uint)
720:?           move second child to first child ( temp structure{ temp 3-component vector of float val})
730:?             direct index ( temp structure{ temp 3-component vector of float val})
740:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
750:?               Constant:
760:?                 2 (const int)
770:?             Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
780:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
790:?               Constant:
800:?                 2 (const uint)
810:?           move second child to first child ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
820:?             '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
830:?             Function Call: PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
840:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
850:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
860:?           Sequence
870:?             move second child to first child ( temp float)
880:?               direct index ( patch out float TessLevelOuter)
890:?                 '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
900:?                 Constant:
910:?                   0 (const int)
920:?               direct index ( temp float)
930:?                 tfactor: direct index for structure ( temp 3-element array of float)
940:?                   '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
950:?                   Constant:
960:?                     0 (const int)
970:?                 Constant:
980:?                   0 (const int)
990:?             move second child to first child ( temp float)
1000:?               direct index ( patch out float TessLevelOuter)
1010:?                 '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
1020:?                 Constant:
1030:?                   1 (const int)
1040:?               direct index ( temp float)
1050:?                 tfactor: direct index for structure ( temp 3-element array of float)
1060:?                   '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1070:?                   Constant:
1080:?                     0 (const int)
1090:?                 Constant:
1100:?                   1 (const int)
1110:?             move second child to first child ( temp float)
1120:?               direct index ( patch out float TessLevelOuter)
1130:?                 '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
1140:?                 Constant:
1150:?                   2 (const int)
1160:?               direct index ( temp float)
1170:?                 tfactor: direct index for structure ( temp 3-element array of float)
1180:?                   '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1190:?                   Constant:
1200:?                     0 (const int)
1210:?                 Constant:
1220:?                   2 (const int)
1230:?             move second child to first child ( temp float)
1240:?               direct index ( patch out float TessLevelInner)
1250:?                 '@patchConstantOutput.flInFactor' ( patch out 2-element array of float TessLevelInner)
1260:?                 Constant:
1270:?                   0 (const int)
1280:?               flInFactor: direct index for structure ( temp float)
1290:?                 '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1300:?                 Constant:
1310:?                   1 (const int)
1320:38  Function Definition: PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1330:38    Function Parameters:
1340:38      'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
1350:38      'pcf_in' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
1360:?     Sequence
1370:41      move second child to first child ( temp float)
1380:41        direct index ( temp float)
1390:41          tfactor: direct index for structure ( temp 3-element array of float)
1400:41            'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1410:41            Constant:
1420:41              0 (const int)
1430:41          Constant:
1440:41            0 (const int)
1450:41        direct index ( temp float)
1460:41          val: direct index for structure ( temp 3-component vector of float)
1470:41            direct index ( temp structure{ temp 3-component vector of float val})
1480:41              'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
1490:41              Constant:
1500:41                0 (const int)
1510:41            Constant:
1520:41              0 (const int)
1530:41          Constant:
1540:41            0 (const int)
1550:42      move second child to first child ( temp float)
1560:42        direct index ( temp float)
1570:42          tfactor: direct index for structure ( temp 3-element array of float)
1580:42            'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1590:42            Constant:
1600:42              0 (const int)
1610:42          Constant:
1620:42            1 (const int)
1630:42        direct index ( temp float)
1640:42          val: direct index for structure ( temp 3-component vector of float)
1650:42            direct index ( temp structure{ temp 3-component vector of float val})
1660:42              'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
1670:42              Constant:
1680:42                1 (const int)
1690:42            Constant:
1700:42              0 (const int)
1710:42          Constant:
1720:42            0 (const int)
1730:43      move second child to first child ( temp float)
1740:43        direct index ( temp float)
1750:43          tfactor: direct index for structure ( temp 3-element array of float)
1760:43            'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1770:43            Constant:
1780:43              0 (const int)
1790:43          Constant:
1800:43            2 (const int)
1810:43        direct index ( temp float)
1820:43          val: direct index for structure ( temp 3-component vector of float)
1830:43            direct index ( temp structure{ temp 3-component vector of float val})
1840:43              'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
1850:43              Constant:
1860:43                2 (const int)
1870:43            Constant:
1880:43              0 (const int)
1890:43          Constant:
1900:43            0 (const int)
1910:44      move second child to first child ( temp float)
1920:44        flInFactor: direct index for structure ( temp float)
1930:44          'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
1940:44          Constant:
1950:44            1 (const int)
1960:44        Constant:
1970:44          4.000000
1980:46      Branch: Return with expression
1990:46        'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
2000:?   Linker Objects
2010:?     '@entryPointOutput' (layout( location=0) out 3-element array of structure{ temp 3-component vector of float val})
2020:?     'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val})
2030:?     'cpid' ( in uint InvocationID)
2040:?     '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
2050:?     '@patchConstantOutput.flInFactor' ( patch out 2-element array of float TessLevelInner)
206
207
208Linked tessellation control stage:
209
210
211Shader version: 500
212vertices = 3
213vertex spacing = fractional_odd_spacing
214triangle order = cw
2150:? Sequence
2160:28  Function Definition: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
2170:28    Function Parameters:
2180:28      'i' ( in 3-element array of structure{ temp 3-component vector of float val})
2190:28      'cpid' ( in uint)
2200:?     Sequence
2210:29      val: direct index for structure ( temp 3-component vector of float)
2220:29        direct index ( temp structure{ temp 3-component vector of float val})
2230:29          'i' ( in 3-element array of structure{ temp 3-component vector of float val})
2240:29          Constant:
2250:29            0 (const int)
2260:29        Constant:
2270:29          0 (const int)
2280:32      move second child to first child ( temp 3-component vector of float)
2290:32        val: direct index for structure ( temp 3-component vector of float)
2300:32          'o' ( temp structure{ temp 3-component vector of float val})
2310:32          Constant:
2320:32            0 (const int)
2330:32        Construct vec3 ( temp 3-component vector of float)
2340:32          Convert uint to float ( temp float)
2350:32            'cpid' ( in uint)
2360:33      Branch: Return with expression
2370:33        'o' ( temp structure{ temp 3-component vector of float val})
2380:28  Function Definition: main( ( temp void)
2390:28    Function Parameters:
2400:?     Sequence
2410:28      move second child to first child ( temp 3-element array of structure{ temp 3-component vector of float val})
2420:?         'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
2430:?         'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val})
2440:28      move second child to first child ( temp uint)
2450:?         'cpid' ( temp uint)
2460:?         'cpid' ( in uint InvocationID)
2470:28      move second child to first child ( temp structure{ temp 3-component vector of float val})
2480:28        indirect index (layout( location=0) out structure{ temp 3-component vector of float val})
2490:?           '@entryPointOutput' (layout( location=0) out 3-element array of structure{ temp 3-component vector of float val})
2500:?           'cpid' ( in uint InvocationID)
2510:28        Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
2520:?           'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
2530:?           'cpid' ( temp uint)
2540:?       Barrier ( temp void)
2550:?       Test condition and select ( temp void)
2560:?         Condition
2570:?         Compare Equal ( temp bool)
2580:?           'cpid' ( in uint InvocationID)
2590:?           Constant:
2600:?             0 (const int)
2610:?         true case
2620:?         Sequence
2630:?           move second child to first child ( temp structure{ temp 3-component vector of float val})
2640:?             direct index ( temp structure{ temp 3-component vector of float val})
2650:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
2660:?               Constant:
2670:?                 0 (const int)
2680:?             Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
2690:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
2700:?               Constant:
2710:?                 0 (const uint)
2720:?           move second child to first child ( temp structure{ temp 3-component vector of float val})
2730:?             direct index ( temp structure{ temp 3-component vector of float val})
2740:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
2750:?               Constant:
2760:?                 1 (const int)
2770:?             Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
2780:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
2790:?               Constant:
2800:?                 1 (const uint)
2810:?           move second child to first child ( temp structure{ temp 3-component vector of float val})
2820:?             direct index ( temp structure{ temp 3-component vector of float val})
2830:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
2840:?               Constant:
2850:?                 2 (const int)
2860:?             Function Call: @main(struct-hs_in_t-vf31[3];u1; ( temp structure{ temp 3-component vector of float val})
2870:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
2880:?               Constant:
2890:?                 2 (const uint)
2900:?           move second child to first child ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
2910:?             '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
2920:?             Function Call: PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
2930:?               'pcf_out' ( temp 3-element array of structure{ temp 3-component vector of float val})
2940:?               'i' ( temp 3-element array of structure{ temp 3-component vector of float val})
2950:?           Sequence
2960:?             move second child to first child ( temp float)
2970:?               direct index ( patch out float TessLevelOuter)
2980:?                 '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
2990:?                 Constant:
3000:?                   0 (const int)
3010:?               direct index ( temp float)
3020:?                 tfactor: direct index for structure ( temp 3-element array of float)
3030:?                   '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3040:?                   Constant:
3050:?                     0 (const int)
3060:?                 Constant:
3070:?                   0 (const int)
3080:?             move second child to first child ( temp float)
3090:?               direct index ( patch out float TessLevelOuter)
3100:?                 '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
3110:?                 Constant:
3120:?                   1 (const int)
3130:?               direct index ( temp float)
3140:?                 tfactor: direct index for structure ( temp 3-element array of float)
3150:?                   '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3160:?                   Constant:
3170:?                     0 (const int)
3180:?                 Constant:
3190:?                   1 (const int)
3200:?             move second child to first child ( temp float)
3210:?               direct index ( patch out float TessLevelOuter)
3220:?                 '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
3230:?                 Constant:
3240:?                   2 (const int)
3250:?               direct index ( temp float)
3260:?                 tfactor: direct index for structure ( temp 3-element array of float)
3270:?                   '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3280:?                   Constant:
3290:?                     0 (const int)
3300:?                 Constant:
3310:?                   2 (const int)
3320:?             move second child to first child ( temp float)
3330:?               direct index ( patch out float TessLevelInner)
3340:?                 '@patchConstantOutput.flInFactor' ( patch out 2-element array of float TessLevelInner)
3350:?                 Constant:
3360:?                   0 (const int)
3370:?               flInFactor: direct index for structure ( temp float)
3380:?                 '@patchConstantResult' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3390:?                 Constant:
3400:?                   1 (const int)
3410:38  Function Definition: PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3]; ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3420:38    Function Parameters:
3430:38      'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
3440:38      'pcf_in' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
3450:?     Sequence
3460:41      move second child to first child ( temp float)
3470:41        direct index ( temp float)
3480:41          tfactor: direct index for structure ( temp 3-element array of float)
3490:41            'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3500:41            Constant:
3510:41              0 (const int)
3520:41          Constant:
3530:41            0 (const int)
3540:41        direct index ( temp float)
3550:41          val: direct index for structure ( temp 3-component vector of float)
3560:41            direct index ( temp structure{ temp 3-component vector of float val})
3570:41              'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
3580:41              Constant:
3590:41                0 (const int)
3600:41            Constant:
3610:41              0 (const int)
3620:41          Constant:
3630:41            0 (const int)
3640:42      move second child to first child ( temp float)
3650:42        direct index ( temp float)
3660:42          tfactor: direct index for structure ( temp 3-element array of float)
3670:42            'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3680:42            Constant:
3690:42              0 (const int)
3700:42          Constant:
3710:42            1 (const int)
3720:42        direct index ( temp float)
3730:42          val: direct index for structure ( temp 3-component vector of float)
3740:42            direct index ( temp structure{ temp 3-component vector of float val})
3750:42              'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
3760:42              Constant:
3770:42                1 (const int)
3780:42            Constant:
3790:42              0 (const int)
3800:42          Constant:
3810:42            0 (const int)
3820:43      move second child to first child ( temp float)
3830:43        direct index ( temp float)
3840:43          tfactor: direct index for structure ( temp 3-element array of float)
3850:43            'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
3860:43            Constant:
3870:43              0 (const int)
3880:43          Constant:
3890:43            2 (const int)
3900:43        direct index ( temp float)
3910:43          val: direct index for structure ( temp 3-component vector of float)
3920:43            direct index ( temp structure{ temp 3-component vector of float val})
3930:43              'pcf_out' ( const (read only) 3-element array of structure{ temp 3-component vector of float val})
3940:43              Constant:
3950:43                2 (const int)
3960:43            Constant:
3970:43              0 (const int)
3980:43          Constant:
3990:43            0 (const int)
4000:44      move second child to first child ( temp float)
4010:44        flInFactor: direct index for structure ( temp float)
4020:44          'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
4030:44          Constant:
4040:44            1 (const int)
4050:44        Constant:
4060:44          4.000000
4070:46      Branch: Return with expression
4080:46        'o' ( temp structure{ temp 3-element array of float tfactor,  temp float flInFactor})
4090:?   Linker Objects
4100:?     '@entryPointOutput' (layout( location=0) out 3-element array of structure{ temp 3-component vector of float val})
4110:?     'i' (layout( location=0) in 3-element array of structure{ temp 3-component vector of float val})
4120:?     'cpid' ( in uint InvocationID)
4130:?     '@patchConstantOutput.tfactor' ( patch out 4-element array of float TessLevelOuter)
4140:?     '@patchConstantOutput.flInFactor' ( patch out 2-element array of float TessLevelInner)
415
416// Module Version 10000
417// Generated by (magic number): 80007
418// Id's are bound by 126
419
420                              Capability Tessellation
421               1:             ExtInstImport  "GLSL.std.450"
422                              MemoryModel Logical GLSL450
423                              EntryPoint TessellationControl 4  "main" 42 46 49 96 110
424                              ExecutionMode 4 OutputVertices 3
425                              ExecutionMode 4 Triangles
426                              ExecutionMode 4 SpacingFractionalOdd
427                              ExecutionMode 4 VertexOrderCw
428                              Source HLSL 500
429                              Name 4  "main"
430                              Name 8  "hs_in_t"
431                              MemberName 8(hs_in_t) 0  "val"
432                              Name 14  "hs_out_t"
433                              MemberName 14(hs_out_t) 0  "val"
434                              Name 18  "@main(struct-hs_in_t-vf31[3];u1;"
435                              Name 16  "i"
436                              Name 17  "cpid"
437                              Name 22  "hs_pcf_t"
438                              MemberName 22(hs_pcf_t) 0  "tfactor"
439                              MemberName 22(hs_pcf_t) 1  "flInFactor"
440                              Name 26  "PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3];"
441                              Name 24  "pcf_out"
442                              Name 25  "pcf_in"
443                              Name 31  "o"
444                              Name 40  "i"
445                              Name 42  "i"
446                              Name 44  "cpid"
447                              Name 46  "cpid"
448                              Name 49  "@entryPointOutput"
449                              Name 51  "param"
450                              Name 53  "param"
451                              Name 67  "pcf_out"
452                              Name 68  "i"
453                              Name 69  "param"
454                              Name 71  "param"
455                              Name 75  "i"
456                              Name 77  "param"
457                              Name 79  "param"
458                              Name 83  "i"
459                              Name 84  "param"
460                              Name 86  "param"
461                              Name 90  "@patchConstantResult"
462                              Name 96  "@patchConstantOutput.tfactor"
463                              Name 110  "@patchConstantOutput.flInFactor"
464                              Name 114  "o"
465                              Decorate 42(i) Location 0
466                              Decorate 46(cpid) BuiltIn InvocationId
467                              Decorate 49(@entryPointOutput) Location 0
468                              Decorate 96(@patchConstantOutput.tfactor) Patch
469                              Decorate 96(@patchConstantOutput.tfactor) BuiltIn TessLevelOuter
470                              Decorate 110(@patchConstantOutput.flInFactor) Patch
471                              Decorate 110(@patchConstantOutput.flInFactor) BuiltIn TessLevelInner
472               2:             TypeVoid
473               3:             TypeFunction 2
474               6:             TypeFloat 32
475               7:             TypeVector 6(float) 3
476      8(hs_in_t):             TypeStruct 7(fvec3)
477               9:             TypeInt 32 0
478              10:      9(int) Constant 3
479              11:             TypeArray 8(hs_in_t) 10
480              12:             TypePointer Function 11
481              13:             TypePointer Function 9(int)
482    14(hs_out_t):             TypeStruct 7(fvec3)
483              15:             TypeFunction 14(hs_out_t) 12(ptr) 13(ptr)
484              20:             TypeArray 14(hs_out_t) 10
485              21:             TypeArray 6(float) 10
486    22(hs_pcf_t):             TypeStruct 21 6(float)
487              23:             TypeFunction 22(hs_pcf_t) 20 11
488              28:             TypeInt 32 1
489              29:     28(int) Constant 0
490              30:             TypePointer Function 14(hs_out_t)
491              35:             TypePointer Function 7(fvec3)
492              41:             TypePointer Input 11
493           42(i):     41(ptr) Variable Input
494              45:             TypePointer Input 9(int)
495        46(cpid):     45(ptr) Variable Input
496              48:             TypePointer Output 20
49749(@entryPointOutput):     48(ptr) Variable Output
498              56:             TypePointer Output 14(hs_out_t)
499              58:      9(int) Constant 2
500              59:      9(int) Constant 4
501              60:      9(int) Constant 0
502              62:             TypeBool
503              66:             TypePointer Function 20
504              74:     28(int) Constant 1
505              76:      9(int) Constant 1
506              82:     28(int) Constant 2
507              89:             TypePointer Function 22(hs_pcf_t)
508              94:             TypeArray 6(float) 59
509              95:             TypePointer Output 94
51096(@patchConstantOutput.tfactor):     95(ptr) Variable Output
511              97:             TypePointer Function 6(float)
512             100:             TypePointer Output 6(float)
513             108:             TypeArray 6(float) 58
514             109:             TypePointer Output 108
515110(@patchConstantOutput.flInFactor):    109(ptr) Variable Output
516             121:    6(float) Constant 1082130432
517         4(main):           2 Function None 3
518               5:             Label
519           40(i):     12(ptr) Variable Function
520        44(cpid):     13(ptr) Variable Function
521       51(param):     12(ptr) Variable Function
522       53(param):     13(ptr) Variable Function
523     67(pcf_out):     66(ptr) Variable Function
524           68(i):     12(ptr) Variable Function
525       69(param):     12(ptr) Variable Function
526       71(param):     13(ptr) Variable Function
527           75(i):     12(ptr) Variable Function
528       77(param):     12(ptr) Variable Function
529       79(param):     13(ptr) Variable Function
530           83(i):     12(ptr) Variable Function
531       84(param):     12(ptr) Variable Function
532       86(param):     13(ptr) Variable Function
53390(@patchConstantResult):     89(ptr) Variable Function
534              43:          11 Load 42(i)
535                              Store 40(i) 43
536              47:      9(int) Load 46(cpid)
537                              Store 44(cpid) 47
538              50:      9(int) Load 46(cpid)
539              52:          11 Load 40(i)
540                              Store 51(param) 52
541              54:      9(int) Load 44(cpid)
542                              Store 53(param) 54
543              55:14(hs_out_t) FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 51(param) 53(param)
544              57:     56(ptr) AccessChain 49(@entryPointOutput) 50
545                              Store 57 55
546                              ControlBarrier 58 59 60
547              61:      9(int) Load 46(cpid)
548              63:    62(bool) IEqual 61 29
549                              SelectionMerge 65 None
550                              BranchConditional 63 64 65
551              64:               Label
552              70:          11   Load 68(i)
553                                Store 69(param) 70
554                                Store 71(param) 60
555              72:14(hs_out_t)   FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 69(param) 71(param)
556              73:     30(ptr)   AccessChain 67(pcf_out) 29
557                                Store 73 72
558              78:          11   Load 75(i)
559                                Store 77(param) 78
560                                Store 79(param) 76
561              80:14(hs_out_t)   FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 77(param) 79(param)
562              81:     30(ptr)   AccessChain 67(pcf_out) 74
563                                Store 81 80
564              85:          11   Load 83(i)
565                                Store 84(param) 85
566                                Store 86(param) 58
567              87:14(hs_out_t)   FunctionCall 18(@main(struct-hs_in_t-vf31[3];u1;) 84(param) 86(param)
568              88:     30(ptr)   AccessChain 67(pcf_out) 82
569                                Store 88 87
570              91:          20   Load 67(pcf_out)
571              92:          11   Load 40(i)
572              93:22(hs_pcf_t)   FunctionCall 26(PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3];) 91 92
573                                Store 90(@patchConstantResult) 93
574              98:     97(ptr)   AccessChain 90(@patchConstantResult) 29 29
575              99:    6(float)   Load 98
576             101:    100(ptr)   AccessChain 96(@patchConstantOutput.tfactor) 29
577                                Store 101 99
578             102:     97(ptr)   AccessChain 90(@patchConstantResult) 29 74
579             103:    6(float)   Load 102
580             104:    100(ptr)   AccessChain 96(@patchConstantOutput.tfactor) 74
581                                Store 104 103
582             105:     97(ptr)   AccessChain 90(@patchConstantResult) 29 82
583             106:    6(float)   Load 105
584             107:    100(ptr)   AccessChain 96(@patchConstantOutput.tfactor) 82
585                                Store 107 106
586             111:     97(ptr)   AccessChain 90(@patchConstantResult) 74
587             112:    6(float)   Load 111
588             113:    100(ptr)   AccessChain 110(@patchConstantOutput.flInFactor) 29
589                                Store 113 112
590                                Branch 65
591              65:             Label
592                              Return
593                              FunctionEnd
59418(@main(struct-hs_in_t-vf31[3];u1;):14(hs_out_t) Function None 15
595           16(i):     12(ptr) FunctionParameter
596        17(cpid):     13(ptr) FunctionParameter
597              19:             Label
598           31(o):     30(ptr) Variable Function
599              32:      9(int) Load 17(cpid)
600              33:    6(float) ConvertUToF 32
601              34:    7(fvec3) CompositeConstruct 33 33 33
602              36:     35(ptr) AccessChain 31(o) 29
603                              Store 36 34
604              37:14(hs_out_t) Load 31(o)
605                              ReturnValue 37
606                              FunctionEnd
60726(PCF(struct-hs_out_t-vf31[3];struct-hs_in_t-vf31[3];):22(hs_pcf_t) Function None 23
608     24(pcf_out):          20 FunctionParameter
609      25(pcf_in):          11 FunctionParameter
610              27:             Label
611          114(o):     89(ptr) Variable Function
612             115:    6(float) CompositeExtract 24(pcf_out) 0 0 0
613             116:     97(ptr) AccessChain 114(o) 29 29
614                              Store 116 115
615             117:    6(float) CompositeExtract 24(pcf_out) 1 0 0
616             118:     97(ptr) AccessChain 114(o) 29 74
617                              Store 118 117
618             119:    6(float) CompositeExtract 24(pcf_out) 2 0 0
619             120:     97(ptr) AccessChain 114(o) 29 82
620                              Store 120 119
621             122:     97(ptr) AccessChain 114(o) 74
622                              Store 122 121
623             123:22(hs_pcf_t) Load 114(o)
624                              ReturnValue 123
625                              FunctionEnd
626