hlsl.struct.split.nested.geom
Shader version: 500
invocations = -1
max_vertices = 3
input primitive = triangles
output primitive = triangle_strip
0:? Sequence
0: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)
0:24    Function Parameters: 
0:24      'tin' ( in 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:?     Sequence
0:27      move second child to first child ( temp 4-component vector of float)
0:27        pos: direct index for structure ( temp 4-component vector of float)
0:27          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:27            Constant:
0:27              0 (const int)
0:27          Constant:
0:27            0 (const int)
0:?         Constant:
0:?           1.000000
0:?           2.000000
0:?           3.000000
0:?           4.000000
0:28      move second child to first child ( temp 2-component vector of float)
0:28        tc: direct index for structure ( temp 2-component vector of float)
0:28          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:28            Constant:
0:28              0 (const int)
0:28          Constant:
0:28            1 (const int)
0:?         Constant:
0:?           5.000000
0:?           6.000000
0:30      Sequence
0:30        Sequence
0:30          move second child to first child ( temp 4-component vector of float)
0:?             'ts_psIn_pos' ( out 4-component vector of float Position)
0:30            pos: direct index for structure ( temp 4-component vector of float)
0:30              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:30                Constant:
0:30                  0 (const int)
0:30              Constant:
0:30                0 (const int)
0:30          move second child to first child ( temp 2-component vector of float)
0:30            tc: direct index for structure ( temp 2-component vector of float)
0:30              psIn: direct index for structure ( temp structure{ temp 2-component vector of float tc})
0:30                'ts' (layout( location=0) out structure{ temp structure{ 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})
0:30                Constant:
0:30                  0 (const int)
0:30              Constant:
0:30                0 (const int)
0:30            tc: direct index for structure ( temp 2-component vector of float)
0:30              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:30                Constant:
0:30                  0 (const int)
0:30              Constant:
0:30                1 (const int)
0:30          move second child to first child ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
0:30            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
0:30              'ts' (layout( location=0) out structure{ temp structure{ 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})
0:30              Constant:
0:30                1 (const int)
0:30            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
0: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})
0:30              Constant:
0:30                1 (const int)
0:30        EmitVertex ( temp void)
0:24  Function Definition: main( ( temp void)
0:24    Function Parameters: 
0:?     Sequence
0:24      Sequence
0:24        move second child to first child ( temp 4-component vector of float)
0:24          pos: direct index for structure ( temp 4-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                0 (const int)
0:24            Constant:
0:24              0 (const int)
0:24          direct index ( in 4-component vector of float Position)
0:?             'tin_pos' ( in 3-element array of 4-component vector of float Position)
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp 2-component vector of float)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                0 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
0:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:24              Constant:
0:24                0 (const int)
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp 4-component vector of float)
0:24          pos: direct index for structure ( temp 4-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              0 (const int)
0:24          direct index ( in 4-component vector of float Position)
0:?             'tin_pos' ( in 3-element array of 4-component vector of float Position)
0:24            Constant:
0:24              1 (const int)
0:24        move second child to first child ( temp 2-component vector of float)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
0:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp 4-component vector of float)
0:24          pos: direct index for structure ( temp 4-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              0 (const int)
0:24          direct index ( in 4-component vector of float Position)
0:?             'tin_pos' ( in 3-element array of 4-component vector of float Position)
0:24            Constant:
0:24              2 (const int)
0:24        move second child to first child ( temp 2-component vector of float)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
0:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              0 (const int)
0: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)
0:?         'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?         '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})
0:?   Linker Objects
0:?     'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:?     'ts' (layout( location=0) out structure{ temp structure{ 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})


Linked geometry stage:


