HLSL: fix defect in EOpMethodSampleCmp* texture decomposition

HLSL holds the compare value in a separate intrinsic arg, but the AST wants
a vector including the cmp val, except in the 4-dim coord case, where it
doesn't fit and is in fact a separate AST parameter.  This is awkward but
necessary, given AST semantics.  In the process, a new vector is constructed
for the combined result, but this vector was not being given the correct
TType, so was causing some downstream troubles.

Now it is.  A similar defect existed in OpTextureBias, and has also been
fixed.
This commit is contained in:
steve-lunarg 2016-10-20 14:50:12 -06:00
parent 5d45eadedc
commit 6b596682c9
9 changed files with 1951 additions and 1806 deletions

View file

@ -12,7 +12,7 @@ gl_FragCoord origin is upper left
0:42 Construct combined texture-sampler (temp sampler1DShadow)
0:42 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:42 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:42 Construct vec2 (temp float)
0:42 Construct vec2 (temp 2-component vector of float)
0:42 Constant:
0:42 0.100000
0:42 Constant:
@ -24,7 +24,7 @@ gl_FragCoord origin is upper left
0:43 Construct combined texture-sampler (temp isampler1DShadow)
0:43 'g_tTex1di4' (uniform itexture1D)
0:43 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:43 Construct vec2 (temp float)
0:43 Construct vec2 (temp 2-component vector of float)
0:43 Constant:
0:43 0.100000
0:43 Constant:
@ -36,7 +36,7 @@ gl_FragCoord origin is upper left
0:44 Construct combined texture-sampler (temp usampler1DShadow)
0:44 'g_tTex1du4' (uniform utexture1D)
0:44 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:44 Construct vec2 (temp float)
0:44 Construct vec2 (temp 2-component vector of float)
0:44 Constant:
0:44 0.100000
0:44 Constant:
@ -48,7 +48,7 @@ gl_FragCoord origin is upper left
0:47 Construct combined texture-sampler (temp sampler2DShadow)
0:47 'g_tTex2df4' (uniform texture2D)
0:47 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:47 Construct vec3 (temp float)
0:47 Construct vec3 (temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -61,7 +61,7 @@ gl_FragCoord origin is upper left
0:48 Construct combined texture-sampler (temp isampler2DShadow)
0:48 'g_tTex2di4' (uniform itexture2D)
0:48 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:48 Construct vec3 (temp float)
0:48 Construct vec3 (temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -74,7 +74,7 @@ gl_FragCoord origin is upper left
0:49 Construct combined texture-sampler (temp usampler2DShadow)
0:49 'g_tTex2du4' (uniform utexture2D)
0:49 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:49 Construct vec3 (temp float)
0:49 Construct vec3 (temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -87,7 +87,7 @@ gl_FragCoord origin is upper left
0:53 Construct combined texture-sampler (temp samplerCubeShadow)
0:53 'g_tTexcdf4' (uniform textureCube)
0:53 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:53 Construct vec4 (temp float)
0:53 Construct vec4 (temp 4-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -101,7 +101,7 @@ gl_FragCoord origin is upper left
0:54 Construct combined texture-sampler (temp isamplerCubeShadow)
0:54 'g_tTexcdi4' (uniform itextureCube)
0:54 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:54 Construct vec4 (temp float)
0:54 Construct vec4 (temp 4-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -115,7 +115,7 @@ gl_FragCoord origin is upper left
0:55 Construct combined texture-sampler (temp usamplerCubeShadow)
0:55 'g_tTexcdu4' (uniform utextureCube)
0:55 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:55 Construct vec4 (temp float)
0:55 Construct vec4 (temp 4-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -197,7 +197,7 @@ gl_FragCoord origin is upper left
0:42 Construct combined texture-sampler (temp sampler1DShadow)
0:42 'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:42 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:42 Construct vec2 (temp float)
0:42 Construct vec2 (temp 2-component vector of float)
0:42 Constant:
0:42 0.100000
0:42 Constant:
@ -209,7 +209,7 @@ gl_FragCoord origin is upper left
0:43 Construct combined texture-sampler (temp isampler1DShadow)
0:43 'g_tTex1di4' (uniform itexture1D)
0:43 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:43 Construct vec2 (temp float)
0:43 Construct vec2 (temp 2-component vector of float)
0:43 Constant:
0:43 0.100000
0:43 Constant:
@ -221,7 +221,7 @@ gl_FragCoord origin is upper left
0:44 Construct combined texture-sampler (temp usampler1DShadow)
0:44 'g_tTex1du4' (uniform utexture1D)
0:44 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:44 Construct vec2 (temp float)
0:44 Construct vec2 (temp 2-component vector of float)
0:44 Constant:
0:44 0.100000
0:44 Constant:
@ -233,7 +233,7 @@ gl_FragCoord origin is upper left
0:47 Construct combined texture-sampler (temp sampler2DShadow)
0:47 'g_tTex2df4' (uniform texture2D)
0:47 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:47 Construct vec3 (temp float)
0:47 Construct vec3 (temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -246,7 +246,7 @@ gl_FragCoord origin is upper left
0:48 Construct combined texture-sampler (temp isampler2DShadow)
0:48 'g_tTex2di4' (uniform itexture2D)
0:48 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:48 Construct vec3 (temp float)
0:48 Construct vec3 (temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -259,7 +259,7 @@ gl_FragCoord origin is upper left
0:49 Construct combined texture-sampler (temp usampler2DShadow)
0:49 'g_tTex2du4' (uniform utexture2D)
0:49 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:49 Construct vec3 (temp float)
0:49 Construct vec3 (temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -272,7 +272,7 @@ gl_FragCoord origin is upper left
0:53 Construct combined texture-sampler (temp samplerCubeShadow)
0:53 'g_tTexcdf4' (uniform textureCube)
0:53 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:53 Construct vec4 (temp float)
0:53 Construct vec4 (temp 4-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -286,7 +286,7 @@ gl_FragCoord origin is upper left
0:54 Construct combined texture-sampler (temp isamplerCubeShadow)
0:54 'g_tTexcdi4' (uniform itextureCube)
0:54 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:54 Construct vec4 (temp float)
0:54 Construct vec4 (temp 4-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -300,7 +300,7 @@ gl_FragCoord origin is upper left
0:55 Construct combined texture-sampler (temp usamplerCubeShadow)
0:55 'g_tTexcdu4' (uniform utextureCube)
0:55 'g_sSamp' (layout(binding=0 ) uniform sampler)
0:55 Construct vec4 (temp float)
0:55 Construct vec4 (temp 4-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
@ -367,79 +367,79 @@ gl_FragCoord origin is upper left
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 182
// Id's are bound by 200
Capability Shader
Capability Sampled1D
Capability SampledCubeArray
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 138 142
EntryPoint Fragment 4 "main" 156 160
ExecutionMode 4 OriginUpperLeft
Name 4 "main"
Name 8 "r00"
Name 11 "g_tTex1df4"
Name 15 "g_sSamp"
Name 24 "r02"
Name 28 "g_tTex1di4"
Name 36 "r04"
Name 40 "g_tTex1du4"
Name 48 "r20"
Name 51 "g_tTex2df4"
Name 63 "r22"
Name 66 "g_tTex2di4"
Name 75 "r24"
Name 78 "g_tTex2du4"
Name 87 "r50"
Name 90 "g_tTexcdf4"
Name 102 "r52"
Name 105 "g_tTexcdi4"
Name 114 "r54"
Name 117 "g_tTexcdu4"
Name 127 "PS_OUTPUT"
MemberName 127(PS_OUTPUT) 0 "Color"
MemberName 127(PS_OUTPUT) 1 "Depth"
Name 129 "psout"
Name 138 "Color"
Name 142 "Depth"
Name 148 "g_tTex3df4"
Name 151 "g_tTex3di4"
Name 154 "g_tTex3du4"
Name 157 "g_tTex1df4a"
Name 160 "g_tTex1di4a"
Name 163 "g_tTex1du4a"
Name 166 "g_tTex2df4a"
Name 169 "g_tTex2di4a"
Name 172 "g_tTex2du4a"
Name 175 "g_tTexcdf4a"
Name 178 "g_tTexcdi4a"
Name 181 "g_tTexcdu4a"
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 28(g_tTex1di4) DescriptorSet 0
Decorate 40(g_tTex1du4) DescriptorSet 0
Decorate 51(g_tTex2df4) DescriptorSet 0
Decorate 66(g_tTex2di4) DescriptorSet 0
Decorate 78(g_tTex2du4) DescriptorSet 0
Decorate 90(g_tTexcdf4) DescriptorSet 0
Decorate 105(g_tTexcdi4) DescriptorSet 0
Decorate 117(g_tTexcdu4) DescriptorSet 0
Decorate 138(Color) Location 0
Decorate 142(Depth) BuiltIn FragDepth
Decorate 148(g_tTex3df4) DescriptorSet 0
Decorate 151(g_tTex3di4) DescriptorSet 0
Decorate 154(g_tTex3du4) DescriptorSet 0
Decorate 157(g_tTex1df4a) DescriptorSet 0
Decorate 160(g_tTex1di4a) DescriptorSet 0
Decorate 163(g_tTex1du4a) DescriptorSet 0
Decorate 166(g_tTex2df4a) DescriptorSet 0
Decorate 169(g_tTex2di4a) DescriptorSet 0
Decorate 172(g_tTex2du4a) DescriptorSet 0
Decorate 175(g_tTexcdf4a) DescriptorSet 0
Decorate 178(g_tTexcdi4a) DescriptorSet 0
Decorate 181(g_tTexcdu4a) DescriptorSet 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
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
@ -454,183 +454,201 @@ gl_FragCoord origin is upper left
18: TypeSampledImage 17
20: 6(float) Constant 1036831949
21: 6(float) Constant 1061158912
25: TypeInt 32 1
26: TypeImage 25(int) 1D sampled format:Unknown
27: TypePointer UniformConstant 26
28(g_tTex1di4): 27(ptr) Variable UniformConstant
31: TypeImage 25(int) 1D depth sampled format:Unknown
32: TypeSampledImage 31
37: TypeInt 32 0
38: TypeImage 37(int) 1D sampled format:Unknown
39: TypePointer UniformConstant 38
40(g_tTex1du4): 39(ptr) Variable UniformConstant
43: TypeImage 37(int) 1D depth sampled format:Unknown
44: TypeSampledImage 43
49: TypeImage 6(float) 2D sampled format:Unknown
50: TypePointer UniformConstant 49
51(g_tTex2df4): 50(ptr) Variable UniformConstant
54: TypeImage 6(float) 2D depth sampled format:Unknown
55: TypeSampledImage 54
57: TypeVector 6(float) 2
58: 6(float) Constant 1045220557
59: 57(fvec2) ConstantComposite 20 58
64: TypeImage 25(int) 2D sampled format:Unknown
65: TypePointer UniformConstant 64
66(g_tTex2di4): 65(ptr) Variable UniformConstant
69: TypeImage 25(int) 2D depth sampled format:Unknown
70: TypeSampledImage 69
76: TypeImage 37(int) 2D sampled format:Unknown
77: TypePointer UniformConstant 76
78(g_tTex2du4): 77(ptr) Variable UniformConstant
81: TypeImage 37(int) 2D depth sampled format:Unknown
82: TypeSampledImage 81
88: TypeImage 6(float) Cube sampled format:Unknown
89: TypePointer UniformConstant 88
90(g_tTexcdf4): 89(ptr) Variable UniformConstant
93: TypeImage 6(float) Cube depth sampled format:Unknown
94: TypeSampledImage 93
96: TypeVector 6(float) 3
97: 6(float) Constant 1050253722
98: 96(fvec3) ConstantComposite 20 58 97
103: TypeImage 25(int) Cube sampled format:Unknown
104: TypePointer UniformConstant 103
105(g_tTexcdi4): 104(ptr) Variable UniformConstant
108: TypeImage 25(int) Cube depth sampled format:Unknown
109: TypeSampledImage 108
115: TypeImage 37(int) Cube sampled format:Unknown
116: TypePointer UniformConstant 115
117(g_tTexcdu4): 116(ptr) Variable UniformConstant
120: TypeImage 37(int) Cube depth sampled format:Unknown
121: TypeSampledImage 120
126: TypeVector 6(float) 4
127(PS_OUTPUT): TypeStruct 126(fvec4) 6(float)
128: TypePointer Function 127(PS_OUTPUT)
130: 25(int) Constant 0
131: 6(float) Constant 1065353216
132: 126(fvec4) ConstantComposite 131 131 131 131
133: TypePointer Function 126(fvec4)
135: 25(int) Constant 1
137: TypePointer Output 126(fvec4)
138(Color): 137(ptr) Variable Output
141: TypePointer Output 6(float)
142(Depth): 141(ptr) Variable Output
146: TypeImage 6(float) 3D sampled format:Unknown
147: TypePointer UniformConstant 146
148(g_tTex3df4): 147(ptr) Variable UniformConstant
149: TypeImage 25(int) 3D sampled format:Unknown
150: TypePointer UniformConstant 149
151(g_tTex3di4): 150(ptr) Variable UniformConstant
152: TypeImage 37(int) 3D sampled format:Unknown
153: TypePointer UniformConstant 152
154(g_tTex3du4): 153(ptr) Variable UniformConstant
155: TypeImage 6(float) 1D array sampled format:Unknown
156: TypePointer UniformConstant 155
157(g_tTex1df4a): 156(ptr) Variable UniformConstant
158: TypeImage 25(int) 1D array sampled format:Unknown
159: TypePointer UniformConstant 158
160(g_tTex1di4a): 159(ptr) Variable UniformConstant
161: TypeImage 37(int) 1D array sampled format:Unknown
162: TypePointer UniformConstant 161
163(g_tTex1du4a): 162(ptr) Variable UniformConstant
164: TypeImage 6(float) 2D array sampled format:Unknown
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_tTex2df4a): 165(ptr) Variable UniformConstant
167: TypeImage 25(int) 2D array sampled format:Unknown
166(g_tTex3df4): 165(ptr) Variable UniformConstant
167: TypeImage 27(int) 3D sampled format:Unknown
168: TypePointer UniformConstant 167
169(g_tTex2di4a): 168(ptr) Variable UniformConstant
170: TypeImage 37(int) 2D array sampled format:Unknown
169(g_tTex3di4): 168(ptr) Variable UniformConstant
170: TypeImage 40(int) 3D sampled format:Unknown
171: TypePointer UniformConstant 170
172(g_tTex2du4a): 171(ptr) Variable UniformConstant
173: TypeImage 6(float) Cube array sampled format:Unknown
172(g_tTex3du4): 171(ptr) Variable UniformConstant
173: TypeImage 6(float) 1D array sampled format:Unknown
174: TypePointer UniformConstant 173
175(g_tTexcdf4a): 174(ptr) Variable UniformConstant
176: TypeImage 25(int) Cube array sampled format:Unknown
175(g_tTex1df4a): 174(ptr) Variable UniformConstant
176: TypeImage 27(int) 1D array sampled format:Unknown
177: TypePointer UniformConstant 176
178(g_tTexcdi4a): 177(ptr) Variable UniformConstant
179: TypeImage 37(int) Cube array sampled format:Unknown
178(g_tTex1di4a): 177(ptr) Variable UniformConstant
179: TypeImage 40(int) 1D array sampled format:Unknown
180: TypePointer UniformConstant 179
181(g_tTexcdu4a): 180(ptr) Variable UniformConstant
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
4(main): 2 Function None 3
5: Label
8(r00): 7(ptr) Variable Function
24(r02): 7(ptr) Variable Function
36(r04): 7(ptr) Variable Function
48(r20): 7(ptr) Variable Function
63(r22): 7(ptr) Variable Function
75(r24): 7(ptr) Variable Function
87(r50): 7(ptr) Variable Function
102(r52): 7(ptr) Variable Function
114(r54): 7(ptr) Variable Function
129(psout): 128(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
22: 6(float) CompositeExtract 20 0
23: 6(float) ImageSampleDrefImplicitLod 19 20 22
Store 8(r00) 23
29: 26 Load 28(g_tTex1di4)
30: 13 Load 15(g_sSamp)
33: 32 SampledImage 29 30
34: 6(float) CompositeExtract 20 0
35: 6(float) ImageSampleDrefImplicitLod 33 20 34
Store 24(r02) 35
41: 38 Load 40(g_tTex1du4)
42: 13 Load 15(g_sSamp)
45: 44 SampledImage 41 42
46: 6(float) CompositeExtract 20 0
47: 6(float) ImageSampleDrefImplicitLod 45 20 46
Store 36(r04) 47
52: 49 Load 51(g_tTex2df4)
53: 13 Load 15(g_sSamp)
56: 55 SampledImage 52 53
60: 6(float) CompositeExtract 59 0
61: 6(float) CompositeExtract 60 0
62: 6(float) ImageSampleDrefImplicitLod 56 60 61
Store 48(r20) 62
67: 64 Load 66(g_tTex2di4)
68: 13 Load 15(g_sSamp)
71: 70 SampledImage 67 68
72: 6(float) CompositeExtract 59 0
73: 6(float) CompositeExtract 72 0
74: 6(float) ImageSampleDrefImplicitLod 71 72 73
Store 63(r22) 74
79: 76 Load 78(g_tTex2du4)
80: 13 Load 15(g_sSamp)
83: 82 SampledImage 79 80
84: 6(float) CompositeExtract 59 0
85: 6(float) CompositeExtract 84 0
86: 6(float) ImageSampleDrefImplicitLod 83 84 85
Store 75(r24) 86
91: 88 Load 90(g_tTexcdf4)
92: 13 Load 15(g_sSamp)
95: 94 SampledImage 91 92
99: 6(float) CompositeExtract 98 0
100: 6(float) CompositeExtract 99 0
101: 6(float) ImageSampleDrefImplicitLod 95 99 100
Store 87(r50) 101
106: 103 Load 105(g_tTexcdi4)
107: 13 Load 15(g_sSamp)
110: 109 SampledImage 106 107
111: 6(float) CompositeExtract 98 0
112: 6(float) CompositeExtract 111 0
113: 6(float) ImageSampleDrefImplicitLod 110 111 112
Store 102(r52) 113
118: 115 Load 117(g_tTexcdu4)
119: 13 Load 15(g_sSamp)
122: 121 SampledImage 118 119
123: 6(float) CompositeExtract 98 0
124: 6(float) CompositeExtract 123 0
125: 6(float) ImageSampleDrefImplicitLod 122 123 124
Store 114(r54) 125
134: 133(ptr) AccessChain 129(psout) 130
Store 134 132
136: 7(ptr) AccessChain 129(psout) 135
Store 136 131
139: 133(ptr) AccessChain 129(psout) 130
140: 126(fvec4) Load 139
Store 138(Color) 140
143: 7(ptr) AccessChain 129(psout) 135
144: 6(float) Load 143
Store 142(Depth) 144
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
Return
FunctionEnd