hlsl.struct.split.nested.geom Shader version: 450 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 Position pos, temp 2-component vector of float tc}) 0:24 'ts' (out structure{temp structure{temp 4-component vector of float Position 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 move second child to first child (temp structure{temp structure{temp 4-component vector of float Position 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 'ts' (out structure{temp structure{temp 4-component vector of float Position 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 '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 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 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 Position pos, temp 2-component vector of float tc}) 0:? 'tin' (temp 3-element array of structure{temp 4-component vector of float Position 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 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 Position pos, temp 2-component vector of float tc}) 0:? 'tin' (temp 3-element array of structure{temp 4-component vector of float Position 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 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 Position pos, temp 2-component vector of float tc}) 0:? 'tin' (temp 3-element array of structure{temp 4-component vector of float Position 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 Position pos, temp 2-component vector of float tc}) 0:? 'ts' (temp structure{temp structure{temp 4-component vector of float Position 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:? 'PerVertex_in' (in 3-element array of block{in 4-component vector of float Position tin_pos}) Linked geometry stage: Shader version: 450 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 Position pos, temp 2-component vector of float tc}) 0:24 'ts' (out structure{temp structure{temp 4-component vector of float Position 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 move second child to first child (temp structure{temp structure{temp 4-component vector of float Position 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 'ts' (out structure{temp structure{temp 4-component vector of float Position 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 '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 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 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 Position pos, temp 2-component vector of float tc}) 0:? 'tin' (temp 3-element array of structure{temp 4-component vector of float Position 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 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 Position pos, temp 2-component vector of float tc}) 0:? 'tin' (temp 3-element array of structure{temp 4-component vector of float Position 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 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 Position pos, temp 2-component vector of float tc}) 0:? 'tin' (temp 3-element array of structure{temp 4-component vector of float Position 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 Position pos, temp 2-component vector of float tc}) 0:? 'ts' (temp structure{temp structure{temp 4-component vector of float Position 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:? 'PerVertex_in' (in 3-element array of block{in 4-component vector of float Position tin_pos}) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 86 Capability Geometry 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Geometry 4 "main" 65 85 ExecutionMode 4 Triangles ExecutionMode 4 Invocations 1 ExecutionMode 4 OutputTriangleStrip ExecutionMode 4 OutputVertices 3 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 "PS_IN" MemberName 25(PS_IN) 0 "pos" MemberName 25(PS_IN) 1 "tc" Name 26 "STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO" MemberName 26(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 0 "m0_array" MemberName 26(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 1 "m1" Name 27 "GS_OUT" MemberName 27(GS_OUT) 0 "psIn" MemberName 27(GS_OUT) 1 "contains_no_builtin_io" Name 29 "o" Name 61 "tin" Name 62 "PS_IN" MemberName 62(PS_IN) 0 "tc" Name 65 "tin" Name 77 "ts" Name 78 "param" Name 80 "param" Name 82 "PerVertex_in" MemberName 82(PerVertex_in) 0 "tin_pos" Name 85 "PerVertex_in" MemberDecorate 9(PS_IN) 0 BuiltIn Position Decorate 65(tin) Location 0 MemberDecorate 82(PerVertex_in) 0 BuiltIn Position Decorate 82(PerVertex_in) Block 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) 25(PS_IN): TypeStruct 7(fvec4) 8(fvec2) 26(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO): TypeStruct 15 16(int) 27(GS_OUT): TypeStruct 25(PS_IN) 26(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 28: TypePointer Function 27(GS_OUT) 30: 16(int) Constant 0 31: 6(float) Constant 1065353216 32: 6(float) Constant 1073741824 33: 6(float) Constant 1077936128 34: 6(float) Constant 1082130432 35: 7(fvec4) ConstantComposite 31 32 33 34 36: TypePointer Function 7(fvec4) 38: 16(int) Constant 1 39: 6(float) Constant 1084227584 40: 6(float) Constant 1086324736 41: 8(fvec2) ConstantComposite 39 40 42: TypePointer Function 8(fvec2) 46: TypePointer Function 9(PS_IN) 53: TypePointer Function 17(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) 56: TypePointer Function 15 59: TypePointer Function 16(int) 62(PS_IN): TypeStruct 8(fvec2) 63: TypeArray 62(PS_IN) 11 64: TypePointer Input 63 65(tin): 64(ptr) Variable Input 66: TypePointer Input 8(fvec2) 73: 16(int) Constant 2 82(PerVertex_in): TypeStruct 7(fvec4) 83: TypeArray 82(PerVertex_in) 11 84: TypePointer Input 83 85(PerVertex_in): 84(ptr) Variable Input 4(main): 2 Function None 3 5: Label 61(tin): 13(ptr) Variable Function 77(ts): 19(ptr) Variable Function 78(param): 13(ptr) Variable Function 80(param): 19(ptr) Variable Function 67: 66(ptr) AccessChain 65(tin) 30 30 68: 8(fvec2) Load 67 69: 42(ptr) AccessChain 61(tin) 30 38 Store 69 68 70: 66(ptr) AccessChain 65(tin) 38 30 71: 8(fvec2) Load 70 72: 42(ptr) AccessChain 61(tin) 38 38 Store 72 71 74: 66(ptr) AccessChain 65(tin) 73 30 75: 8(fvec2) Load 74 76: 42(ptr) AccessChain 61(tin) 73 38 Store 76 75 79: 12 Load 61(tin) Store 78(param) 79 81: 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;) 78(param) 80(param) 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 29(o): 28(ptr) Variable Function 37: 36(ptr) AccessChain 29(o) 30 30 Store 37 35 43: 42(ptr) AccessChain 29(o) 30 38 Store 43 41 44: 27(GS_OUT) Load 29(o) 45: 25(PS_IN) CompositeExtract 44 0 47: 46(ptr) AccessChain 22(ts) 30 48: 7(fvec4) CompositeExtract 45 0 49: 36(ptr) AccessChain 47 30 Store 49 48 50: 8(fvec2) CompositeExtract 45 1 51: 42(ptr) AccessChain 47 38 Store 51 50 52:26(STRUCT_WITH_NO_BUILTIN_INTERSTAGE_IO) CompositeExtract 44 1 54: 53(ptr) AccessChain 22(ts) 38 55: 15 CompositeExtract 52 0 57: 56(ptr) AccessChain 54 30 Store 57 55 58: 16(int) CompositeExtract 52 1 60: 59(ptr) AccessChain 54 38 Store 60 58 EmitVertex Return FunctionEnd