1hlsl.struct.split.nested.geom
2Shader version: 500
3invocations = -1
4max_vertices = 3
5input primitive = triangles
6output primitive = triangle_strip
70:? Sequence
80:24  Function Definition: @main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111; ( temp void)
90:24    Function Parameters:
100:24      'tin' ( in 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
110:24      'ts' ( out structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
120:?     Sequence
130:27      move second child to first child ( temp 4-component vector of float)
140:27        pos: direct index for structure ( temp 4-component vector of float)
150:27          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
160:27            'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
170:27            Constant:
180:27              0 (const int)
190:27          Constant:
200:27            0 (const int)
210:?         Constant:
220:?           1.000000
230:?           2.000000
240:?           3.000000
250:?           4.000000
260:28      move second child to first child ( temp 2-component vector of float)
270:28        tc: direct index for structure ( temp 2-component vector of float)
280:28          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
290:28            'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
300:28            Constant:
310:28              0 (const int)
320:28          Constant:
330:28            1 (const int)
340:?         Constant:
350:?           5.000000
360:?           6.000000
370:29      move second child to first child ( temp float)
380:29        direct index ( temp float)
390:29          m0_array: direct index for structure ( temp 2-element array of float)
400:29            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
410:29              'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
420:29              Constant:
430:29                1 (const int)
440:29            Constant:
450:29              0 (const int)
460:29          Constant:
470:29            0 (const int)
480:29        Constant:
490:29          2.300000
500:30      move second child to first child ( temp float)
510:30        direct index ( temp float)
520:30          m0_array: direct index for structure ( temp 2-element array of float)
530:30            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
540:30              'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
550:30              Constant:
560:30                1 (const int)
570:30            Constant:
580:30              0 (const int)
590:30          Constant:
600:30            1 (const int)
610:30        Constant:
620:30          2.300000
630:31      move second child to first child ( temp int)
640:31        m1: direct index for structure ( temp int)
650:31          contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
660:31            'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
670:31            Constant:
680:31              1 (const int)
690:31          Constant:
700:31            1 (const int)
710:31        Constant:
720:31          2 (const int)
730:33      Sequence
740:33        Sequence
750:33          move second child to first child ( temp 4-component vector of float)
760:?             'ts.pos' ( out 4-component vector of float Position)
770:33            pos: direct index for structure ( temp 4-component vector of float)
780:33              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
790:33                'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
800:33                Constant:
810:33                  0 (const int)
820:33              Constant:
830:33                0 (const int)
840:33          move second child to first child ( temp 2-component vector of float)
850:?             'ts.psIn.tc' (layout( location=0) out 2-component vector of float)
860:33            tc: direct index for structure ( temp 2-component vector of float)
870:33              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
880:33                'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
890:33                Constant:
900:33                  0 (const int)
910:33              Constant:
920:33                1 (const int)
930:33          move second child to first child ( temp float)
940:?             'ts.contains_no_builtin_io.m0_array[0]' (layout( location=1) out float)
950:33            direct index ( temp float)
960:33              m0_array: direct index for structure ( temp 2-element array of float)
970:33                contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
980:33                  'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
990:33                  Constant:
1000:33                    1 (const int)
1010:33                Constant:
1020:33                  0 (const int)
1030:33              Constant:
1040:33                0 (const int)
1050:33          move second child to first child ( temp float)
1060:?             'ts.contains_no_builtin_io.m0_array[1]' (layout( location=2) out float)
1070:33            direct index ( temp float)
1080:33              m0_array: direct index for structure ( temp 2-element array of float)
1090:33                contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
1100:33                  'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
1110:33                  Constant:
1120:33                    1 (const int)
1130:33                Constant:
1140:33                  0 (const int)
1150:33              Constant:
1160:33                1 (const int)
1170:33          move second child to first child ( temp int)
1180:?             'ts.contains_no_builtin_io.m1' (layout( location=3) out int)
1190:33            m1: direct index for structure ( temp int)
1200:33              contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
1210:33                'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
1220:33                Constant:
1230:33                  1 (const int)
1240:33              Constant:
1250:33                1 (const int)
1260:33        EmitVertex ( temp void)
1270:24  Function Definition: main( ( temp void)
1280:24    Function Parameters:
1290:?     Sequence
1300:24      Sequence
1310:24        move second child to first child ( temp 4-component vector of float)
1320:24          pos: direct index for structure ( temp 4-component vector of float)
1330:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1340:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1350:24              Constant:
1360:24                0 (const int)
1370:24            Constant:
1380:24              0 (const int)
1390:24          direct index ( in 4-component vector of float Position)
1400:?             'tin.pos' ( in 3-element array of 4-component vector of float Position)
1410:24            Constant:
1420:24              0 (const int)
1430:24        move second child to first child ( temp 2-component vector of float)
1440:24          tc: direct index for structure ( temp 2-component vector of float)
1450:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1460:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1470:24              Constant:
1480:24                0 (const int)
1490:24            Constant:
1500:24              1 (const int)
1510:24          tc: direct index for structure ( temp 2-component vector of float)
1520:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
1530:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
1540:24              Constant:
1550:24                0 (const int)
1560:24            Constant:
1570:24              0 (const int)
1580:24        move second child to first child ( temp 4-component vector of float)
1590:24          pos: direct index for structure ( temp 4-component vector of float)
1600:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1610:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1620:24              Constant:
1630:24                1 (const int)
1640:24            Constant:
1650:24              0 (const int)
1660:24          direct index ( in 4-component vector of float Position)
1670:?             'tin.pos' ( in 3-element array of 4-component vector of float Position)
1680:24            Constant:
1690:24              1 (const int)
1700:24        move second child to first child ( temp 2-component vector of float)
1710:24          tc: direct index for structure ( temp 2-component vector of float)
1720:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1730:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1740:24              Constant:
1750:24                1 (const int)
1760:24            Constant:
1770:24              1 (const int)
1780:24          tc: direct index for structure ( temp 2-component vector of float)
1790:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
1800:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
1810:24              Constant:
1820:24                1 (const int)
1830:24            Constant:
1840:24              0 (const int)
1850:24        move second child to first child ( temp 4-component vector of float)
1860:24          pos: direct index for structure ( temp 4-component vector of float)
1870:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1880:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
1890:24              Constant:
1900:24                2 (const int)
1910:24            Constant:
1920:24              0 (const int)
1930:24          direct index ( in 4-component vector of float Position)
1940:?             'tin.pos' ( in 3-element array of 4-component vector of float Position)
1950:24            Constant:
1960:24              2 (const int)
1970:24        move second child to first child ( temp 2-component vector of float)
1980:24          tc: direct index for structure ( temp 2-component vector of float)
1990:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
2000:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
2010:24              Constant:
2020:24                2 (const int)
2030:24            Constant:
2040:24              1 (const int)
2050:24          tc: direct index for structure ( temp 2-component vector of float)
2060:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
2070:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
2080:24              Constant:
2090:24                2 (const int)
2100:24            Constant:
2110:24              0 (const int)
2120:24      Function Call: @main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111; ( temp void)
2130:?         'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
2140:?         'ts' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2150:?   Linker Objects
2160:?     'tin.pos' ( in 3-element array of 4-component vector of float Position)
2170:?     'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
2180:?     'ts.pos' ( out 4-component vector of float Position)
2190:?     'ts.psIn.tc' (layout( location=0) out 2-component vector of float)
2200:?     'ts.contains_no_builtin_io.m0_array[0]' (layout( location=1) out float)
2210:?     'ts.contains_no_builtin_io.m0_array[1]' (layout( location=2) out float)
2220:?     'ts.contains_no_builtin_io.m1' (layout( location=3) out int)
223
224
225Linked geometry stage:
226
227
228Shader version: 500
229invocations = 1
230max_vertices = 3
231input primitive = triangles
232output primitive = triangle_strip
2330:? Sequence
2340:24  Function Definition: @main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111; ( temp void)
2350:24    Function Parameters:
2360:24      'tin' ( in 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
2370:24      'ts' ( out structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2380:?     Sequence
2390:27      move second child to first child ( temp 4-component vector of float)
2400:27        pos: direct index for structure ( temp 4-component vector of float)
2410:27          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
2420:27            'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2430:27            Constant:
2440:27              0 (const int)
2450:27          Constant:
2460:27            0 (const int)
2470:?         Constant:
2480:?           1.000000
2490:?           2.000000
2500:?           3.000000
2510:?           4.000000
2520:28      move second child to first child ( temp 2-component vector of float)
2530:28        tc: direct index for structure ( temp 2-component vector of float)
2540:28          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
2550:28            'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2560:28            Constant:
2570:28              0 (const int)
2580:28          Constant:
2590:28            1 (const int)
2600:?         Constant:
2610:?           5.000000
2620:?           6.000000
2630:29      move second child to first child ( temp float)
2640:29        direct index ( temp float)
2650:29          m0_array: direct index for structure ( temp 2-element array of float)
2660:29            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
2670:29              'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2680:29              Constant:
2690:29                1 (const int)
2700:29            Constant:
2710:29              0 (const int)
2720:29          Constant:
2730:29            0 (const int)
2740:29        Constant:
2750:29          2.300000
2760:30      move second child to first child ( temp float)
2770:30        direct index ( temp float)
2780:30          m0_array: direct index for structure ( temp 2-element array of float)
2790:30            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
2800:30              'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2810:30              Constant:
2820:30                1 (const int)
2830:30            Constant:
2840:30              0 (const int)
2850:30          Constant:
2860:30            1 (const int)
2870:30        Constant:
2880:30          2.300000
2890:31      move second child to first child ( temp int)
2900:31        m1: direct index for structure ( temp int)
2910:31          contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
2920:31            'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
2930:31            Constant:
2940:31              1 (const int)
2950:31          Constant:
2960:31            1 (const int)
2970:31        Constant:
2980:31          2 (const int)
2990:33      Sequence
3000:33        Sequence
3010:33          move second child to first child ( temp 4-component vector of float)
3020:?             'ts.pos' ( out 4-component vector of float Position)
3030:33            pos: direct index for structure ( temp 4-component vector of float)
3040:33              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3050:33                'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
3060:33                Constant:
3070:33                  0 (const int)
3080:33              Constant:
3090:33                0 (const int)
3100:33          move second child to first child ( temp 2-component vector of float)
3110:?             'ts.psIn.tc' (layout( location=0) out 2-component vector of float)
3120:33            tc: direct index for structure ( temp 2-component vector of float)
3130:33              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3140:33                'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
3150:33                Constant:
3160:33                  0 (const int)
3170:33              Constant:
3180:33                1 (const int)
3190:33          move second child to first child ( temp float)
3200:?             'ts.contains_no_builtin_io.m0_array[0]' (layout( location=1) out float)
3210:33            direct index ( temp float)
3220:33              m0_array: direct index for structure ( temp 2-element array of float)
3230:33                contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
3240:33                  'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
3250:33                  Constant:
3260:33                    1 (const int)
3270:33                Constant:
3280:33                  0 (const int)
3290:33              Constant:
3300:33                0 (const int)
3310:33          move second child to first child ( temp float)
3320:?             'ts.contains_no_builtin_io.m0_array[1]' (layout( location=2) out float)
3330:33            direct index ( temp float)
3340:33              m0_array: direct index for structure ( temp 2-element array of float)
3350:33                contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
3360:33                  'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
3370:33                  Constant:
3380:33                    1 (const int)
3390:33                Constant:
3400:33                  0 (const int)
3410:33              Constant:
3420:33                1 (const int)
3430:33          move second child to first child ( temp int)
3440:?             'ts.contains_no_builtin_io.m1' (layout( location=3) out int)
3450:33            m1: direct index for structure ( temp int)
3460:33              contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
3470:33                'o' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
3480:33                Constant:
3490:33                  1 (const int)
3500:33              Constant:
3510:33                1 (const int)
3520:33        EmitVertex ( temp void)
3530:24  Function Definition: main( ( temp void)
3540:24    Function Parameters:
3550:?     Sequence
3560:24      Sequence
3570:24        move second child to first child ( temp 4-component vector of float)
3580:24          pos: direct index for structure ( temp 4-component vector of float)
3590:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3600:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3610:24              Constant:
3620:24                0 (const int)
3630:24            Constant:
3640:24              0 (const int)
3650:24          direct index ( in 4-component vector of float Position)
3660:?             'tin.pos' ( in 3-element array of 4-component vector of float Position)
3670:24            Constant:
3680:24              0 (const int)
3690:24        move second child to first child ( temp 2-component vector of float)
3700:24          tc: direct index for structure ( temp 2-component vector of float)
3710:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3720:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3730:24              Constant:
3740:24                0 (const int)
3750:24            Constant:
3760:24              1 (const int)
3770:24          tc: direct index for structure ( temp 2-component vector of float)
3780:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
3790:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
3800:24              Constant:
3810:24                0 (const int)
3820:24            Constant:
3830:24              0 (const int)
3840:24        move second child to first child ( temp 4-component vector of float)
3850:24          pos: direct index for structure ( temp 4-component vector of float)
3860:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3870:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3880:24              Constant:
3890:24                1 (const int)
3900:24            Constant:
3910:24              0 (const int)
3920:24          direct index ( in 4-component vector of float Position)
3930:?             'tin.pos' ( in 3-element array of 4-component vector of float Position)
3940:24            Constant:
3950:24              1 (const int)
3960:24        move second child to first child ( temp 2-component vector of float)
3970:24          tc: direct index for structure ( temp 2-component vector of float)
3980:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
3990:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
4000:24              Constant:
4010:24                1 (const int)
4020:24            Constant:
4030:24              1 (const int)
4040:24          tc: direct index for structure ( temp 2-component vector of float)
4050:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
4060:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
4070:24              Constant:
4080:24                1 (const int)
4090:24            Constant:
4100:24              0 (const int)
4110:24        move second child to first child ( temp 4-component vector of float)
4120:24          pos: direct index for structure ( temp 4-component vector of float)
4130:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
4140:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
4150:24              Constant:
4160:24                2 (const int)
4170:24            Constant:
4180:24              0 (const int)
4190:24          direct index ( in 4-component vector of float Position)
4200:?             'tin.pos' ( in 3-element array of 4-component vector of float Position)
4210:24            Constant:
4220:24              2 (const int)
4230:24        move second child to first child ( temp 2-component vector of float)
4240:24          tc: direct index for structure ( temp 2-component vector of float)
4250:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
4260:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
4270:24              Constant:
4280:24                2 (const int)
4290:24            Constant:
4300:24              1 (const int)
4310:24          tc: direct index for structure ( temp 2-component vector of float)
4320:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
4330:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
4340:24              Constant:
4350:24                2 (const int)
4360:24            Constant:
4370:24              0 (const int)
4380:24      Function Call: @main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111; ( temp void)
4390:?         'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
4400:?         'ts' ( temp structure{ temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc} psIn,  temp structure{ temp 2-element array of float m0_array,  temp int m1} contains_no_builtin_io})
4410:?   Linker Objects
4420:?     'tin.pos' ( in 3-element array of 4-component vector of float Position)
4430:?     'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
4440:?     'ts.pos' ( out 4-component vector of float Position)
4450:?     'ts.psIn.tc' (layout( location=0) out 2-component vector of float)
4460:?     'ts.contains_no_builtin_io.m0_array[0]' (layout( location=1) out float)
4470:?     'ts.contains_no_builtin_io.m0_array[1]' (layout( location=2) out float)
4480:?     'ts.contains_no_builtin_io.m1' (layout( location=3) out int)
449
450// Module Version 10000
451// Generated by (magic number): 80007
452// Id's are bound by 100
453
454                              Capability Geometry
455               1:             ExtInstImport  "GLSL.std.450"
456                              MemoryModel Logical GLSL450
457                              EntryPoint Geometry 4  "main" 48 52 56 59 63 69 77
458                              ExecutionMode 4 Triangles
459                              ExecutionMode 4 Invocations 1
460                              ExecutionMode 4 OutputTriangleStrip
461                              ExecutionMode 4 OutputVertices 3
462                              Source HLSL 500
463                              Name 4  "main"
464                              Name 9  "PS_IN"
465                              MemberName 9(PS_IN) 0  "pos"
466                              MemberName 9(PS_IN) 1  "tc"
467                              Name 17  "STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO"
468                              MemberName 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 0  "m0_array"
469                              MemberName 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 1  "m1"
470                              Name 18  "GS_OUT"
471                              MemberName 18(GS_OUT) 0  "psIn"
472                              MemberName 18(GS_OUT) 1  "contains_no_builtin_io"
473                              Name 23  "@main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111;"
474                              Name 21  "tin"
475                              Name 22  "ts"
476                              Name 25  "o"
477                              Name 48  "ts.pos"
478                              Name 52  "ts.psIn.tc"
479                              Name 56  "ts.contains_no_builtin_io.m0_array[0]"
480                              Name 59  "ts.contains_no_builtin_io.m0_array[1]"
481                              Name 63  "ts.contains_no_builtin_io.m1"
482                              Name 66  "tin"
483                              Name 69  "tin.pos"
484                              Name 74  "PS_IN"
485                              MemberName 74(PS_IN) 0  "tc"
486                              Name 77  "tin"
487                              Name 94  "ts"
488                              Name 95  "param"
489                              Name 97  "param"
490                              Decorate 48(ts.pos) BuiltIn Position
491                              Decorate 52(ts.psIn.tc) Location 0
492                              Decorate 56(ts.contains_no_builtin_io.m0_array[0]) Location 1
493                              Decorate 59(ts.contains_no_builtin_io.m0_array[1]) Location 2
494                              Decorate 63(ts.contains_no_builtin_io.m1) Location 3
495                              Decorate 69(tin.pos) BuiltIn Position
496                              Decorate 77(tin) Location 0
497               2:             TypeVoid
498               3:             TypeFunction 2
499               6:             TypeFloat 32
500               7:             TypeVector 6(float) 4
501               8:             TypeVector 6(float) 2
502        9(PS_IN):             TypeStruct 7(fvec4) 8(fvec2)
503              10:             TypeInt 32 0
504              11:     10(int) Constant 3
505              12:             TypeArray 9(PS_IN) 11
506              13:             TypePointer Function 12
507              14:     10(int) Constant 2
508              15:             TypeArray 6(float) 14
509              16:             TypeInt 32 1
51017(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO):             TypeStruct 15 16(int)
511      18(GS_OUT):             TypeStruct 9(PS_IN) 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO)
512              19:             TypePointer Function 18(GS_OUT)
513              20:             TypeFunction 2 13(ptr) 19(ptr)
514              26:     16(int) Constant 0
515              27:    6(float) Constant 1065353216
516              28:    6(float) Constant 1073741824
517              29:    6(float) Constant 1077936128
518              30:    6(float) Constant 1082130432
519              31:    7(fvec4) ConstantComposite 27 28 29 30
520              32:             TypePointer Function 7(fvec4)
521              34:     16(int) Constant 1
522              35:    6(float) Constant 1084227584
523              36:    6(float) Constant 1086324736
524              37:    8(fvec2) ConstantComposite 35 36
525              38:             TypePointer Function 8(fvec2)
526              40:    6(float) Constant 1075000115
527              41:             TypePointer Function 6(float)
528              44:     16(int) Constant 2
529              45:             TypePointer Function 16(int)
530              47:             TypePointer Output 7(fvec4)
531      48(ts.pos):     47(ptr) Variable Output
532              51:             TypePointer Output 8(fvec2)
533  52(ts.psIn.tc):     51(ptr) Variable Output
534              55:             TypePointer Output 6(float)
53556(ts.contains_no_builtin_io.m0_array[0]):     55(ptr) Variable Output
53659(ts.contains_no_builtin_io.m0_array[1]):     55(ptr) Variable Output
537              62:             TypePointer Output 16(int)
53863(ts.contains_no_builtin_io.m1):     62(ptr) Variable Output
539              67:             TypeArray 7(fvec4) 11
540              68:             TypePointer Input 67
541     69(tin.pos):     68(ptr) Variable Input
542              70:             TypePointer Input 7(fvec4)
543       74(PS_IN):             TypeStruct 8(fvec2)
544              75:             TypeArray 74(PS_IN) 11
545              76:             TypePointer Input 75
546         77(tin):     76(ptr) Variable Input
547              78:             TypePointer Input 8(fvec2)
548         4(main):           2 Function None 3
549               5:             Label
550         66(tin):     13(ptr) Variable Function
551          94(ts):     19(ptr) Variable Function
552       95(param):     13(ptr) Variable Function
553       97(param):     19(ptr) Variable Function
554              71:     70(ptr) AccessChain 69(tin.pos) 26
555              72:    7(fvec4) Load 71
556              73:     32(ptr) AccessChain 66(tin) 26 26
557                              Store 73 72
558              79:     78(ptr) AccessChain 77(tin) 26 26
559              80:    8(fvec2) Load 79
560              81:     38(ptr) AccessChain 66(tin) 26 34
561                              Store 81 80
562              82:     70(ptr) AccessChain 69(tin.pos) 34
563              83:    7(fvec4) Load 82
564              84:     32(ptr) AccessChain 66(tin) 34 26
565                              Store 84 83
566              85:     78(ptr) AccessChain 77(tin) 34 26
567              86:    8(fvec2) Load 85
568              87:     38(ptr) AccessChain 66(tin) 34 34
569                              Store 87 86
570              88:     70(ptr) AccessChain 69(tin.pos) 44
571              89:    7(fvec4) Load 88
572              90:     32(ptr) AccessChain 66(tin) 44 26
573                              Store 90 89
574              91:     78(ptr) AccessChain 77(tin) 44 26
575              92:    8(fvec2) Load 91
576              93:     38(ptr) AccessChain 66(tin) 44 34
577                              Store 93 92
578              96:          12 Load 66(tin)
579                              Store 95(param) 96
580              98:           2 FunctionCall 23(@main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111;) 95(param) 97(param)
581              99:  18(GS_OUT) Load 97(param)
582                              Store 94(ts) 99
583                              Return
584                              FunctionEnd
58523(@main(struct-PS_IN-vf4-vf21[3];struct-GS_OUT-struct-PS_IN-vf4-vf21-struct-STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO-f1[2]-i111;):           2 Function None 20
586         21(tin):     13(ptr) FunctionParameter
587          22(ts):     19(ptr) FunctionParameter
588              24:             Label
589           25(o):     19(ptr) Variable Function
590              33:     32(ptr) AccessChain 25(o) 26 26
591                              Store 33 31
592              39:     38(ptr) AccessChain 25(o) 26 34
593                              Store 39 37
594              42:     41(ptr) AccessChain 25(o) 34 26 26
595                              Store 42 40
596              43:     41(ptr) AccessChain 25(o) 34 26 34
597                              Store 43 40
598              46:     45(ptr) AccessChain 25(o) 34 34
599                              Store 46 44
600              49:     32(ptr) AccessChain 25(o) 26 26
601              50:    7(fvec4) Load 49
602                              Store 48(ts.pos) 50
603              53:     38(ptr) AccessChain 25(o) 26 34
604              54:    8(fvec2) Load 53
605                              Store 52(ts.psIn.tc) 54
606              57:     41(ptr) AccessChain 25(o) 34 26 26
607              58:    6(float) Load 57
608                              Store 56(ts.contains_no_builtin_io.m0_array[0]) 58
609              60:     41(ptr) AccessChain 25(o) 34 26 34
610              61:    6(float) Load 60
611                              Store 59(ts.contains_no_builtin_io.m0_array[1]) 61
612              64:     45(ptr) AccessChain 25(o) 34 34
613              65:     16(int) Load 64
614                              Store 63(ts.contains_no_builtin_io.m1) 65
615                              EmitVertex
616                              Return
617                              FunctionEnd
618