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