HLSL: Wrap the entry-point; need to write 'in' args, and support 'inout' args.

This needs some render testing, but is destined to be part of master.

This also leads to a variety of other simplifications.
 - IO are global symbols, so only need one list of linkage nodes (deferred)
 - no longer need parse-context-wide 'inEntryPoint' state, entry-point is localized
 - several parts of splitting/flattening are now localized
This commit is contained in:
John Kessenich
2017-01-19 15:41:47 -07:00
parent 18adbdbbb8
commit 02467d8d94
171 changed files with 37604 additions and 32679 deletions

View File

@@ -2,7 +2,7 @@ hlsl.samplecmp.basic.dx10.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:38 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Definition: @main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Parameters:
0:? Sequence
0:42 Sequence
@@ -139,24 +139,28 @@ gl_FragCoord origin is upper left
0:58 1 (const int)
0:58 Constant:
0:58 1.000000
0:60 Sequence
0:60 Sequence
0:60 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:60 Color: direct index for structure (temp 4-component vector of float)
0:60 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:60 Constant:
0:60 0 (const int)
0:60 move second child to first child (temp float)
0:? 'Depth' (out float FragDepth)
0:60 Depth: direct index for structure (temp float)
0:60 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:60 Constant:
0:60 1 (const int)
0:60 Branch: Return
0:60 Branch: Return with expression
0:60 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Definition: main( (temp void)
0:38 Function Parameters:
0:? Sequence
0:38 Sequence
0:38 move second child to first child (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 'flattenTemp' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Call: @main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:38 Color: direct index for structure (temp 4-component vector of float)
0:38 'flattenTemp' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Constant:
0:38 0 (const int)
0:38 move second child to first child (temp float)
0:? 'Depth' (out float FragDepth)
0:38 Depth: direct index for structure (temp float)
0:38 'flattenTemp' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Constant:
0:38 1 (const int)
0:? Linker Objects
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
0:? 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:? 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:? 'g_tTex1di4' (uniform itexture1D)
@@ -179,6 +183,8 @@ gl_FragCoord origin is upper left
0:? 'g_tTexcdf4a' (uniform textureCubeArray)
0:? 'g_tTexcdi4a' (uniform itextureCubeArray)
0:? 'g_tTexcdu4a' (uniform utextureCubeArray)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
Linked fragment stage:
@@ -187,7 +193,7 @@ Linked fragment stage:
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:38 Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Definition: @main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Parameters:
0:? Sequence
0:42 Sequence
@@ -324,24 +330,28 @@ gl_FragCoord origin is upper left
0:58 1 (const int)
0:58 Constant:
0:58 1.000000
0:60 Sequence
0:60 Sequence
0:60 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:60 Color: direct index for structure (temp 4-component vector of float)
0:60 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:60 Constant:
0:60 0 (const int)
0:60 move second child to first child (temp float)
0:? 'Depth' (out float FragDepth)
0:60 Depth: direct index for structure (temp float)
0:60 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:60 Constant:
0:60 1 (const int)
0:60 Branch: Return
0:60 Branch: Return with expression
0:60 'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Definition: main( (temp void)
0:38 Function Parameters:
0:? Sequence
0:38 Sequence
0:38 move second child to first child (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 'flattenTemp' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Function Call: @main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 move second child to first child (temp 4-component vector of float)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:38 Color: direct index for structure (temp 4-component vector of float)
0:38 'flattenTemp' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Constant:
0:38 0 (const int)
0:38 move second child to first child (temp float)
0:? 'Depth' (out float FragDepth)
0:38 Depth: direct index for structure (temp float)
0:38 'flattenTemp' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:38 Constant:
0:38 1 (const int)
0:? Linker Objects
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
0:? 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:? 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:? 'g_tTex1di4' (uniform itexture1D)
@@ -364,291 +374,304 @@ gl_FragCoord origin is upper left
0:? 'g_tTexcdf4a' (uniform textureCubeArray)
0:? 'g_tTexcdi4a' (uniform itextureCubeArray)
0:? 'g_tTexcdu4a' (uniform utextureCubeArray)
0:? 'Color' (layout(location=0 ) out 4-component vector of float)
0:? 'Depth' (out float FragDepth)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 200
// Id's are bound by 207
Capability Shader
Capability Sampled1D
Capability SampledCubeArray
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 156 160
EntryPoint Fragment 4 "main" 164 168
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 8 "r00"
Name 11 "g_tTex1df4"
Name 15 "g_sSamp"
Name 26 "r02"
Name 30 "g_tTex1di4"
Name 39 "r04"
Name 43 "g_tTex1du4"
Name 52 "r20"
Name 55 "g_tTex2df4"
Name 69 "r22"
Name 72 "g_tTex2di4"
Name 83 "r24"
Name 86 "g_tTex2du4"
Name 97 "r50"
Name 100 "g_tTexcdf4"
Name 115 "r52"
Name 118 "g_tTexcdi4"
Name 130 "r54"
Name 133 "g_tTexcdu4"
Name 145 "PS_OUTPUT"
MemberName 145(PS_OUTPUT) 0 "Color"
MemberName 145(PS_OUTPUT) 1 "Depth"
Name 147 "psout"
Name 156 "Color"
Name 160 "Depth"
Name 166 "g_tTex3df4"
Name 169 "g_tTex3di4"
Name 172 "g_tTex3du4"
Name 175 "g_tTex1df4a"
Name 178 "g_tTex1di4a"
Name 181 "g_tTex1du4a"
Name 184 "g_tTex2df4a"
Name 187 "g_tTex2di4a"
Name 190 "g_tTex2du4a"
Name 193 "g_tTexcdf4a"
Name 196 "g_tTexcdi4a"
Name 199 "g_tTexcdu4a"
Decorate 11(g_tTex1df4) DescriptorSet 0
Decorate 11(g_tTex1df4) Binding 0
Decorate 15(g_sSamp) DescriptorSet 0
Decorate 15(g_sSamp) Binding 0
Decorate 30(g_tTex1di4) DescriptorSet 0
Decorate 43(g_tTex1du4) DescriptorSet 0
Decorate 55(g_tTex2df4) DescriptorSet 0
Decorate 72(g_tTex2di4) DescriptorSet 0
Decorate 86(g_tTex2du4) DescriptorSet 0
Decorate 100(g_tTexcdf4) DescriptorSet 0
Decorate 118(g_tTexcdi4) DescriptorSet 0
Decorate 133(g_tTexcdu4) DescriptorSet 0
Decorate 156(Color) Location 0
Decorate 160(Depth) BuiltIn FragDepth
Decorate 166(g_tTex3df4) DescriptorSet 0
Decorate 169(g_tTex3di4) DescriptorSet 0
Decorate 172(g_tTex3du4) DescriptorSet 0
Decorate 175(g_tTex1df4a) DescriptorSet 0
Decorate 178(g_tTex1di4a) DescriptorSet 0
Decorate 181(g_tTex1du4a) DescriptorSet 0
Decorate 184(g_tTex2df4a) DescriptorSet 0
Decorate 187(g_tTex2di4a) DescriptorSet 0
Decorate 190(g_tTex2du4a) DescriptorSet 0
Decorate 193(g_tTexcdf4a) DescriptorSet 0
Decorate 196(g_tTexcdi4a) DescriptorSet 0
Decorate 199(g_tTexcdu4a) DescriptorSet 0
Name 8 "PS_OUTPUT"
MemberName 8(PS_OUTPUT) 0 "Color"
MemberName 8(PS_OUTPUT) 1 "Depth"
Name 10 "@main("
Name 13 "r00"
Name 16 "g_tTex1df4"
Name 20 "g_sSamp"
Name 31 "r02"
Name 35 "g_tTex1di4"
Name 44 "r04"
Name 48 "g_tTex1du4"
Name 57 "r20"
Name 60 "g_tTex2df4"
Name 74 "r22"
Name 77 "g_tTex2di4"
Name 88 "r24"
Name 91 "g_tTex2du4"
Name 102 "r50"
Name 105 "g_tTexcdf4"
Name 119 "r52"
Name 122 "g_tTexcdi4"
Name 134 "r54"
Name 137 "g_tTexcdu4"
Name 150 "psout"
Name 161 "flattenTemp"
Name 164 "Color"
Name 168 "Depth"
Name 173 "g_tTex3df4"
Name 176 "g_tTex3di4"
Name 179 "g_tTex3du4"
Name 182 "g_tTex1df4a"
Name 185 "g_tTex1di4a"
Name 188 "g_tTex1du4a"
Name 191 "g_tTex2df4a"
Name 194 "g_tTex2di4a"
Name 197 "g_tTex2du4a"
Name 200 "g_tTexcdf4a"
Name 203 "g_tTexcdi4a"
Name 206 "g_tTexcdu4a"
Decorate 16(g_tTex1df4) DescriptorSet 0
Decorate 16(g_tTex1df4) Binding 0
Decorate 20(g_sSamp) DescriptorSet 0
Decorate 20(g_sSamp) Binding 0
Decorate 35(g_tTex1di4) DescriptorSet 0
Decorate 48(g_tTex1du4) DescriptorSet 0
Decorate 60(g_tTex2df4) DescriptorSet 0
Decorate 77(g_tTex2di4) DescriptorSet 0
Decorate 91(g_tTex2du4) DescriptorSet 0
Decorate 105(g_tTexcdf4) DescriptorSet 0
Decorate 122(g_tTexcdi4) DescriptorSet 0
Decorate 137(g_tTexcdu4) DescriptorSet 0
Decorate 164(Color) Location 0
Decorate 168(Depth) BuiltIn FragDepth
Decorate 173(g_tTex3df4) DescriptorSet 0
Decorate 176(g_tTex3di4) DescriptorSet 0
Decorate 179(g_tTex3du4) DescriptorSet 0
Decorate 182(g_tTex1df4a) DescriptorSet 0
Decorate 185(g_tTex1di4a) DescriptorSet 0
Decorate 188(g_tTex1du4a) DescriptorSet 0
Decorate 191(g_tTex2df4a) DescriptorSet 0
Decorate 194(g_tTex2di4a) DescriptorSet 0
Decorate 197(g_tTex2du4a) DescriptorSet 0
Decorate 200(g_tTexcdf4a) DescriptorSet 0
Decorate 203(g_tTexcdi4a) DescriptorSet 0
Decorate 206(g_tTexcdu4a) DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
7: TypePointer Function 6(float)
9: TypeImage 6(float) 1D sampled format:Unknown
10: TypePointer UniformConstant 9
11(g_tTex1df4): 10(ptr) Variable UniformConstant
13: TypeSampler
14: TypePointer UniformConstant 13
15(g_sSamp): 14(ptr) Variable UniformConstant
17: TypeImage 6(float) 1D depth sampled format:Unknown
18: TypeSampledImage 17
20: 6(float) Constant 1036831949
21: 6(float) Constant 1061158912
22: TypeVector 6(float) 2
27: TypeInt 32 1
28: TypeImage 27(int) 1D sampled format:Unknown
29: TypePointer UniformConstant 28
30(g_tTex1di4): 29(ptr) Variable UniformConstant
33: TypeImage 27(int) 1D depth sampled format:Unknown
34: TypeSampledImage 33
40: TypeInt 32 0
41: TypeImage 40(int) 1D sampled format:Unknown
42: TypePointer UniformConstant 41
43(g_tTex1du4): 42(ptr) Variable UniformConstant
46: TypeImage 40(int) 1D depth sampled format:Unknown
47: TypeSampledImage 46
53: TypeImage 6(float) 2D sampled format:Unknown
54: TypePointer UniformConstant 53
55(g_tTex2df4): 54(ptr) Variable UniformConstant
58: TypeImage 6(float) 2D depth sampled format:Unknown
59: TypeSampledImage 58
61: 6(float) Constant 1045220557
62: 22(fvec2) ConstantComposite 20 61
63: TypeVector 6(float) 3
70: TypeImage 27(int) 2D sampled format:Unknown
71: TypePointer UniformConstant 70
72(g_tTex2di4): 71(ptr) Variable UniformConstant
75: TypeImage 27(int) 2D depth sampled format:Unknown
76: TypeSampledImage 75
84: TypeImage 40(int) 2D sampled format:Unknown
85: TypePointer UniformConstant 84
86(g_tTex2du4): 85(ptr) Variable UniformConstant
89: TypeImage 40(int) 2D depth sampled format:Unknown
90: TypeSampledImage 89
98: TypeImage 6(float) Cube sampled format:Unknown
99: TypePointer UniformConstant 98
100(g_tTexcdf4): 99(ptr) Variable UniformConstant
103: TypeImage 6(float) Cube depth sampled format:Unknown
104: TypeSampledImage 103
106: 6(float) Constant 1050253722
107: 63(fvec3) ConstantComposite 20 61 106
108: TypeVector 6(float) 4
116: TypeImage 27(int) Cube sampled format:Unknown
117: TypePointer UniformConstant 116
118(g_tTexcdi4): 117(ptr) Variable UniformConstant
121: TypeImage 27(int) Cube depth sampled format:Unknown
122: TypeSampledImage 121
131: TypeImage 40(int) Cube sampled format:Unknown
132: TypePointer UniformConstant 131
133(g_tTexcdu4): 132(ptr) Variable UniformConstant
136: TypeImage 40(int) Cube depth sampled format:Unknown
137: TypeSampledImage 136
145(PS_OUTPUT): TypeStruct 108(fvec4) 6(float)
146: TypePointer Function 145(PS_OUTPUT)
148: 27(int) Constant 0
149: 6(float) Constant 1065353216
150: 108(fvec4) ConstantComposite 149 149 149 149
151: TypePointer Function 108(fvec4)
153: 27(int) Constant 1
155: TypePointer Output 108(fvec4)
156(Color): 155(ptr) Variable Output
159: TypePointer Output 6(float)
160(Depth): 159(ptr) Variable Output
164: TypeImage 6(float) 3D sampled format:Unknown
165: TypePointer UniformConstant 164
166(g_tTex3df4): 165(ptr) Variable UniformConstant
167: TypeImage 27(int) 3D sampled format:Unknown
168: TypePointer UniformConstant 167
169(g_tTex3di4): 168(ptr) Variable UniformConstant
170: TypeImage 40(int) 3D sampled format:Unknown
171: TypePointer UniformConstant 170
172(g_tTex3du4): 171(ptr) Variable UniformConstant
173: TypeImage 6(float) 1D array sampled format:Unknown
174: TypePointer UniformConstant 173
175(g_tTex1df4a): 174(ptr) Variable UniformConstant
176: TypeImage 27(int) 1D array sampled format:Unknown
177: TypePointer UniformConstant 176
178(g_tTex1di4a): 177(ptr) Variable UniformConstant
179: TypeImage 40(int) 1D array sampled format:Unknown
180: TypePointer UniformConstant 179
181(g_tTex1du4a): 180(ptr) Variable UniformConstant
182: TypeImage 6(float) 2D array sampled format:Unknown
183: TypePointer UniformConstant 182
184(g_tTex2df4a): 183(ptr) Variable UniformConstant
185: TypeImage 27(int) 2D array sampled format:Unknown
186: TypePointer UniformConstant 185
187(g_tTex2di4a): 186(ptr) Variable UniformConstant
188: TypeImage 40(int) 2D array sampled format:Unknown
189: TypePointer UniformConstant 188
190(g_tTex2du4a): 189(ptr) Variable UniformConstant
191: TypeImage 6(float) Cube array sampled format:Unknown
192: TypePointer UniformConstant 191
193(g_tTexcdf4a): 192(ptr) Variable UniformConstant
194: TypeImage 27(int) Cube array sampled format:Unknown
195: TypePointer UniformConstant 194
196(g_tTexcdi4a): 195(ptr) Variable UniformConstant
197: TypeImage 40(int) Cube array sampled format:Unknown
198: TypePointer UniformConstant 197
199(g_tTexcdu4a): 198(ptr) Variable UniformConstant
7: TypeVector 6(float) 4
8(PS_OUTPUT): TypeStruct 7(fvec4) 6(float)
9: TypeFunction 8(PS_OUTPUT)
12: TypePointer Function 6(float)
14: TypeImage 6(float) 1D sampled format:Unknown
15: TypePointer UniformConstant 14
16(g_tTex1df4): 15(ptr) Variable UniformConstant
18: TypeSampler
19: TypePointer UniformConstant 18
20(g_sSamp): 19(ptr) Variable UniformConstant
22: TypeImage 6(float) 1D depth sampled format:Unknown
23: TypeSampledImage 22
25: 6(float) Constant 1036831949
26: 6(float) Constant 1061158912
27: TypeVector 6(float) 2
32: TypeInt 32 1
33: TypeImage 32(int) 1D sampled format:Unknown
34: TypePointer UniformConstant 33
35(g_tTex1di4): 34(ptr) Variable UniformConstant
38: TypeImage 32(int) 1D depth sampled format:Unknown
39: TypeSampledImage 38
45: TypeInt 32 0
46: TypeImage 45(int) 1D sampled format:Unknown
47: TypePointer UniformConstant 46
48(g_tTex1du4): 47(ptr) Variable UniformConstant
51: TypeImage 45(int) 1D depth sampled format:Unknown
52: TypeSampledImage 51
58: TypeImage 6(float) 2D sampled format:Unknown
59: TypePointer UniformConstant 58
60(g_tTex2df4): 59(ptr) Variable UniformConstant
63: TypeImage 6(float) 2D depth sampled format:Unknown
64: TypeSampledImage 63
66: 6(float) Constant 1045220557
67: 27(fvec2) ConstantComposite 25 66
68: TypeVector 6(float) 3
75: TypeImage 32(int) 2D sampled format:Unknown
76: TypePointer UniformConstant 75
77(g_tTex2di4): 76(ptr) Variable UniformConstant
80: TypeImage 32(int) 2D depth sampled format:Unknown
81: TypeSampledImage 80
89: TypeImage 45(int) 2D sampled format:Unknown
90: TypePointer UniformConstant 89
91(g_tTex2du4): 90(ptr) Variable UniformConstant
94: TypeImage 45(int) 2D depth sampled format:Unknown
95: TypeSampledImage 94
103: TypeImage 6(float) Cube sampled format:Unknown
104: TypePointer UniformConstant 103
105(g_tTexcdf4): 104(ptr) Variable UniformConstant
108: TypeImage 6(float) Cube depth sampled format:Unknown
109: TypeSampledImage 108
111: 6(float) Constant 1050253722
112: 68(fvec3) ConstantComposite 25 66 111
120: TypeImage 32(int) Cube sampled format:Unknown
121: TypePointer UniformConstant 120
122(g_tTexcdi4): 121(ptr) Variable UniformConstant
125: TypeImage 32(int) Cube depth sampled format:Unknown
126: TypeSampledImage 125
135: TypeImage 45(int) Cube sampled format:Unknown
136: TypePointer UniformConstant 135
137(g_tTexcdu4): 136(ptr) Variable UniformConstant
140: TypeImage 45(int) Cube depth sampled format:Unknown
141: TypeSampledImage 140
149: TypePointer Function 8(PS_OUTPUT)
151: 32(int) Constant 0
152: 6(float) Constant 1065353216
153: 7(fvec4) ConstantComposite 152 152 152 152
154: TypePointer Function 7(fvec4)
156: 32(int) Constant 1
163: TypePointer Output 7(fvec4)
164(Color): 163(ptr) Variable Output
167: TypePointer Output 6(float)
168(Depth): 167(ptr) Variable Output
171: TypeImage 6(float) 3D sampled format:Unknown
172: TypePointer UniformConstant 171
173(g_tTex3df4): 172(ptr) Variable UniformConstant
174: TypeImage 32(int) 3D sampled format:Unknown
175: TypePointer UniformConstant 174
176(g_tTex3di4): 175(ptr) Variable UniformConstant
177: TypeImage 45(int) 3D sampled format:Unknown
178: TypePointer UniformConstant 177
179(g_tTex3du4): 178(ptr) Variable UniformConstant
180: TypeImage 6(float) 1D array sampled format:Unknown
181: TypePointer UniformConstant 180
182(g_tTex1df4a): 181(ptr) Variable UniformConstant
183: TypeImage 32(int) 1D array sampled format:Unknown
184: TypePointer UniformConstant 183
185(g_tTex1di4a): 184(ptr) Variable UniformConstant
186: TypeImage 45(int) 1D array sampled format:Unknown
187: TypePointer UniformConstant 186
188(g_tTex1du4a): 187(ptr) Variable UniformConstant
189: TypeImage 6(float) 2D array sampled format:Unknown
190: TypePointer UniformConstant 189
191(g_tTex2df4a): 190(ptr) Variable UniformConstant
192: TypeImage 32(int) 2D array sampled format:Unknown
193: TypePointer UniformConstant 192
194(g_tTex2di4a): 193(ptr) Variable UniformConstant
195: TypeImage 45(int) 2D array sampled format:Unknown
196: TypePointer UniformConstant 195
197(g_tTex2du4a): 196(ptr) Variable UniformConstant
198: TypeImage 6(float) Cube array sampled format:Unknown
199: TypePointer UniformConstant 198
200(g_tTexcdf4a): 199(ptr) Variable UniformConstant
201: TypeImage 32(int) Cube array sampled format:Unknown
202: TypePointer UniformConstant 201
203(g_tTexcdi4a): 202(ptr) Variable UniformConstant
204: TypeImage 45(int) Cube array sampled format:Unknown
205: TypePointer UniformConstant 204
206(g_tTexcdu4a): 205(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
8(r00): 7(ptr) Variable Function
26(r02): 7(ptr) Variable Function
39(r04): 7(ptr) Variable Function
52(r20): 7(ptr) Variable Function
69(r22): 7(ptr) Variable Function
83(r24): 7(ptr) Variable Function
97(r50): 7(ptr) Variable Function
115(r52): 7(ptr) Variable Function
130(r54): 7(ptr) Variable Function
147(psout): 146(ptr) Variable Function
12: 9 Load 11(g_tTex1df4)
16: 13 Load 15(g_sSamp)
19: 18 SampledImage 12 16
23: 22(fvec2) CompositeConstruct 20 21
24: 6(float) CompositeExtract 23 1
25: 6(float) ImageSampleDrefImplicitLod 19 23 24
Store 8(r00) 25
31: 28 Load 30(g_tTex1di4)
32: 13 Load 15(g_sSamp)
35: 34 SampledImage 31 32
36: 22(fvec2) CompositeConstruct 20 21
37: 6(float) CompositeExtract 36 1
38: 6(float) ImageSampleDrefImplicitLod 35 36 37
Store 26(r02) 38
44: 41 Load 43(g_tTex1du4)
45: 13 Load 15(g_sSamp)
48: 47 SampledImage 44 45
49: 22(fvec2) CompositeConstruct 20 21
50: 6(float) CompositeExtract 49 1
51: 6(float) ImageSampleDrefImplicitLod 48 49 50
Store 39(r04) 51
56: 53 Load 55(g_tTex2df4)
57: 13 Load 15(g_sSamp)
60: 59 SampledImage 56 57
64: 6(float) CompositeExtract 62 0
65: 6(float) CompositeExtract 62 1
66: 63(fvec3) CompositeConstruct 64 65 21
67: 6(float) CompositeExtract 66 2
68: 6(float) ImageSampleDrefImplicitLod 60 66 67
Store 52(r20) 68
73: 70 Load 72(g_tTex2di4)
74: 13 Load 15(g_sSamp)
77: 76 SampledImage 73 74
78: 6(float) CompositeExtract 62 0
79: 6(float) CompositeExtract 62 1
80: 63(fvec3) CompositeConstruct 78 79 21
81: 6(float) CompositeExtract 80 2
82: 6(float) ImageSampleDrefImplicitLod 77 80 81
Store 69(r22) 82
87: 84 Load 86(g_tTex2du4)
88: 13 Load 15(g_sSamp)
91: 90 SampledImage 87 88
92: 6(float) CompositeExtract 62 0
93: 6(float) CompositeExtract 62 1
94: 63(fvec3) CompositeConstruct 92 93 21
95: 6(float) CompositeExtract 94 2
96: 6(float) ImageSampleDrefImplicitLod 91 94 95
Store 83(r24) 96
101: 98 Load 100(g_tTexcdf4)
102: 13 Load 15(g_sSamp)
105: 104 SampledImage 101 102
109: 6(float) CompositeExtract 107 0
110: 6(float) CompositeExtract 107 1
111: 6(float) CompositeExtract 107 2
112: 108(fvec4) CompositeConstruct 109 110 111 21
113: 6(float) CompositeExtract 112 3
114: 6(float) ImageSampleDrefImplicitLod 105 112 113
Store 97(r50) 114
119: 116 Load 118(g_tTexcdi4)
120: 13 Load 15(g_sSamp)
123: 122 SampledImage 119 120
124: 6(float) CompositeExtract 107 0
125: 6(float) CompositeExtract 107 1
126: 6(float) CompositeExtract 107 2
127: 108(fvec4) CompositeConstruct 124 125 126 21
128: 6(float) CompositeExtract 127 3
129: 6(float) ImageSampleDrefImplicitLod 123 127 128
Store 115(r52) 129
134: 131 Load 133(g_tTexcdu4)
135: 13 Load 15(g_sSamp)
138: 137 SampledImage 134 135
139: 6(float) CompositeExtract 107 0
140: 6(float) CompositeExtract 107 1
141: 6(float) CompositeExtract 107 2
142: 108(fvec4) CompositeConstruct 139 140 141 21
143: 6(float) CompositeExtract 142 3
144: 6(float) ImageSampleDrefImplicitLod 138 142 143
Store 130(r54) 144
152: 151(ptr) AccessChain 147(psout) 148
Store 152 150
154: 7(ptr) AccessChain 147(psout) 153
Store 154 149
157: 151(ptr) AccessChain 147(psout) 148
158: 108(fvec4) Load 157
Store 156(Color) 158
161: 7(ptr) AccessChain 147(psout) 153
162: 6(float) Load 161
Store 160(Depth) 162
161(flattenTemp): 149(ptr) Variable Function
162:8(PS_OUTPUT) FunctionCall 10(@main()
Store 161(flattenTemp) 162
165: 154(ptr) AccessChain 161(flattenTemp) 151
166: 7(fvec4) Load 165
Store 164(Color) 166
169: 12(ptr) AccessChain 161(flattenTemp) 156
170: 6(float) Load 169
Store 168(Depth) 170
Return
FunctionEnd
10(@main():8(PS_OUTPUT) Function None 9
11: Label
13(r00): 12(ptr) Variable Function
31(r02): 12(ptr) Variable Function
44(r04): 12(ptr) Variable Function
57(r20): 12(ptr) Variable Function
74(r22): 12(ptr) Variable Function
88(r24): 12(ptr) Variable Function
102(r50): 12(ptr) Variable Function
119(r52): 12(ptr) Variable Function
134(r54): 12(ptr) Variable Function
150(psout): 149(ptr) Variable Function
17: 14 Load 16(g_tTex1df4)
21: 18 Load 20(g_sSamp)
24: 23 SampledImage 17 21
28: 27(fvec2) CompositeConstruct 25 26
29: 6(float) CompositeExtract 28 1
30: 6(float) ImageSampleDrefImplicitLod 24 28 29
Store 13(r00) 30
36: 33 Load 35(g_tTex1di4)
37: 18 Load 20(g_sSamp)
40: 39 SampledImage 36 37
41: 27(fvec2) CompositeConstruct 25 26
42: 6(float) CompositeExtract 41 1
43: 6(float) ImageSampleDrefImplicitLod 40 41 42
Store 31(r02) 43
49: 46 Load 48(g_tTex1du4)
50: 18 Load 20(g_sSamp)
53: 52 SampledImage 49 50
54: 27(fvec2) CompositeConstruct 25 26
55: 6(float) CompositeExtract 54 1
56: 6(float) ImageSampleDrefImplicitLod 53 54 55
Store 44(r04) 56
61: 58 Load 60(g_tTex2df4)
62: 18 Load 20(g_sSamp)
65: 64 SampledImage 61 62
69: 6(float) CompositeExtract 67 0
70: 6(float) CompositeExtract 67 1
71: 68(fvec3) CompositeConstruct 69 70 26
72: 6(float) CompositeExtract 71 2
73: 6(float) ImageSampleDrefImplicitLod 65 71 72
Store 57(r20) 73
78: 75 Load 77(g_tTex2di4)
79: 18 Load 20(g_sSamp)
82: 81 SampledImage 78 79
83: 6(float) CompositeExtract 67 0
84: 6(float) CompositeExtract 67 1
85: 68(fvec3) CompositeConstruct 83 84 26
86: 6(float) CompositeExtract 85 2
87: 6(float) ImageSampleDrefImplicitLod 82 85 86
Store 74(r22) 87
92: 89 Load 91(g_tTex2du4)
93: 18 Load 20(g_sSamp)
96: 95 SampledImage 92 93
97: 6(float) CompositeExtract 67 0
98: 6(float) CompositeExtract 67 1
99: 68(fvec3) CompositeConstruct 97 98 26
100: 6(float) CompositeExtract 99 2
101: 6(float) ImageSampleDrefImplicitLod 96 99 100
Store 88(r24) 101
106: 103 Load 105(g_tTexcdf4)
107: 18 Load 20(g_sSamp)
110: 109 SampledImage 106 107
113: 6(float) CompositeExtract 112 0
114: 6(float) CompositeExtract 112 1
115: 6(float) CompositeExtract 112 2
116: 7(fvec4) CompositeConstruct 113 114 115 26
117: 6(float) CompositeExtract 116 3
118: 6(float) ImageSampleDrefImplicitLod 110 116 117
Store 102(r50) 118
123: 120 Load 122(g_tTexcdi4)
124: 18 Load 20(g_sSamp)
127: 126 SampledImage 123 124
128: 6(float) CompositeExtract 112 0
129: 6(float) CompositeExtract 112 1
130: 6(float) CompositeExtract 112 2
131: 7(fvec4) CompositeConstruct 128 129 130 26
132: 6(float) CompositeExtract 131 3
133: 6(float) ImageSampleDrefImplicitLod 127 131 132
Store 119(r52) 133
138: 135 Load 137(g_tTexcdu4)
139: 18 Load 20(g_sSamp)
142: 141 SampledImage 138 139
143: 6(float) CompositeExtract 112 0
144: 6(float) CompositeExtract 112 1
145: 6(float) CompositeExtract 112 2
146: 7(fvec4) CompositeConstruct 143 144 145 26
147: 6(float) CompositeExtract 146 3
148: 6(float) ImageSampleDrefImplicitLod 142 146 147
Store 134(r54) 148
155: 154(ptr) AccessChain 150(psout) 151
Store 155 153
157: 12(ptr) AccessChain 150(psout) 156
Store 157 152
158:8(PS_OUTPUT) Load 150(psout)
ReturnValue 158
FunctionEnd