hlsl.structin.vert Shader version: 500 0:? Sequence 0:8 Function Definition: @main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4; ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Function Parameters: 0:8 'd' ( in 4-component vector of float) 0:8 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 'e' ( in 4-component vector of float) 0:? Sequence 0:11 move second child to first child ( temp 4-component vector of float) 0:11 b: direct index for structure ( temp 4-component vector of float) 0:11 'local' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 2 (const int) 0:11 add ( temp 4-component vector of float) 0:11 add ( temp 4-component vector of float) 0:11 add ( temp 4-component vector of float) 0:11 add ( temp 4-component vector of float) 0:11 direct index ( temp 4-component vector of float) 0:11 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:11 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 0 (const int) 0:11 Constant: 0:11 1 (const int) 0:11 direct index ( temp 4-component vector of float) 0:11 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:11 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 0 (const int) 0:11 Constant: 0:11 0 (const int) 0:11 Construct vec4 ( temp 4-component vector of float) 0:11 Convert uint to float ( temp float) 0:11 direct index ( temp uint) 0:11 coord: direct index for structure ( temp 2-component vector of uint) 0:11 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 1 (const int) 0:11 Constant: 0:11 0 (const int) 0:11 'd' ( in 4-component vector of float) 0:11 'e' ( in 4-component vector of float) 0:13 Branch: Return with expression 0:13 'local' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Function Definition: main( ( temp void) 0:8 Function Parameters: 0:? Sequence 0:8 move second child to first child ( temp 4-component vector of float) 0:? 'd' ( temp 4-component vector of float) 0:? 'd' (layout( location=0) in 4-component vector of float) 0:8 Sequence 0:8 move second child to first child ( temp 4-component vector of float) 0:8 direct index ( temp 4-component vector of float) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 Constant: 0:8 0 (const int) 0:? 'm[0]' (layout( location=1) in 4-component vector of float) 0:8 move second child to first child ( temp 4-component vector of float) 0:8 direct index ( temp 4-component vector of float) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 Constant: 0:8 1 (const int) 0:? 'm[1]' (layout( location=2) in 4-component vector of float) 0:8 move second child to first child ( temp 2-component vector of uint) 0:8 coord: direct index for structure ( temp 2-component vector of uint) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 1 (const int) 0:? 'coord' (layout( location=3) in 2-component vector of uint) 0:8 move second child to first child ( temp 4-component vector of float) 0:8 b: direct index for structure ( temp 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 2 (const int) 0:? 'b' (layout( location=4) in 4-component vector of float) 0:8 move second child to first child ( temp 4-component vector of float) 0:? 'e' ( temp 4-component vector of float) 0:? 'e' (layout( location=5) in 4-component vector of float) 0:8 Sequence 0:8 move second child to first child ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Function Call: @main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4; ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:? 'd' ( temp 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:? 'e' ( temp 4-component vector of float) 0:8 move second child to first child ( temp 2-element array of 4-component vector of float) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:8 '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 move second child to first child ( temp 2-component vector of uint) 0:8 coord: direct index for structure ( temp 2-component vector of uint) 0:8 '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 1 (const int) 0:8 coord: direct index for structure ( temp 2-component vector of uint) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 1 (const int) 0:8 move second child to first child ( temp 4-component vector of float) 0:8 b: direct index for structure ( temp 4-component vector of float) 0:8 '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 2 (const int) 0:8 b: direct index for structure ( temp 4-component vector of float) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 2 (const int) 0:? Linker Objects 0:? '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:? 'd' (layout( location=0) in 4-component vector of float) 0:? 'm[0]' (layout( location=1) in 4-component vector of float) 0:? 'm[1]' (layout( location=2) in 4-component vector of float) 0:? 'm[0]' (layout( location=1) in 4-component vector of float) 0:? 'm[1]' (layout( location=2) in 4-component vector of float) 0:? 'coord' (layout( location=3) in 2-component vector of uint) 0:? 'b' (layout( location=4) in 4-component vector of float) 0:? 'e' (layout( location=5) in 4-component vector of float) Linked vertex stage: Shader version: 500 0:? Sequence 0:8 Function Definition: @main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4; ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Function Parameters: 0:8 'd' ( in 4-component vector of float) 0:8 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 'e' ( in 4-component vector of float) 0:? Sequence 0:11 move second child to first child ( temp 4-component vector of float) 0:11 b: direct index for structure ( temp 4-component vector of float) 0:11 'local' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 2 (const int) 0:11 add ( temp 4-component vector of float) 0:11 add ( temp 4-component vector of float) 0:11 add ( temp 4-component vector of float) 0:11 add ( temp 4-component vector of float) 0:11 direct index ( temp 4-component vector of float) 0:11 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:11 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 0 (const int) 0:11 Constant: 0:11 1 (const int) 0:11 direct index ( temp 4-component vector of float) 0:11 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:11 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 0 (const int) 0:11 Constant: 0:11 0 (const int) 0:11 Construct vec4 ( temp 4-component vector of float) 0:11 Convert uint to float ( temp float) 0:11 direct index ( temp uint) 0:11 coord: direct index for structure ( temp 2-component vector of uint) 0:11 'vi' ( in structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:11 Constant: 0:11 1 (const int) 0:11 Constant: 0:11 0 (const int) 0:11 'd' ( in 4-component vector of float) 0:11 'e' ( in 4-component vector of float) 0:13 Branch: Return with expression 0:13 'local' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Function Definition: main( ( temp void) 0:8 Function Parameters: 0:? Sequence 0:8 move second child to first child ( temp 4-component vector of float) 0:? 'd' ( temp 4-component vector of float) 0:? 'd' (layout( location=0) in 4-component vector of float) 0:8 Sequence 0:8 move second child to first child ( temp 4-component vector of float) 0:8 direct index ( temp 4-component vector of float) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 Constant: 0:8 0 (const int) 0:? 'm[0]' (layout( location=1) in 4-component vector of float) 0:8 move second child to first child ( temp 4-component vector of float) 0:8 direct index ( temp 4-component vector of float) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 Constant: 0:8 1 (const int) 0:? 'm[1]' (layout( location=2) in 4-component vector of float) 0:8 move second child to first child ( temp 2-component vector of uint) 0:8 coord: direct index for structure ( temp 2-component vector of uint) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 1 (const int) 0:? 'coord' (layout( location=3) in 2-component vector of uint) 0:8 move second child to first child ( temp 4-component vector of float) 0:8 b: direct index for structure ( temp 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 2 (const int) 0:? 'b' (layout( location=4) in 4-component vector of float) 0:8 move second child to first child ( temp 4-component vector of float) 0:? 'e' ( temp 4-component vector of float) 0:? 'e' (layout( location=5) in 4-component vector of float) 0:8 Sequence 0:8 move second child to first child ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Function Call: @main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4; ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:? 'd' ( temp 4-component vector of float) 0:? 'vi' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:? 'e' ( temp 4-component vector of float) 0:8 move second child to first child ( temp 2-element array of 4-component vector of float) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:8 '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 m: direct index for structure ( temp 2-element array of 4-component vector of float) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 0 (const int) 0:8 move second child to first child ( temp 2-component vector of uint) 0:8 coord: direct index for structure ( temp 2-component vector of uint) 0:8 '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 1 (const int) 0:8 coord: direct index for structure ( temp 2-component vector of uint) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 1 (const int) 0:8 move second child to first child ( temp 4-component vector of float) 0:8 b: direct index for structure ( temp 4-component vector of float) 0:8 '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 2 (const int) 0:8 b: direct index for structure ( temp 4-component vector of float) 0:8 'flattenTemp' ( temp structure{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:8 Constant: 0:8 2 (const int) 0:? Linker Objects 0:? '@entryPointOutput' ( out structure Position{ temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b}) 0:? 'd' (layout( location=0) in 4-component vector of float) 0:? 'm[0]' (layout( location=1) in 4-component vector of float) 0:? 'm[1]' (layout( location=2) in 4-component vector of float) 0:? 'm[0]' (layout( location=1) in 4-component vector of float) 0:? 'm[1]' (layout( location=2) in 4-component vector of float) 0:? 'coord' (layout( location=3) in 2-component vector of uint) 0:? 'b' (layout( location=4) in 4-component vector of float) 0:? 'e' (layout( location=5) in 4-component vector of float) // Module Version 10000 // Generated by (magic number): 80001 // Id's are bound by 92 Capability Shader 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Vertex 4 "main" 48 51 54 58 62 66 78 Source HLSL 500 Name 4 "main" Name 13 "VI" MemberName 13(VI) 0 "m" MemberName 13(VI) 1 "coord" MemberName 13(VI) 2 "b" Name 19 "@main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4;" Name 16 "d" Name 17 "vi" Name 18 "e" Name 21 "local" Name 46 "d" Name 48 "d" Name 50 "vi" Name 51 "m[0]" Name 54 "m[1]" Name 58 "coord" Name 62 "b" Name 65 "e" Name 66 "e" Name 68 "flattenTemp" Name 69 "param" Name 71 "param" Name 73 "param" Name 76 "VI" MemberName 76(VI) 0 "m" MemberName 76(VI) 1 "coord" MemberName 76(VI) 2 "b" Name 78 "@entryPointOutput" Decorate 48(d) Location 0 Decorate 51(m[0]) Location 1 Decorate 54(m[1]) Location 2 Decorate 58(coord) Location 3 Decorate 62(b) Location 4 Decorate 66(e) Location 5 Decorate 78(@entryPointOutput) BuiltIn Position 2: TypeVoid 3: TypeFunction 2 6: TypeFloat 32 7: TypeVector 6(float) 4 8: TypePointer Function 7(fvec4) 9: TypeInt 32 0 10: 9(int) Constant 2 11: TypeArray 7(fvec4) 10 12: TypeVector 9(int) 2 13(VI): TypeStruct 11 12(ivec2) 7(fvec4) 14: TypePointer Function 13(VI) 15: TypeFunction 13(VI) 8(ptr) 14(ptr) 8(ptr) 22: TypeInt 32 1 23: 22(int) Constant 2 24: 22(int) Constant 0 25: 22(int) Constant 1 31: 9(int) Constant 0 32: TypePointer Function 9(int) 47: TypePointer Input 7(fvec4) 48(d): 47(ptr) Variable Input 51(m[0]): 47(ptr) Variable Input 54(m[1]): 47(ptr) Variable Input 57: TypePointer Input 12(ivec2) 58(coord): 57(ptr) Variable Input 60: TypePointer Function 12(ivec2) 62(b): 47(ptr) Variable Input 66(e): 47(ptr) Variable Input 76(VI): TypeStruct 11 12(ivec2) 7(fvec4) 77: TypePointer Output 76(VI) 78(@entryPointOutput): 77(ptr) Variable Output 79: TypePointer Function 11 82: TypePointer Output 11 86: TypePointer Output 12(ivec2) 90: TypePointer Output 7(fvec4) 4(main): 2 Function None 3 5: Label 46(d): 8(ptr) Variable Function 50(vi): 14(ptr) Variable Function 65(e): 8(ptr) Variable Function 68(flattenTemp): 14(ptr) Variable Function 69(param): 8(ptr) Variable Function 71(param): 14(ptr) Variable Function 73(param): 8(ptr) Variable Function 49: 7(fvec4) Load 48(d) Store 46(d) 49 52: 7(fvec4) Load 51(m[0]) 53: 8(ptr) AccessChain 50(vi) 24 24 Store 53 52 55: 7(fvec4) Load 54(m[1]) 56: 8(ptr) AccessChain 50(vi) 24 25 Store 56 55 59: 12(ivec2) Load 58(coord) 61: 60(ptr) AccessChain 50(vi) 25 Store 61 59 63: 7(fvec4) Load 62(b) 64: 8(ptr) AccessChain 50(vi) 23 Store 64 63 67: 7(fvec4) Load 66(e) Store 65(e) 67 70: 7(fvec4) Load 46(d) Store 69(param) 70 72: 13(VI) Load 50(vi) Store 71(param) 72 74: 7(fvec4) Load 65(e) Store 73(param) 74 75: 13(VI) FunctionCall 19(@main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4;) 69(param) 71(param) 73(param) Store 68(flattenTemp) 75 80: 79(ptr) AccessChain 68(flattenTemp) 24 81: 11 Load 80 83: 82(ptr) AccessChain 78(@entryPointOutput) 24 Store 83 81 84: 60(ptr) AccessChain 68(flattenTemp) 25 85: 12(ivec2) Load 84 87: 86(ptr) AccessChain 78(@entryPointOutput) 25 Store 87 85 88: 8(ptr) AccessChain 68(flattenTemp) 23 89: 7(fvec4) Load 88 91: 90(ptr) AccessChain 78(@entryPointOutput) 23 Store 91 89 Return FunctionEnd 19(@main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4;): 13(VI) Function None 15 16(d): 8(ptr) FunctionParameter 17(vi): 14(ptr) FunctionParameter 18(e): 8(ptr) FunctionParameter 20: Label 21(local): 14(ptr) Variable Function 26: 8(ptr) AccessChain 17(vi) 24 25 27: 7(fvec4) Load 26 28: 8(ptr) AccessChain 17(vi) 24 24 29: 7(fvec4) Load 28 30: 7(fvec4) FAdd 27 29 33: 32(ptr) AccessChain 17(vi) 25 31 34: 9(int) Load 33 35: 6(float) ConvertUToF 34 36: 7(fvec4) CompositeConstruct 35 35 35 35 37: 7(fvec4) FAdd 30 36 38: 7(fvec4) Load 16(d) 39: 7(fvec4) FAdd 37 38 40: 7(fvec4) Load 18(e) 41: 7(fvec4) FAdd 39 40 42: 8(ptr) AccessChain 21(local) 23 Store 42 41 43: 13(VI) Load 21(local) ReturnValue 43 FunctionEnd