Flatten all interface variables (#2217)
Specifically, add flattening of arrayed io for geometry and tesselation shaders. Previously some interface structs just had builtins split out which caused some interfaces to not be exactly the same as that of flattened adjacent stages, affecting validation and correctness. This obviates builtin splitting. That will be removed in a followup commit. It was left in for this commit to better exhibit the functional changes that were made. Fixes #1660.
This commit is contained in:
parent
1a906168cd
commit
7c753a7253
17 changed files with 3325 additions and 1561 deletions
|
|
@ -56,9 +56,79 @@ triangle order = none
|
|||
0:22 Function Definition: main( ( temp void)
|
||||
0:22 Function Parameters:
|
||||
0:? Sequence
|
||||
0:22 move second child to first child ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' (layout( location=0) in 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Sequence
|
||||
0:22 move second child to first child ( temp 4-component vector of float)
|
||||
0:22 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 direct index (layout( location=0) in 4-component vector of float)
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 move second child to first child ( temp 3-component vector of float)
|
||||
0:22 norm: direct index for structure ( temp 3-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 direct index (layout( location=1) in 3-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 move second child to first child ( temp 4-component vector of float)
|
||||
0:22 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 direct index (layout( location=0) in 4-component vector of float)
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 move second child to first child ( temp 3-component vector of float)
|
||||
0:22 norm: direct index for structure ( temp 3-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 direct index (layout( location=1) in 3-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 move second child to first child ( temp 4-component vector of float)
|
||||
0:22 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 direct index (layout( location=0) in 4-component vector of float)
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 move second child to first child ( temp 3-component vector of float)
|
||||
0:22 norm: direct index for structure ( temp 3-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 direct index (layout( location=1) in 3-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 move second child to first child ( temp float)
|
||||
0:? 'f' ( temp float)
|
||||
0:? 'f' (layout( location=2) patch in float)
|
||||
|
|
@ -134,7 +204,8 @@ triangle order = none
|
|||
0:? Linker Objects
|
||||
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
|
||||
0:? '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
|
||||
0:? 'i' (layout( location=0) in 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:? 'f' (layout( location=2) patch in float)
|
||||
0:? 'tesscoord' ( patch in 3-component vector of float TessCoord)
|
||||
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
|
||||
|
|
@ -201,9 +272,79 @@ triangle order = none
|
|||
0:22 Function Definition: main( ( temp void)
|
||||
0:22 Function Parameters:
|
||||
0:? Sequence
|
||||
0:22 move second child to first child ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' (layout( location=0) in 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Sequence
|
||||
0:22 move second child to first child ( temp 4-component vector of float)
|
||||
0:22 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 direct index (layout( location=0) in 4-component vector of float)
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 move second child to first child ( temp 3-component vector of float)
|
||||
0:22 norm: direct index for structure ( temp 3-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 direct index (layout( location=1) in 3-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 move second child to first child ( temp 4-component vector of float)
|
||||
0:22 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 direct index (layout( location=0) in 4-component vector of float)
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 move second child to first child ( temp 3-component vector of float)
|
||||
0:22 norm: direct index for structure ( temp 3-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 direct index (layout( location=1) in 3-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 move second child to first child ( temp 4-component vector of float)
|
||||
0:22 pos: direct index for structure ( temp 4-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 Constant:
|
||||
0:22 0 (const int)
|
||||
0:22 direct index (layout( location=0) in 4-component vector of float)
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 move second child to first child ( temp 3-component vector of float)
|
||||
0:22 norm: direct index for structure ( temp 3-component vector of float)
|
||||
0:22 direct index ( temp structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i' ( temp 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 Constant:
|
||||
0:22 1 (const int)
|
||||
0:22 direct index (layout( location=1) in 3-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:22 Constant:
|
||||
0:22 2 (const int)
|
||||
0:22 move second child to first child ( temp float)
|
||||
0:? 'f' ( temp float)
|
||||
0:? 'f' (layout( location=2) patch in float)
|
||||
|
|
@ -279,7 +420,8 @@ triangle order = none
|
|||
0:? Linker Objects
|
||||
0:? '@entryPointOutput.pos' (layout( location=0) out 4-component vector of float)
|
||||
0:? '@entryPointOutput.norm' (layout( location=1) out 3-component vector of float)
|
||||
0:? 'i' (layout( location=0) in 3-element array of structure{ temp 4-component vector of float pos, temp 3-component vector of float norm})
|
||||
0:? 'i.pos' (layout( location=0) in 3-element array of 4-component vector of float)
|
||||
0:? 'i.norm' (layout( location=1) in 3-element array of 3-component vector of float)
|
||||
0:? 'f' (layout( location=2) patch in float)
|
||||
0:? 'tesscoord' ( patch in 3-component vector of float TessCoord)
|
||||
0:? 'pcf_data.flTessFactor' ( patch in 4-element array of float TessLevelOuter)
|
||||
|
|
@ -287,12 +429,12 @@ triangle order = none
|
|||
|
||||
// Module Version 10000
|
||||
// Generated by (magic number): 80008
|
||||
// Id's are bound by 103
|
||||
// Id's are bound by 125
|
||||
|
||||
Capability Tessellation
|
||||
1: ExtInstImport "GLSL.std.450"
|
||||
MemoryModel Logical GLSL450
|
||||
EntryPoint TessellationEvaluation 4 "main" 54 58 62 68 82 96 100
|
||||
EntryPoint TessellationEvaluation 4 "main" 55 62 82 85 91 104 118 122
|
||||
ExecutionMode 4 Triangles
|
||||
Source HLSL 500
|
||||
Name 4 "main"
|
||||
|
|
@ -312,31 +454,33 @@ triangle order = none
|
|||
Name 23 "pcf_data"
|
||||
Name 27 "o"
|
||||
Name 52 "i"
|
||||
Name 54 "i"
|
||||
Name 56 "f"
|
||||
Name 58 "f"
|
||||
Name 60 "tesscoord"
|
||||
Name 62 "tesscoord"
|
||||
Name 64 "pcf_data"
|
||||
Name 68 "pcf_data.flTessFactor"
|
||||
Name 82 "pcf_data.flInsideTessFactor"
|
||||
Name 86 "flattenTemp"
|
||||
Name 88 "param"
|
||||
Name 90 "param"
|
||||
Name 92 "param"
|
||||
Name 96 "@entryPointOutput.pos"
|
||||
Name 100 "@entryPointOutput.norm"
|
||||
Decorate 54(i) Location 0
|
||||
Decorate 58(f) Patch
|
||||
Decorate 58(f) Location 2
|
||||
Decorate 62(tesscoord) Patch
|
||||
Decorate 62(tesscoord) BuiltIn TessCoord
|
||||
Decorate 68(pcf_data.flTessFactor) Patch
|
||||
Decorate 68(pcf_data.flTessFactor) BuiltIn TessLevelOuter
|
||||
Decorate 82(pcf_data.flInsideTessFactor) Patch
|
||||
Decorate 82(pcf_data.flInsideTessFactor) BuiltIn TessLevelInner
|
||||
Decorate 96(@entryPointOutput.pos) Location 0
|
||||
Decorate 100(@entryPointOutput.norm) Location 1
|
||||
Name 55 "i.pos"
|
||||
Name 62 "i.norm"
|
||||
Name 80 "f"
|
||||
Name 82 "f"
|
||||
Name 84 "tesscoord"
|
||||
Name 85 "tesscoord"
|
||||
Name 87 "pcf_data"
|
||||
Name 91 "pcf_data.flTessFactor"
|
||||
Name 104 "pcf_data.flInsideTessFactor"
|
||||
Name 108 "flattenTemp"
|
||||
Name 110 "param"
|
||||
Name 112 "param"
|
||||
Name 114 "param"
|
||||
Name 118 "@entryPointOutput.pos"
|
||||
Name 122 "@entryPointOutput.norm"
|
||||
Decorate 55(i.pos) Location 0
|
||||
Decorate 62(i.norm) Location 1
|
||||
Decorate 82(f) Patch
|
||||
Decorate 82(f) Location 2
|
||||
Decorate 85(tesscoord) Patch
|
||||
Decorate 85(tesscoord) BuiltIn TessCoord
|
||||
Decorate 91(pcf_data.flTessFactor) Patch
|
||||
Decorate 91(pcf_data.flTessFactor) BuiltIn TessLevelOuter
|
||||
Decorate 104(pcf_data.flInsideTessFactor) Patch
|
||||
Decorate 104(pcf_data.flInsideTessFactor) BuiltIn TessLevelInner
|
||||
Decorate 118(@entryPointOutput.pos) Location 0
|
||||
Decorate 122(@entryPointOutput.norm) Location 1
|
||||
2: TypeVoid
|
||||
3: TypeFunction 2
|
||||
6: TypeFloat 32
|
||||
|
|
@ -361,72 +505,99 @@ triangle order = none
|
|||
40: 28(int) Constant 1
|
||||
42: 10(int) Constant 1
|
||||
51: TypePointer Function 12
|
||||
53: TypePointer Input 12
|
||||
54(i): 53(ptr) Variable Input
|
||||
57: TypePointer Input 6(float)
|
||||
58(f): 57(ptr) Variable Input
|
||||
61: TypePointer Input 8(fvec3)
|
||||
62(tesscoord): 61(ptr) Variable Input
|
||||
65: 10(int) Constant 4
|
||||
66: TypeArray 6(float) 65
|
||||
67: TypePointer Input 66
|
||||
68(pcf_data.flTessFactor): 67(ptr) Variable Input
|
||||
75: 28(int) Constant 2
|
||||
79: 10(int) Constant 2
|
||||
80: TypeArray 6(float) 79
|
||||
81: TypePointer Input 80
|
||||
82(pcf_data.flInsideTessFactor): 81(ptr) Variable Input
|
||||
95: TypePointer Output 7(fvec4)
|
||||
96(@entryPointOutput.pos): 95(ptr) Variable Output
|
||||
99: TypePointer Output 8(fvec3)
|
||||
100(@entryPointOutput.norm): 99(ptr) Variable Output
|
||||
53: TypeArray 7(fvec4) 11
|
||||
54: TypePointer Input 53
|
||||
55(i.pos): 54(ptr) Variable Input
|
||||
56: TypePointer Input 7(fvec4)
|
||||
60: TypeArray 8(fvec3) 11
|
||||
61: TypePointer Input 60
|
||||
62(i.norm): 61(ptr) Variable Input
|
||||
63: TypePointer Input 8(fvec3)
|
||||
73: 28(int) Constant 2
|
||||
81: TypePointer Input 6(float)
|
||||
82(f): 81(ptr) Variable Input
|
||||
85(tesscoord): 63(ptr) Variable Input
|
||||
88: 10(int) Constant 4
|
||||
89: TypeArray 6(float) 88
|
||||
90: TypePointer Input 89
|
||||
91(pcf_data.flTessFactor): 90(ptr) Variable Input
|
||||
101: 10(int) Constant 2
|
||||
102: TypeArray 6(float) 101
|
||||
103: TypePointer Input 102
|
||||
104(pcf_data.flInsideTessFactor): 103(ptr) Variable Input
|
||||
117: TypePointer Output 7(fvec4)
|
||||
118(@entryPointOutput.pos): 117(ptr) Variable Output
|
||||
121: TypePointer Output 8(fvec3)
|
||||
122(@entryPointOutput.norm): 121(ptr) Variable Output
|
||||
4(main): 2 Function None 3
|
||||
5: Label
|
||||
52(i): 51(ptr) Variable Function
|
||||
56(f): 13(ptr) Variable Function
|
||||
60(tesscoord): 14(ptr) Variable Function
|
||||
64(pcf_data): 17(ptr) Variable Function
|
||||
86(flattenTemp): 26(ptr) Variable Function
|
||||
88(param): 13(ptr) Variable Function
|
||||
90(param): 14(ptr) Variable Function
|
||||
92(param): 17(ptr) Variable Function
|
||||
55: 12 Load 54(i)
|
||||
Store 52(i) 55
|
||||
59: 6(float) Load 58(f)
|
||||
Store 56(f) 59
|
||||
63: 8(fvec3) Load 62(tesscoord)
|
||||
Store 60(tesscoord) 63
|
||||
69: 57(ptr) AccessChain 68(pcf_data.flTessFactor) 29
|
||||
70: 6(float) Load 69
|
||||
71: 13(ptr) AccessChain 64(pcf_data) 29 29
|
||||
Store 71 70
|
||||
72: 57(ptr) AccessChain 68(pcf_data.flTessFactor) 40
|
||||
73: 6(float) Load 72
|
||||
74: 13(ptr) AccessChain 64(pcf_data) 29 40
|
||||
Store 74 73
|
||||
76: 57(ptr) AccessChain 68(pcf_data.flTessFactor) 75
|
||||
77: 6(float) Load 76
|
||||
78: 13(ptr) AccessChain 64(pcf_data) 29 75
|
||||
Store 78 77
|
||||
83: 57(ptr) AccessChain 82(pcf_data.flInsideTessFactor) 29
|
||||
84: 6(float) Load 83
|
||||
85: 13(ptr) AccessChain 64(pcf_data) 40
|
||||
Store 85 84
|
||||
87: 12 Load 52(i)
|
||||
89: 6(float) Load 56(f)
|
||||
Store 88(param) 89
|
||||
91: 8(fvec3) Load 60(tesscoord)
|
||||
Store 90(param) 91
|
||||
93:16(pcf_in_t) Load 64(pcf_data)
|
||||
Store 92(param) 93
|
||||
94: 18(gs_in_t) FunctionCall 24(@main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11;) 87 88(param) 90(param) 92(param)
|
||||
Store 86(flattenTemp) 94
|
||||
97: 38(ptr) AccessChain 86(flattenTemp) 29
|
||||
98: 7(fvec4) Load 97
|
||||
Store 96(@entryPointOutput.pos) 98
|
||||
101: 14(ptr) AccessChain 86(flattenTemp) 40
|
||||
102: 8(fvec3) Load 101
|
||||
Store 100(@entryPointOutput.norm) 102
|
||||
80(f): 13(ptr) Variable Function
|
||||
84(tesscoord): 14(ptr) Variable Function
|
||||
87(pcf_data): 17(ptr) Variable Function
|
||||
108(flattenTemp): 26(ptr) Variable Function
|
||||
110(param): 13(ptr) Variable Function
|
||||
112(param): 14(ptr) Variable Function
|
||||
114(param): 17(ptr) Variable Function
|
||||
57: 56(ptr) AccessChain 55(i.pos) 29
|
||||
58: 7(fvec4) Load 57
|
||||
59: 38(ptr) AccessChain 52(i) 29 29
|
||||
Store 59 58
|
||||
64: 63(ptr) AccessChain 62(i.norm) 29
|
||||
65: 8(fvec3) Load 64
|
||||
66: 14(ptr) AccessChain 52(i) 29 40
|
||||
Store 66 65
|
||||
67: 56(ptr) AccessChain 55(i.pos) 40
|
||||
68: 7(fvec4) Load 67
|
||||
69: 38(ptr) AccessChain 52(i) 40 29
|
||||
Store 69 68
|
||||
70: 63(ptr) AccessChain 62(i.norm) 40
|
||||
71: 8(fvec3) Load 70
|
||||
72: 14(ptr) AccessChain 52(i) 40 40
|
||||
Store 72 71
|
||||
74: 56(ptr) AccessChain 55(i.pos) 73
|
||||
75: 7(fvec4) Load 74
|
||||
76: 38(ptr) AccessChain 52(i) 73 29
|
||||
Store 76 75
|
||||
77: 63(ptr) AccessChain 62(i.norm) 73
|
||||
78: 8(fvec3) Load 77
|
||||
79: 14(ptr) AccessChain 52(i) 73 40
|
||||
Store 79 78
|
||||
83: 6(float) Load 82(f)
|
||||
Store 80(f) 83
|
||||
86: 8(fvec3) Load 85(tesscoord)
|
||||
Store 84(tesscoord) 86
|
||||
92: 81(ptr) AccessChain 91(pcf_data.flTessFactor) 29
|
||||
93: 6(float) Load 92
|
||||
94: 13(ptr) AccessChain 87(pcf_data) 29 29
|
||||
Store 94 93
|
||||
95: 81(ptr) AccessChain 91(pcf_data.flTessFactor) 40
|
||||
96: 6(float) Load 95
|
||||
97: 13(ptr) AccessChain 87(pcf_data) 29 40
|
||||
Store 97 96
|
||||
98: 81(ptr) AccessChain 91(pcf_data.flTessFactor) 73
|
||||
99: 6(float) Load 98
|
||||
100: 13(ptr) AccessChain 87(pcf_data) 29 73
|
||||
Store 100 99
|
||||
105: 81(ptr) AccessChain 104(pcf_data.flInsideTessFactor) 29
|
||||
106: 6(float) Load 105
|
||||
107: 13(ptr) AccessChain 87(pcf_data) 40
|
||||
Store 107 106
|
||||
109: 12 Load 52(i)
|
||||
111: 6(float) Load 80(f)
|
||||
Store 110(param) 111
|
||||
113: 8(fvec3) Load 84(tesscoord)
|
||||
Store 112(param) 113
|
||||
115:16(pcf_in_t) Load 87(pcf_data)
|
||||
Store 114(param) 115
|
||||
116: 18(gs_in_t) FunctionCall 24(@main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11;) 109 110(param) 112(param) 114(param)
|
||||
Store 108(flattenTemp) 116
|
||||
119: 38(ptr) AccessChain 108(flattenTemp) 29
|
||||
120: 7(fvec4) Load 119
|
||||
Store 118(@entryPointOutput.pos) 120
|
||||
123: 14(ptr) AccessChain 108(flattenTemp) 40
|
||||
124: 8(fvec3) Load 123
|
||||
Store 122(@entryPointOutput.norm) 124
|
||||
Return
|
||||
FunctionEnd
|
||||
24(@main(struct-ds_in_t-vf4-vf31[3];f1;vf3;struct-pcf_in_t-f1[3]-f11;): 18(gs_in_t) Function None 19
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue