blob: c0f3a53bc96c860bcab57d3e7356953f716d073e [file] [log] [blame]
hlsl.struct.split-1.vert
Shader version: 500
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:? 'vsin.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:? 'vsin.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:? 'vsin.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:? '@entryPointOutput.x0_out' (layout( location=0) out 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:? '@entryPointOutput.x1_out' (layout( location=1) out 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.Pos_out' ( out 4-component vector of float Position)
0:? '@entryPointOutput.x0_out' (layout( location=0) out int)
0:? '@entryPointOutput.x1_out' (layout( location=1) out int)
0:? 'vsin.x0_in' (layout( location=0) in int)
0:? 'vsin.Pos_in' (layout( location=1) in 4-component vector of float)
0:? 'vsin.x1_in' (layout( location=2) in int)
0:? 'Pos_loose' (layout( location=3) in 4-component vector of float)
Linked vertex stage:
Shader version: 500
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:? 'vsin.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:? 'vsin.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:? 'vsin.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:? '@entryPointOutput.x0_out' (layout( location=0) out 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:? '@entryPointOutput.x1_out' (layout( location=1) out 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.Pos_out' ( out 4-component vector of float Position)
0:? '@entryPointOutput.x0_out' (layout( location=0) out int)
0:? '@entryPointOutput.x1_out' (layout( location=1) out int)
0:? 'vsin.x0_in' (layout( location=0) in int)
0:? 'vsin.Pos_in' (layout( location=1) in 4-component vector of float)
0:? 'vsin.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): 80003
// Id's are bound by 70
Capability Shader
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Vertex 4 "main" 40 44 47 51 60 64 67
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 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 "vsin.x0_in"
Name 44 "vsin.Pos_in"
Name 47 "vsin.x1_in"
Name 50 "Pos_loose"
Name 51 "Pos_loose"
Name 53 "flattenTemp"
Name 54 "param"
Name 56 "param"
Name 60 "@entryPointOutput.x0_out"
Name 64 "@entryPointOutput.Pos_out"
Name 67 "@entryPointOutput.x1_out"
Decorate 40(vsin.x0_in) Location 0
Decorate 44(vsin.Pos_in) Location 1
Decorate 47(vsin.x1_in) Location 2
Decorate 51(Pos_loose) Location 3
Decorate 60(@entryPointOutput.x0_out) Location 0
Decorate 64(@entryPointOutput.Pos_out) BuiltIn Position
Decorate 67(@entryPointOutput.x1_out) Location 1
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(vsin.x0_in): 39(ptr) Variable Input
43: TypePointer Input 8(fvec4)
44(vsin.Pos_in): 43(ptr) Variable Input
47(vsin.x1_in): 39(ptr) Variable Input
51(Pos_loose): 43(ptr) Variable Input
59: TypePointer Output 6(int)
60(@entryPointOutput.x0_out): 59(ptr) Variable Output
63: TypePointer Output 8(fvec4)
64(@entryPointOutput.Pos_out): 63(ptr) Variable Output
67(@entryPointOutput.x1_out): 59(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(vsin.x0_in)
42: 21(ptr) AccessChain 38(vsin) 20
Store 42 41
45: 8(fvec4) Load 44(vsin.Pos_in)
46: 11(ptr) AccessChain 38(vsin) 25
Store 46 45
48: 6(int) Load 47(vsin.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
61: 21(ptr) AccessChain 53(flattenTemp) 20
62: 6(int) Load 61
Store 60(@entryPointOutput.x0_out) 62
65: 11(ptr) AccessChain 53(flattenTemp) 25
66: 8(fvec4) Load 65
Store 64(@entryPointOutput.Pos_out) 66
68: 21(ptr) AccessChain 53(flattenTemp) 31
69: 6(int) Load 68
Store 67(@entryPointOutput.x1_out) 69
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