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