Shader version: 500
invocations = 1
max_vertices = 3
input primitive = triangles
output primitive = triangle_strip
0:? Sequence
0: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)
0:24    Function Parameters: 
0:24      'tin' ( in 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:?     Sequence
0:27      move second child to first child ( temp 4-component vector of float)
0:27        pos: direct index for structure ( temp 4-component vector of float)
0:27          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:27            Constant:
0:27              0 (const int)
0:27          Constant:
0:27            0 (const int)
0:?         Constant:
0:?           1.000000
0:?           2.000000
0:?           3.000000
0:?           4.000000
0:28      move second child to first child ( temp 2-component vector of float)
0:28        tc: direct index for structure ( temp 2-component vector of float)
0:28          psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:28            Constant:
0:28              0 (const int)
0:28          Constant:
0:28            1 (const int)
0:?         Constant:
0:?           5.000000
0:?           6.000000
0:30      Sequence
0:30        Sequence
0:30          move second child to first child ( temp 4-component vector of float)
0:?             'ts_psIn_pos' ( out 4-component vector of float Position)
0:30            pos: direct index for structure ( temp 4-component vector of float)
0:30              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:30                Constant:
0:30                  0 (const int)
0:30              Constant:
0:30                0 (const int)
0:30          move second child to first child ( temp 2-component vector of float)
0:30            tc: direct index for structure ( temp 2-component vector of float)
0:30              psIn: direct index for structure ( temp structure{ temp 2-component vector of float tc})
0:30                'ts' (layout( location=0) out structure{ temp structure{ 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})
0:30                Constant:
0:30                  0 (const int)
0:30              Constant:
0:30                0 (const int)
0:30            tc: direct index for structure ( temp 2-component vector of float)
0:30              psIn: direct index for structure ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0: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})
0:30                Constant:
0:30                  0 (const int)
0:30              Constant:
0:30                1 (const int)
0:30          move second child to first child ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
0:30            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
0:30              'ts' (layout( location=0) out structure{ temp structure{ 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})
0:30              Constant:
0:30                1 (const int)
0:30            contains_no_builtin_io: direct index for structure ( temp structure{ temp 2-element array of float m0_array,  temp int m1})
0: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})
0:30              Constant:
0:30                1 (const int)
0:30        EmitVertex ( temp void)
0:24  Function Definition: main( ( temp void)
0:24    Function Parameters: 
0:?     Sequence
0:24      Sequence
0:24        move second child to first child ( temp 4-component vector of float)
0:24          pos: direct index for structure ( temp 4-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                0 (const int)
0:24            Constant:
0:24              0 (const int)
0:24          direct index ( in 4-component vector of float Position)
0:?             'tin_pos' ( in 3-element array of 4-component vector of float Position)
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp 2-component vector of float)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                0 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
0:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:24              Constant:
0:24                0 (const int)
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp 4-component vector of float)
0:24          pos: direct index for structure ( temp 4-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              0 (const int)
0:24          direct index ( in 4-component vector of float Position)
0:?             'tin_pos' ( in 3-element array of 4-component vector of float Position)
0:24            Constant:
0:24              1 (const int)
0:24        move second child to first child ( temp 2-component vector of float)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
0:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp 4-component vector of float)
0:24          pos: direct index for structure ( temp 4-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              0 (const int)
0:24          direct index ( in 4-component vector of float Position)
0:?             'tin_pos' ( in 3-element array of 4-component vector of float Position)
0:24            Constant:
0:24              2 (const int)
0:24        move second child to first child ( temp 2-component vector of float)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index ( temp structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?               'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              1 (const int)
0:24          tc: direct index for structure ( temp 2-component vector of float)
0:24            direct index (layout( location=0) in structure{ temp 2-component vector of float tc})
0:24              'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              0 (const int)
0: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)
0:?         'tin' ( temp 3-element array of structure{ temp 4-component vector of float pos,  temp 2-component vector of float tc})
0:?         '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})
0:?   Linker Objects
0:?     'tin' (layout( location=0) in 3-element array of structure{ temp 2-component vector of float tc})
0:?     'ts' (layout( location=0) out structure{ temp structure{ 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})

// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 99

                              Capability Geometry
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Geometry 4  "main" 41 48 67 75
                              ExecutionMode 4 Triangles
                              ExecutionMode 4 Invocations 1
                              ExecutionMode 4 OutputTriangleStrip
                              ExecutionMode 4 OutputVertices 3
                              Source HLSL 500
                              Name 4  "main"
                              Name 9  "PS_IN"
                              MemberName 9(PS_IN) 0  "pos"
                              MemberName 9(PS_IN) 1  "tc"
                              Name 17  "STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO"
                              MemberName 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 0  "m0_array"
                              MemberName 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 1  "m1"
                              Name 18  "GS_OUT"
                              MemberName 18(GS_OUT) 0  "psIn"
                              MemberName 18(GS_OUT) 1  "contains_no_builtin_io"
                              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;"
                              Name 21  "tin"
                              Name 22  "ts"
                              Name 25  "o"
                              Name 41  "ts_psIn_pos"
                              Name 44  "PS_IN"
                              MemberName 44(PS_IN) 0  "tc"
                              Name 45  "STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO"
                              MemberName 45(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 0  "m0_array"
                              MemberName 45(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 1  "m1"
                              Name 46  "GS_OUT"
                              MemberName 46(GS_OUT) 0  "psIn"
                              MemberName 46(GS_OUT) 1  "contains_no_builtin_io"
                              Name 48  "ts"
                              Name 64  "tin"
                              Name 67  "tin_pos"
                              Name 72  "PS_IN"
                              MemberName 72(PS_IN) 0  "tc"
                              Name 75  "tin"
                              Name 93  "ts"
                              Name 94  "param"
                              Name 96  "param"
                              Decorate 41(ts_psIn_pos) BuiltIn Position
                              Decorate 48(ts) Location 0
                              Decorate 67(tin_pos) BuiltIn Position
                              Decorate 75(tin) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypeVector 6(float) 2
        9(PS_IN):             TypeStruct 7(fvec4) 8(fvec2)
              10:             TypeInt 32 0
              11:     10(int) Constant 3
              12:             TypeArray 9(PS_IN) 11
              13:             TypePointer Function 12
              14:     10(int) Constant 2
              15:             TypeArray 6(float) 14
              16:             TypeInt 32 1
17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO):             TypeStruct 15 16(int)
      18(GS_OUT):             TypeStruct 9(PS_IN) 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO)
              19:             TypePointer Function 18(GS_OUT)
              20:             TypeFunction 2 13(ptr) 19(ptr)
              26:     16(int) Constant 0
              27:    6(float) Constant 1065353216
              28:    6(float) Constant 1073741824
              29:    6(float) Constant 1077936128
              30:    6(float) Constant 1082130432
              31:    7(fvec4) ConstantComposite 27 28 29 30
              32:             TypePointer Function 7(fvec4)
              34:     16(int) Constant 1
              35:    6(float) Constant 1084227584
              36:    6(float) Constant 1086324736
              37:    8(fvec2) ConstantComposite 35 36
              38:             TypePointer Function 8(fvec2)
              40:             TypePointer Output 7(fvec4)
 41(ts_psIn_pos):     40(ptr) Variable Output
       44(PS_IN):             TypeStruct 8(fvec2)
45(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO):             TypeStruct 15 16(int)
      46(GS_OUT):             TypeStruct 44(PS_IN) 45(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO)
              47:             TypePointer Output 46(GS_OUT)
          48(ts):     47(ptr) Variable Output
              51:             TypePointer Output 8(fvec2)
              53:             TypePointer Function 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO)
              56:             TypePointer Output 45(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO)
              59:             TypePointer Output 15
              62:             TypePointer Output 16(int)
              65:             TypeArray 7(fvec4) 11
              66:             TypePointer Input 65
     67(tin_pos):     66(ptr) Variable Input
              68:             TypePointer Input 7(fvec4)
       72(PS_IN):             TypeStruct 8(fvec2)
              73:             TypeArray 72(PS_IN) 11
              74:             TypePointer Input 73
         75(tin):     74(ptr) Variable Input
              76:             TypePointer Input 8(fvec2)
              86:     16(int) Constant 2
         4(main):           2 Function None 3
               5:             Label
         64(tin):     13(ptr) Variable Function
          93(ts):     19(ptr) Variable Function
       94(param):     13(ptr) Variable Function
       96(param):     19(ptr) Variable Function
              69:     68(ptr) AccessChain 67(tin_pos) 26
              70:    7(fvec4) Load 69
              71:     32(ptr) AccessChain 64(tin) 26 26
                              Store 71 70
              77:     76(ptr) AccessChain 75(tin) 26 26
              78:    8(fvec2) Load 77
              79:     38(ptr) AccessChain 64(tin) 26 34
                              Store 79 78
              80:     68(ptr) AccessChain 67(tin_pos) 34
              81:    7(fvec4) Load 80
              82:     32(ptr) AccessChain 64(tin) 34 26
                              Store 82 81
              83:     76(ptr) AccessChain 75(tin) 34 26
              84:    8(fvec2) Load 83
              85:     38(ptr) AccessChain 64(tin) 34 34
                              Store 85 84
              87:     68(ptr) AccessChain 67(tin_pos) 86
              88:    7(fvec4) Load 87
              89:     32(ptr) AccessChain 64(tin) 86 26
                              Store 89 88
              90:     76(ptr) AccessChain 75(tin) 86 26
              91:    8(fvec2) Load 90
              92:     38(ptr) AccessChain 64(tin) 86 34
                              Store 92 91
              95:          12 Load 64(tin)
                              Store 94(param) 95
              97:           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;) 94(param) 96(param)
              98:  18(GS_OUT) Load 96(param)
                              Store 93(ts) 98
                              Return
                              FunctionEnd
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;):           2 Function None 20
         21(tin):     13(ptr) FunctionParameter
          22(ts):     19(ptr) FunctionParameter
              24:             Label
           25(o):     19(ptr) Variable Function
              33:     32(ptr) AccessChain 25(o) 26 26
                              Store 33 31
              39:     38(ptr) AccessChain 25(o) 26 34
                              Store 39 37
              42:     32(ptr) AccessChain 25(o) 26 26
              43:    7(fvec4) Load 42
                              Store 41(ts_psIn_pos) 43
              49:     38(ptr) AccessChain 25(o) 26 34
              50:    8(fvec2) Load 49
              52:     51(ptr) AccessChain 48(ts) 26 26
                              Store 52 50
              54:     53(ptr) AccessChain 25(o) 34
              55:17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) Load 54
              57:     56(ptr) AccessChain 48(ts) 34
              58:          15 CompositeExtract 55 0
              60:     59(ptr) AccessChain 57 26
                              Store 60 58
              61:     16(int) CompositeExtract 55 1
              63:     62(ptr) AccessChain 57 34
                              Store 63 61
                              EmitVertex
                              Return
                              FunctionEnd
