hlsl.struct.split.trivial.vert Shader version: 500 0:? Sequence 0:16 Function Definition: @main(struct-VS_INPUT-vf41;vf4; ( temp structure{ temp 4-component vector of float Pos}) 0:16 Function Parameters: 0:16 'vsin' ( in structure{ temp 4-component vector of float Pos_in}) 0:16 'Pos_loose' ( in 4-component vector of float) 0:? Sequence 0:19 move second child to first child ( temp 4-component vector of float) 0:19 Pos: direct index for structure ( temp 4-component vector of float) 0:19 'vsout' ( temp structure{ temp 4-component vector of float Pos}) 0:19 Constant: 0:19 0 (const int) 0:19 add ( temp 4-component vector of float) 0:19 Pos_in: direct index for structure ( temp 4-component vector of float) 0:19 'vsin' ( in structure{ temp 4-component vector of float Pos_in}) 0:19 Constant: 0:19 0 (const int) 0:19 'Pos_loose' ( in 4-component vector of float) 0:21 Branch: Return with expression 0:21 'vsout' ( temp structure{ temp 4-component vector of float Pos}) 0:16 Function Definition: main( ( temp void) 0:16 Function Parameters: 0:? Sequence 0:16 Sequence 0:16 move second child to first child ( temp 4-component vector of float) 0:16 Pos_in: direct index for structure ( temp 4-component vector of float) 0:? 'vsin' ( temp structure{ temp 4-component vector of float Pos_in}) 0:16 Constant: 0:16 0 (const int) 0:? 'Pos_in' (layout( location=0) in 4-component vector of float) 0:16 move second child to first child ( temp 4-component vector of float) 0:? 'Pos_loose' ( temp 4-component vector of float) 0:? 'Pos_loose' (layout( location=1) in 4-component vector of float) 0:16 Sequence 0:16 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput_Pos' ( out 4-component vector of float Position) 0:16 Pos: direct index for structure ( temp 4-component vector of float) 0:16 Function Call: @main(struct-VS_INPUT-vf41;vf4; ( temp structure{ temp 4-component vector of float Pos}) 0:? 'vsin' ( temp structure{ temp 4-component vector of float Pos_in}) 0:? 'Pos_loose' ( temp 4-component vector of float) 0:16 Constant: 0:16 0 (const int) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{}) 0:? 'Pos_in' (layout( location=0) in 4-component vector of float) 0:? 'Pos_loose' (layout( location=1) in 4-component vector of float) Linked vertex stage: Shader version: 500 0:? Sequence 0:16 Function Definition: @main(struct-VS_INPUT-vf41;vf4; ( temp structure{ temp 4-component vector of float Pos}) 0:16 Function Parameters: 0:16 'vsin' ( in structure{ temp 4-component vector of float Pos_in}) 0:16 'Pos_loose' ( in 4-component vector of float) 0:? Sequence 0:19 move second child to first child ( temp 4-component vector of float) 0:19 Pos: direct index for structure ( temp 4-component vector of float) 0:19 'vsout' ( temp structure{ temp 4-component vector of float Pos}) 0:19 Constant: 0:19 0 (const int) 0:19 add ( temp 4-component vector of float) 0:19 Pos_in: direct index for structure ( temp 4-component vector of float) 0:19 'vsin' ( in structure{ temp 4-component vector of float Pos_in}) 0:19 Constant: 0:19 0 (const int) 0:19 'Pos_loose' ( in 4-component vector of float) 0:21 Branch: Return with expression 0:21 'vsout' ( temp structure{ temp 4-component vector of float Pos}) 0:16 Function Definition: main( ( temp void) 0:16 Function Parameters: 0:? Sequence 0:16 Sequence 0:16 move second child to first child ( temp 4-component vector of float) 0:16 Pos_in: direct index for structure ( temp 4-component vector of float) 0:? 'vsin' ( temp structure{ temp 4-component vector of float Pos_in}) 0:16 Constant: 0:16 0 (const int) 0:? 'Pos_in' (layout( location=0) in 4-component vector of float) 0:16 move second child to first child ( temp 4-component vector of float) 0:? 'Pos_loose' ( temp 4-component vector of float) 0:? 'Pos_loose' (layout( location=1) in 4-component vector of float) 0:16 Sequence 0:16 move second child to first child ( temp 4-component vector of float) 0:? '@entryPointOutput_Pos' ( out 4-component vector of float Position) 0:16 Pos: direct index for structure ( temp 4-component vector of float) 0:16 Function Call: @main(struct-VS_INPUT-vf41;vf4; ( temp structure{ temp 4-component vector of float Pos}) 0:? 'vsin' ( temp structure{ temp 4-component vector of float Pos_in}) 0:? 'Pos_loose' ( temp 4-component vector of float) 0:16 Constant: 0:16 0 (const int) 0:? Linker Objects 0:? '@entryPointOutput' (layout( location=0) out structure{}) 0:? 'Pos_in' (layout( location=0) in 4-component vector of float) 0:? 'Pos_loose' (layout( location=1) in 4-component vector of float) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 48 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Vertex 4 "main" 31 35 38 47 Source HLSL 500 Name 4 "main" Name 8 "VS_INPUT" MemberName 8(VS_INPUT) 0 "Pos_in" Name 11 "VS_OUTPUT" MemberName 11(VS_OUTPUT) 0 "Pos" Name 15 "@main(struct-VS_INPUT-vf41;vf4;" Name 13 "vsin" Name 14 "Pos_loose" Name 18 "vsout" Name 29 "vsin" Name 31 "Pos_in" Name 34 "Pos_loose" Name 35 "Pos_loose" Name 38 "@entryPointOutput_Pos" Name 39 "param" Name 41 "param" Name 45 "VS_OUTPUT" Name 47 "@entryPointOutput" Decorate 31(Pos_in) Location 0 Decorate 35(Pos_loose) Location 1 Decorate 38(@entryPointOutput_Pos) BuiltIn Position Decorate 47(@entryPointOutput) Location 0 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8(VS_INPUT): TypeStruct 7(fvec4) 9: TypePointer Function 8(VS_INPUT) 10: TypePointer Function 7(fvec4) 11(VS_OUTPUT): TypeStruct 7(fvec4) 12: TypeFunction 11(VS_OUTPUT) 9(ptr) 10(ptr) 17: TypePointer Function 11(VS_OUTPUT) 19: TypeInt 32 1 20: 19(int) Constant 0 30: TypePointer Input 7(fvec4) 31(Pos_in): 30(ptr) Variable Input 35(Pos_loose): 30(ptr) Variable Input 37: TypePointer Output 7(fvec4) 38(@entryPointOutput_Pos): 37(ptr) Variable Output 45(VS_OUTPUT): TypeStruct 46: TypePointer Output 45(VS_OUTPUT) 47(@entryPointOutput): 46(ptr) Variable Output 4(main): 2 Function None 3 5: Label 29(vsin): 9(ptr) Variable Function 34(Pos_loose): 10(ptr) Variable Function 39(param): 9(ptr) Variable Function 41(param): 10(ptr) Variable Function 32: 7(fvec4) Load 31(Pos_in) 33: 10(ptr) AccessChain 29(vsin) 20 Store 33 32 36: 7(fvec4) Load 35(Pos_loose) Store 34(Pos_loose) 36 40: 8(VS_INPUT) Load 29(vsin) Store 39(param) 40 42: 7(fvec4) Load 34(Pos_loose) Store 41(param) 42 43:11(VS_OUTPUT) FunctionCall 15(@main(struct-VS_INPUT-vf41;vf4;) 39(param) 41(param) 44: 7(fvec4) CompositeExtract 43 0 Store 38(@entryPointOutput_Pos) 44 Return FunctionEnd 15(@main(struct-VS_INPUT-vf41;vf4;):11(VS_OUTPUT) Function None 12 13(vsin): 9(ptr) FunctionParameter 14(Pos_loose): 10(ptr) FunctionParameter 16: Label 18(vsout): 17(ptr) Variable Function 21: 10(ptr) AccessChain 13(vsin) 20 22: 7(fvec4) Load 21 23: 7(fvec4) Load 14(Pos_loose) 24: 7(fvec4) FAdd 22 23 25: 10(ptr) AccessChain 18(vsout) 20 Store 25 24 26:11(VS_OUTPUT) Load 18(vsout) ReturnValue 26 FunctionEnd