hlsl.struct.split.call.vert Shader version: 500 0:? Sequence 0:17 Function Definition: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 0:17 Function Parameters: 0:17 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:17 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:? Sequence 0:18 add ( temp 4-component vector of float) 0:18 Pos_in: direct index for structure ( temp 4-component vector of float) 0:18 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:18 Constant: 0:18 1 (const int) 0:18 Pos_out: direct index for structure ( temp 4-component vector of float) 0:18 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:18 Constant: 0:18 1 (const int) 0:22 Function Definition: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Function Parameters: 0:22 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:? Sequence 0:25 move second child to first child ( temp int) 0:25 x0_out: direct index for structure ( temp int) 0:25 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:25 Constant: 0:25 0 (const int) 0:25 x0_in: direct index for structure ( temp int) 0:25 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:25 Constant: 0:25 0 (const int) 0:26 move second child to first child ( temp 4-component vector of float) 0:26 Pos_out: direct index for structure ( temp 4-component vector of float) 0:26 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:26 Constant: 0:26 1 (const int) 0:26 Pos_in: direct index for structure ( temp 4-component vector of float) 0:26 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:26 Constant: 0:26 1 (const int) 0:27 move second child to first child ( temp int) 0:27 x1_out: direct index for structure ( temp int) 0:27 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:27 Constant: 0:27 2 (const int) 0:27 x1_in: direct index for structure ( temp int) 0:27 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:27 Constant: 0:27 2 (const int) 0:29 Function Call: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 0:29 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:29 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:31 Branch: Return with expression 0:31 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Function Definition: main( ( temp void) 0:22 Function Parameters: 0:? Sequence 0:22 Sequence 0:22 move second child to first child ( temp int) 0:22 x0_in: direct index for structure ( temp int) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 Constant: 0:22 0 (const int) 0:? 'x0_in' (layout( location=0) in int) 0:22 move second child to first child ( temp 4-component vector of float) 0:22 Pos_in: direct index for structure ( temp 4-component vector of float) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 Constant: 0:22 1 (const int) 0:? 'Pos_in' (layout( location=1) in 4-component vector of float) 0:22 move second child to first child ( temp int) 0:22 x1_in: direct index for structure ( temp int) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 Constant: 0:22 2 (const int) 0:? 'x1_in' (layout( location=2) in int) 0:22 Sequence 0:22 move second child to first child ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Function Call: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 move second child to first child ( temp int) 0:22 x0_out: direct index for structure ( temp int) 0:22 '@entryPointOutput' (layout( location=0) out structure{ temp int x0_out, temp int x1_out}) 0:22 Constant: 0:22 0 (const int) 0:22 x0_out: direct index for structure ( temp int) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Constant: 0:22 0 (const int) 0:22 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput_Pos_out' ( out 4-component vector of float Position) 0:22 Pos_out: direct index for structure ( temp 4-component vector of float) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Constant: 0:22 1 (const int) 0:22 move second child to first child ( temp int) 0:22 x1_out: direct index for structure ( temp int) 0:22 '@entryPointOutput' (layout( location=0) out structure{ temp int x0_out, temp int x1_out}) 0:22 Constant: 0:22 1 (const int) 0:22 x1_out: direct index for structure ( temp int) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Constant: 0:22 2 (const int) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{ temp int x0_out, temp int x1_out}) 0:? 'x0_in' (layout( location=0) in int) 0:? 'Pos_in' (layout( location=1) in 4-component vector of float) 0:? 'x1_in' (layout( location=2) in int) Linked vertex stage: Shader version: 500 0:? Sequence 0:17 Function Definition: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 0:17 Function Parameters: 0:17 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:17 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:? Sequence 0:18 add ( temp 4-component vector of float) 0:18 Pos_in: direct index for structure ( temp 4-component vector of float) 0:18 'fn1_in' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:18 Constant: 0:18 1 (const int) 0:18 Pos_out: direct index for structure ( temp 4-component vector of float) 0:18 'fn1_out' ( in structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:18 Constant: 0:18 1 (const int) 0:22 Function Definition: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Function Parameters: 0:22 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:? Sequence 0:25 move second child to first child ( temp int) 0:25 x0_out: direct index for structure ( temp int) 0:25 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:25 Constant: 0:25 0 (const int) 0:25 x0_in: direct index for structure ( temp int) 0:25 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:25 Constant: 0:25 0 (const int) 0:26 move second child to first child ( temp 4-component vector of float) 0:26 Pos_out: direct index for structure ( temp 4-component vector of float) 0:26 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:26 Constant: 0:26 1 (const int) 0:26 Pos_in: direct index for structure ( temp 4-component vector of float) 0:26 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:26 Constant: 0:26 1 (const int) 0:27 move second child to first child ( temp int) 0:27 x1_out: direct index for structure ( temp int) 0:27 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:27 Constant: 0:27 2 (const int) 0:27 x1_in: direct index for structure ( temp int) 0:27 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:27 Constant: 0:27 2 (const int) 0:29 Function Call: Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11; ( temp void) 0:29 'vsin' ( in structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:29 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:31 Branch: Return with expression 0:31 'vsout' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Function Definition: main( ( temp void) 0:22 Function Parameters: 0:? Sequence 0:22 Sequence 0:22 move second child to first child ( temp int) 0:22 x0_in: direct index for structure ( temp int) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 Constant: 0:22 0 (const int) 0:? 'x0_in' (layout( location=0) in int) 0:22 move second child to first child ( temp 4-component vector of float) 0:22 Pos_in: direct index for structure ( temp 4-component vector of float) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 Constant: 0:22 1 (const int) 0:? 'Pos_in' (layout( location=1) in 4-component vector of float) 0:22 move second child to first child ( temp int) 0:22 x1_in: direct index for structure ( temp int) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 Constant: 0:22 2 (const int) 0:? 'x1_in' (layout( location=2) in int) 0:22 Sequence 0:22 move second child to first child ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Function Call: @main(struct-VS_INPUT-i1-vf4-i11; ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:? 'vsin' ( temp structure{ temp int x0_in, temp 4-component vector of float Pos_in, temp int x1_in}) 0:22 move second child to first child ( temp int) 0:22 x0_out: direct index for structure ( temp int) 0:22 '@entryPointOutput' (layout( location=0) out structure{ temp int x0_out, temp int x1_out}) 0:22 Constant: 0:22 0 (const int) 0:22 x0_out: direct index for structure ( temp int) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Constant: 0:22 0 (const int) 0:22 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput_Pos_out' ( out 4-component vector of float Position) 0:22 Pos_out: direct index for structure ( temp 4-component vector of float) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Constant: 0:22 1 (const int) 0:22 move second child to first child ( temp int) 0:22 x1_out: direct index for structure ( temp int) 0:22 '@entryPointOutput' (layout( location=0) out structure{ temp int x0_out, temp int x1_out}) 0:22 Constant: 0:22 1 (const int) 0:22 x1_out: direct index for structure ( temp int) 0:22 'flattenTemp' ( temp structure{ temp int x0_out, temp 4-component vector of float Pos_out, temp int x1_out}) 0:22 Constant: 0:22 2 (const int) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{ temp int x0_out, temp int x1_out}) 0:? 'x0_in' (layout( location=0) in int) 0:? 'Pos_in' (layout( location=1) in 4-component vector of float) 0:? 'x1_in' (layout( location=2) in int) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 80 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Vertex 4 "main" 52 56 59 68 74 Source HLSL 500 Name 4 "main" Name 9 "VS_INPUT" MemberName 9(VS_INPUT) 0 "x0_in" MemberName 9(VS_INPUT) 1 "Pos_in" MemberName 9(VS_INPUT) 2 "x1_in" Name 11 "VS_OUTPUT" MemberName 11(VS_OUTPUT) 0 "x0_out" MemberName 11(VS_OUTPUT) 1 "Pos_out" MemberName 11(VS_OUTPUT) 2 "x1_out" Name 16 "Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11;" Name 14 "fn1_in" Name 15 "fn1_out" Name 20 "@main(struct-VS_INPUT-i1-vf4-i11;" Name 19 "vsin" Name 29 "vsout" Name 42 "param" Name 44 "param" Name 50 "vsin" Name 52 "x0_in" Name 56 "Pos_in" Name 59 "x1_in" Name 62 "flattenTemp" Name 63 "param" Name 66 "VS_OUTPUT" MemberName 66(VS_OUTPUT) 0 "x0_out" MemberName 66(VS_OUTPUT) 1 "x1_out" Name 68 "@entryPointOutput" Name 74 "@entryPointOutput_Pos_out" Decorate 52(x0_in) Location 0 Decorate 56(Pos_in) Location 1 Decorate 59(x1_in) Location 2 Decorate 68(@entryPointOutput) Location 0 Decorate 74(@entryPointOutput_Pos_out) BuiltIn Position 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 1 7: TypeFloat 32 8: TypeVector 7(float) 4 9(VS_INPUT): TypeStruct 6(int) 8(fvec4) 6(int) 10: TypePointer Function 9(VS_INPUT) 11(VS_OUTPUT): TypeStruct 6(int) 8(fvec4) 6(int) 12: TypePointer Function 11(VS_OUTPUT) 13: TypeFunction 2 10(ptr) 12(ptr) 18: TypeFunction 11(VS_OUTPUT) 10(ptr) 22: 6(int) Constant 1 23: TypePointer Function 8(fvec4) 30: 6(int) Constant 0 31: TypePointer Function 6(int) 38: 6(int) Constant 2 51: TypePointer Input 6(int) 52(x0_in): 51(ptr) Variable Input 55: TypePointer Input 8(fvec4) 56(Pos_in): 55(ptr) Variable Input 59(x1_in): 51(ptr) Variable Input 66(VS_OUTPUT): TypeStruct 6(int) 6(int) 67: TypePointer Output 66(VS_OUTPUT) 68(@entryPointOutput): 67(ptr) Variable Output 71: TypePointer Output 6(int) 73: TypePointer Output 8(fvec4) 74(@entryPointOutput_Pos_out): 73(ptr) Variable Output 4(main): 2 Function None 3 5: Label 50(vsin): 10(ptr) Variable Function 62(flattenTemp): 12(ptr) Variable Function 63(param): 10(ptr) Variable Function 53: 6(int) Load 52(x0_in) 54: 31(ptr) AccessChain 50(vsin) 30 Store 54 53 57: 8(fvec4) Load 56(Pos_in) 58: 23(ptr) AccessChain 50(vsin) 22 Store 58 57 60: 6(int) Load 59(x1_in) 61: 31(ptr) AccessChain 50(vsin) 38 Store 61 60 64: 9(VS_INPUT) Load 50(vsin) Store 63(param) 64 65:11(VS_OUTPUT) FunctionCall 20(@main(struct-VS_INPUT-i1-vf4-i11;) 63(param) Store 62(flattenTemp) 65 69: 31(ptr) AccessChain 62(flattenTemp) 30 70: 6(int) Load 69 72: 71(ptr) AccessChain 68(@entryPointOutput) 30 Store 72 70 75: 23(ptr) AccessChain 62(flattenTemp) 22 76: 8(fvec4) Load 75 Store 74(@entryPointOutput_Pos_out) 76 77: 31(ptr) AccessChain 62(flattenTemp) 38 78: 6(int) Load 77 79: 71(ptr) AccessChain 68(@entryPointOutput) 22 Store 79 78 Return FunctionEnd 16(Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11;): 2 Function None 13 14(fn1_in): 10(ptr) FunctionParameter 15(fn1_out): 12(ptr) FunctionParameter 17: Label 24: 23(ptr) AccessChain 14(fn1_in) 22 25: 8(fvec4) Load 24 26: 23(ptr) AccessChain 15(fn1_out) 22 27: 8(fvec4) Load 26 28: 8(fvec4) FAdd 25 27 Return FunctionEnd 20(@main(struct-VS_INPUT-i1-vf4-i11;):11(VS_OUTPUT) Function None 18 19(vsin): 10(ptr) FunctionParameter 21: Label 29(vsout): 12(ptr) Variable Function 42(param): 10(ptr) Variable Function 44(param): 12(ptr) Variable Function 32: 31(ptr) AccessChain 19(vsin) 30 33: 6(int) Load 32 34: 31(ptr) AccessChain 29(vsout) 30 Store 34 33 35: 23(ptr) AccessChain 19(vsin) 22 36: 8(fvec4) Load 35 37: 23(ptr) AccessChain 29(vsout) 22 Store 37 36 39: 31(ptr) AccessChain 19(vsin) 38 40: 6(int) Load 39 41: 31(ptr) AccessChain 29(vsout) 38 Store 41 40 43: 9(VS_INPUT) Load 19(vsin) Store 42(param) 43 45:11(VS_OUTPUT) Load 29(vsout) Store 44(param) 45 46: 2 FunctionCall 16(Fn1(struct-VS_INPUT-i1-vf4-i11;struct-VS_OUTPUT-i1-vf4-i11;) 42(param) 44(param) 47:11(VS_OUTPUT) Load 29(vsout) ReturnValue 47 FunctionEnd