glslang/Test/baseResults/hlsl.samplecmplevelzero.offset.dx10.frag.out
LoopDawg 195f584e09 HLSL: force textures to shadow modes from combined samplers
Texture shadow mode must match the state of the sampler they are
combined with.  This change does that, both for the AST and the
symbol table.  Note that the texture cannot easily be *created*
the right way, because this may not be known at that time.  Instead,
the texture is subsequently patched.

This cannot work if a single texture is used with both a shadow and
non-shadow sampler, so that case is detected and generates an error.
This is permitted by the HLSL language, however.  See #1073 discussion.

Fixed one test source that was using a texture with both shadow and
non-shadow samplers.
2017-09-28 14:17:25 -06:00

604 lines
29 KiB
Plaintext

hlsl.samplecmplevelzero.offset.dx10.frag
Shader version: 500
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 Parameters:
0:? Sequence
0:42 Sequence
0:42 move second child to first child ( temp float)
0:42 'r01' ( temp float)
0:42 textureLodOffset ( temp float)
0:42 Construct combined texture-sampler ( temp sampler1DShadow)
0:42 'g_tTex1df4' (layout( binding=0) uniform texture1DShadow)
0:42 'g_sSamp' (layout( binding=0) uniform sampler)
0:42 Construct vec2 ( temp 2-component vector of float)
0:42 Constant:
0:42 0.100000
0:42 Constant:
0:42 0.750000
0:42 Constant:
0:42 0.000000
0:42 Constant:
0:42 2 (const int)
0:43 Sequence
0:43 move second child to first child ( temp float)
0:43 'r03' ( temp float)
0:43 textureLodOffset ( temp float)
0:43 Construct combined texture-sampler ( temp isampler1DShadow)
0:43 'g_tTex1di4' ( uniform itexture1DShadow)
0:43 'g_sSamp' (layout( binding=0) uniform sampler)
0:43 Construct vec2 ( temp 2-component vector of float)
0:43 Constant:
0:43 0.100000
0:43 Constant:
0:43 0.750000
0:43 Constant:
0:43 0.000000
0:43 Constant:
0:43 2 (const int)
0:44 Sequence
0:44 move second child to first child ( temp float)
0:44 'r05' ( temp float)
0:44 textureLodOffset ( temp float)
0:44 Construct combined texture-sampler ( temp usampler1DShadow)
0:44 'g_tTex1du4' ( uniform utexture1DShadow)
0:44 'g_sSamp' (layout( binding=0) uniform sampler)
0:44 Construct vec2 ( temp 2-component vector of float)
0:44 Constant:
0:44 0.100000
0:44 Constant:
0:44 0.750000
0:44 Constant:
0:44 0.000000
0:44 Constant:
0:44 2 (const int)
0:47 Sequence
0:47 move second child to first child ( temp float)
0:47 'r21' ( temp float)
0:47 textureLodOffset ( temp float)
0:47 Construct combined texture-sampler ( temp sampler2DShadow)
0:47 'g_tTex2df4' ( uniform texture2DShadow)
0:47 'g_sSamp' (layout( binding=0) uniform sampler)
0:47 Construct vec3 ( temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
0:47 Constant:
0:47 0.750000
0:47 Constant:
0:47 0.000000
0:? Constant:
0:? 2 (const int)
0:? 3 (const int)
0:48 Sequence
0:48 move second child to first child ( temp float)
0:48 'r23' ( temp float)
0:48 textureLodOffset ( temp float)
0:48 Construct combined texture-sampler ( temp isampler2DShadow)
0:48 'g_tTex2di4' ( uniform itexture2DShadow)
0:48 'g_sSamp' (layout( binding=0) uniform sampler)
0:48 Construct vec3 ( temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
0:48 Constant:
0:48 0.750000
0:48 Constant:
0:48 0.000000
0:? Constant:
0:? 2 (const int)
0:? 3 (const int)
0:49 Sequence
0:49 move second child to first child ( temp float)
0:49 'r25' ( temp float)
0:49 textureLodOffset ( temp float)
0:49 Construct combined texture-sampler ( temp usampler2DShadow)
0:49 'g_tTex2du4' ( uniform utexture2DShadow)
0:49 'g_sSamp' (layout( binding=0) uniform sampler)
0:49 Construct vec3 ( temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
0:49 Constant:
0:49 0.750000
0:49 Constant:
0:49 0.000000
0:? Constant:
0:? 2 (const int)
0:? 3 (const int)
0:62 move second child to first child ( temp 4-component vector of float)
0:62 Color: direct index for structure ( temp 4-component vector of float)
0:62 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
0:62 Constant:
0:62 0 (const int)
0:62 Constant:
0:62 1.000000
0:62 1.000000
0:62 1.000000
0:62 1.000000
0:63 move second child to first child ( temp float)
0:63 Depth: direct index for structure ( temp float)
0:63 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
0:63 Constant:
0:63 1 (const int)
0:63 Constant:
0:63 1.000000
0:65 Branch: Return with expression
0:65 '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:? '@entryPointOutput.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:? '@entryPointOutput.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:? 'g_sSamp' (layout( binding=0) uniform sampler)
0:? 'g_tTex1df4' (layout( binding=0) uniform texture1DShadow)
0:? 'g_tTex1di4' ( uniform itexture1DShadow)
0:? 'g_tTex1du4' ( uniform utexture1DShadow)
0:? 'g_tTex2df4' ( uniform texture2DShadow)
0:? 'g_tTex2di4' ( uniform itexture2DShadow)
0:? 'g_tTex2du4' ( uniform utexture2DShadow)
0:? 'g_tTex3df4' ( uniform texture3D)
0:? 'g_tTex3di4' ( uniform itexture3D)
0:? 'g_tTex3du4' ( uniform utexture3D)
0:? 'g_tTexcdf4' ( uniform textureCube)
0:? 'g_tTexcdi4' ( uniform itextureCube)
0:? 'g_tTexcdu4' ( uniform utextureCube)
0:? 'g_tTex1df4a' ( uniform texture1DArray)
0:? 'g_tTex1di4a' ( uniform itexture1DArray)
0:? 'g_tTex1du4a' ( uniform utexture1DArray)
0:? 'g_tTex2df4a' ( uniform texture2DArray)
0:? 'g_tTex2di4a' ( uniform itexture2DArray)
0:? 'g_tTex2du4a' ( uniform utexture2DArray)
0:? 'g_tTexcdf4a' ( uniform textureCubeArray)
0:? 'g_tTexcdi4a' ( uniform itextureCubeArray)
0:? 'g_tTexcdu4a' ( uniform utextureCubeArray)
0:? '@entryPointOutput.Depth' ( out float FragDepth)
0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
Linked fragment stage:
Shader version: 500
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 Parameters:
0:? Sequence
0:42 Sequence
0:42 move second child to first child ( temp float)
0:42 'r01' ( temp float)
0:42 textureLodOffset ( temp float)
0:42 Construct combined texture-sampler ( temp sampler1DShadow)
0:42 'g_tTex1df4' (layout( binding=0) uniform texture1DShadow)
0:42 'g_sSamp' (layout( binding=0) uniform sampler)
0:42 Construct vec2 ( temp 2-component vector of float)
0:42 Constant:
0:42 0.100000
0:42 Constant:
0:42 0.750000
0:42 Constant:
0:42 0.000000
0:42 Constant:
0:42 2 (const int)
0:43 Sequence
0:43 move second child to first child ( temp float)
0:43 'r03' ( temp float)
0:43 textureLodOffset ( temp float)
0:43 Construct combined texture-sampler ( temp isampler1DShadow)
0:43 'g_tTex1di4' ( uniform itexture1DShadow)
0:43 'g_sSamp' (layout( binding=0) uniform sampler)
0:43 Construct vec2 ( temp 2-component vector of float)
0:43 Constant:
0:43 0.100000
0:43 Constant:
0:43 0.750000
0:43 Constant:
0:43 0.000000
0:43 Constant:
0:43 2 (const int)
0:44 Sequence
0:44 move second child to first child ( temp float)
0:44 'r05' ( temp float)
0:44 textureLodOffset ( temp float)
0:44 Construct combined texture-sampler ( temp usampler1DShadow)
0:44 'g_tTex1du4' ( uniform utexture1DShadow)
0:44 'g_sSamp' (layout( binding=0) uniform sampler)
0:44 Construct vec2 ( temp 2-component vector of float)
0:44 Constant:
0:44 0.100000
0:44 Constant:
0:44 0.750000
0:44 Constant:
0:44 0.000000
0:44 Constant:
0:44 2 (const int)
0:47 Sequence
0:47 move second child to first child ( temp float)
0:47 'r21' ( temp float)
0:47 textureLodOffset ( temp float)
0:47 Construct combined texture-sampler ( temp sampler2DShadow)
0:47 'g_tTex2df4' ( uniform texture2DShadow)
0:47 'g_sSamp' (layout( binding=0) uniform sampler)
0:47 Construct vec3 ( temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
0:47 Constant:
0:47 0.750000
0:47 Constant:
0:47 0.000000
0:? Constant:
0:? 2 (const int)
0:? 3 (const int)
0:48 Sequence
0:48 move second child to first child ( temp float)
0:48 'r23' ( temp float)
0:48 textureLodOffset ( temp float)
0:48 Construct combined texture-sampler ( temp isampler2DShadow)
0:48 'g_tTex2di4' ( uniform itexture2DShadow)
0:48 'g_sSamp' (layout( binding=0) uniform sampler)
0:48 Construct vec3 ( temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
0:48 Constant:
0:48 0.750000
0:48 Constant:
0:48 0.000000
0:? Constant:
0:? 2 (const int)
0:? 3 (const int)
0:49 Sequence
0:49 move second child to first child ( temp float)
0:49 'r25' ( temp float)
0:49 textureLodOffset ( temp float)
0:49 Construct combined texture-sampler ( temp usampler2DShadow)
0:49 'g_tTex2du4' ( uniform utexture2DShadow)
0:49 'g_sSamp' (layout( binding=0) uniform sampler)
0:49 Construct vec3 ( temp 3-component vector of float)
0:? Constant:
0:? 0.100000
0:? 0.200000
0:49 Constant:
0:49 0.750000
0:49 Constant:
0:49 0.000000
0:? Constant:
0:? 2 (const int)
0:? 3 (const int)
0:62 move second child to first child ( temp 4-component vector of float)
0:62 Color: direct index for structure ( temp 4-component vector of float)
0:62 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
0:62 Constant:
0:62 0 (const int)
0:62 Constant:
0:62 1.000000
0:62 1.000000
0:62 1.000000
0:62 1.000000
0:63 move second child to first child ( temp float)
0:63 Depth: direct index for structure ( temp float)
0:63 'psout' ( temp structure{ temp 4-component vector of float Color, temp float Depth})
0:63 Constant:
0:63 1 (const int)
0:63 Constant:
0:63 1.000000
0:65 Branch: Return with expression
0:65 '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:? '@entryPointOutput.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:? '@entryPointOutput.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:? 'g_sSamp' (layout( binding=0) uniform sampler)
0:? 'g_tTex1df4' (layout( binding=0) uniform texture1DShadow)
0:? 'g_tTex1di4' ( uniform itexture1DShadow)
0:? 'g_tTex1du4' ( uniform utexture1DShadow)
0:? 'g_tTex2df4' ( uniform texture2DShadow)
0:? 'g_tTex2di4' ( uniform itexture2DShadow)
0:? 'g_tTex2du4' ( uniform utexture2DShadow)
0:? 'g_tTex3df4' ( uniform texture3D)
0:? 'g_tTex3di4' ( uniform itexture3D)
0:? 'g_tTex3du4' ( uniform utexture3D)
0:? 'g_tTexcdf4' ( uniform textureCube)
0:? 'g_tTexcdi4' ( uniform itextureCube)
0:? 'g_tTexcdu4' ( uniform utextureCube)
0:? 'g_tTex1df4a' ( uniform texture1DArray)
0:? 'g_tTex1di4a' ( uniform itexture1DArray)
0:? 'g_tTex1du4a' ( uniform utexture1DArray)
0:? 'g_tTex2df4a' ( uniform texture2DArray)
0:? 'g_tTex2di4a' ( uniform itexture2DArray)
0:? 'g_tTex2du4a' ( uniform utexture2DArray)
0:? 'g_tTexcdf4a' ( uniform textureCubeArray)
0:? 'g_tTexcdi4a' ( uniform itextureCubeArray)
0:? 'g_tTexcdu4a' ( uniform utextureCubeArray)
0:? '@entryPointOutput.Depth' ( out float FragDepth)
0:? '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 168
Capability Shader
Capability Sampled1D
Capability SampledCubeArray
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
EntryPoint Fragment 4 "main" 116 120
ExecutionMode 4 OriginUpperLeft
Source HLSL 500
Name 4 "main"
Name 8 "PS_OUTPUT"
MemberName 8(PS_OUTPUT) 0 "Color"
MemberName 8(PS_OUTPUT) 1 "Depth"
Name 10 "@main("
Name 13 "r01"
Name 16 "g_tTex1df4"
Name 20 "g_sSamp"
Name 33 "r03"
Name 36 "g_tTex1di4"
Name 44 "r05"
Name 48 "g_tTex1du4"
Name 56 "r21"
Name 59 "g_tTex2df4"
Name 75 "r23"
Name 78 "g_tTex2di4"
Name 88 "r25"
Name 91 "g_tTex2du4"
Name 102 "psout"
Name 113 "flattenTemp"
Name 116 "@entryPointOutput.Color"
Name 120 "@entryPointOutput.Depth"
Name 125 "g_tTex3df4"
Name 128 "g_tTex3di4"
Name 131 "g_tTex3du4"
Name 134 "g_tTexcdf4"
Name 137 "g_tTexcdi4"
Name 140 "g_tTexcdu4"
Name 143 "g_tTex1df4a"
Name 146 "g_tTex1di4a"
Name 149 "g_tTex1du4a"
Name 152 "g_tTex2df4a"
Name 155 "g_tTex2di4a"
Name 158 "g_tTex2du4a"
Name 161 "g_tTexcdf4a"
Name 164 "g_tTexcdi4a"
Name 167 "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 36(g_tTex1di4) DescriptorSet 0
Decorate 48(g_tTex1du4) DescriptorSet 0
Decorate 59(g_tTex2df4) DescriptorSet 0
Decorate 78(g_tTex2di4) DescriptorSet 0
Decorate 91(g_tTex2du4) DescriptorSet 0
Decorate 116(@entryPointOutput.Color) Location 0
Decorate 120(@entryPointOutput.Depth) BuiltIn FragDepth
Decorate 125(g_tTex3df4) DescriptorSet 0
Decorate 128(g_tTex3di4) DescriptorSet 0
Decorate 131(g_tTex3du4) DescriptorSet 0
Decorate 134(g_tTexcdf4) DescriptorSet 0
Decorate 137(g_tTexcdi4) DescriptorSet 0
Decorate 140(g_tTexcdu4) DescriptorSet 0
Decorate 143(g_tTex1df4a) DescriptorSet 0
Decorate 146(g_tTex1di4a) DescriptorSet 0
Decorate 149(g_tTex1du4a) DescriptorSet 0
Decorate 152(g_tTex2df4a) DescriptorSet 0
Decorate 155(g_tTex2di4a) DescriptorSet 0
Decorate 158(g_tTex2du4a) DescriptorSet 0
Decorate 161(g_tTexcdf4a) DescriptorSet 0
Decorate 164(g_tTexcdi4a) DescriptorSet 0
Decorate 167(g_tTexcdu4a) DescriptorSet 0
2: TypeVoid
3: TypeFunction 2
6: TypeFloat 32
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 depth 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: TypeSampledImage 14
24: 6(float) Constant 1036831949
25: 6(float) Constant 1061158912
26: TypeVector 6(float) 2
28: 6(float) Constant 0
29: TypeInt 32 1
30: 29(int) Constant 2
34: TypeImage 29(int) 1D depth sampled format:Unknown
35: TypePointer UniformConstant 34
36(g_tTex1di4): 35(ptr) Variable UniformConstant
39: TypeSampledImage 34
45: TypeInt 32 0
46: TypeImage 45(int) 1D depth sampled format:Unknown
47: TypePointer UniformConstant 46
48(g_tTex1du4): 47(ptr) Variable UniformConstant
51: TypeSampledImage 46
57: TypeImage 6(float) 2D depth sampled format:Unknown
58: TypePointer UniformConstant 57
59(g_tTex2df4): 58(ptr) Variable UniformConstant
62: TypeSampledImage 57
64: 6(float) Constant 1045220557
65: 26(fvec2) ConstantComposite 24 64
66: TypeVector 6(float) 3
70: TypeVector 29(int) 2
71: 29(int) Constant 3
72: 70(ivec2) ConstantComposite 30 71
76: TypeImage 29(int) 2D depth sampled format:Unknown
77: TypePointer UniformConstant 76
78(g_tTex2di4): 77(ptr) Variable UniformConstant
81: TypeSampledImage 76
89: TypeImage 45(int) 2D depth sampled format:Unknown
90: TypePointer UniformConstant 89
91(g_tTex2du4): 90(ptr) Variable UniformConstant
94: TypeSampledImage 89
101: TypePointer Function 8(PS_OUTPUT)
103: 29(int) Constant 0
104: 6(float) Constant 1065353216
105: 7(fvec4) ConstantComposite 104 104 104 104
106: TypePointer Function 7(fvec4)
108: 29(int) Constant 1
115: TypePointer Output 7(fvec4)
116(@entryPointOutput.Color): 115(ptr) Variable Output
119: TypePointer Output 6(float)
120(@entryPointOutput.Depth): 119(ptr) Variable Output
123: TypeImage 6(float) 3D sampled format:Unknown
124: TypePointer UniformConstant 123
125(g_tTex3df4): 124(ptr) Variable UniformConstant
126: TypeImage 29(int) 3D sampled format:Unknown
127: TypePointer UniformConstant 126
128(g_tTex3di4): 127(ptr) Variable UniformConstant
129: TypeImage 45(int) 3D sampled format:Unknown
130: TypePointer UniformConstant 129
131(g_tTex3du4): 130(ptr) Variable UniformConstant
132: TypeImage 6(float) Cube sampled format:Unknown
133: TypePointer UniformConstant 132
134(g_tTexcdf4): 133(ptr) Variable UniformConstant
135: TypeImage 29(int) Cube sampled format:Unknown
136: TypePointer UniformConstant 135
137(g_tTexcdi4): 136(ptr) Variable UniformConstant
138: TypeImage 45(int) Cube sampled format:Unknown
139: TypePointer UniformConstant 138
140(g_tTexcdu4): 139(ptr) Variable UniformConstant
141: TypeImage 6(float) 1D array sampled format:Unknown
142: TypePointer UniformConstant 141
143(g_tTex1df4a): 142(ptr) Variable UniformConstant
144: TypeImage 29(int) 1D array sampled format:Unknown
145: TypePointer UniformConstant 144
146(g_tTex1di4a): 145(ptr) Variable UniformConstant
147: TypeImage 45(int) 1D array sampled format:Unknown
148: TypePointer UniformConstant 147
149(g_tTex1du4a): 148(ptr) Variable UniformConstant
150: TypeImage 6(float) 2D array sampled format:Unknown
151: TypePointer UniformConstant 150
152(g_tTex2df4a): 151(ptr) Variable UniformConstant
153: TypeImage 29(int) 2D array sampled format:Unknown
154: TypePointer UniformConstant 153
155(g_tTex2di4a): 154(ptr) Variable UniformConstant
156: TypeImage 45(int) 2D array sampled format:Unknown
157: TypePointer UniformConstant 156
158(g_tTex2du4a): 157(ptr) Variable UniformConstant
159: TypeImage 6(float) Cube array sampled format:Unknown
160: TypePointer UniformConstant 159
161(g_tTexcdf4a): 160(ptr) Variable UniformConstant
162: TypeImage 29(int) Cube array sampled format:Unknown
163: TypePointer UniformConstant 162
164(g_tTexcdi4a): 163(ptr) Variable UniformConstant
165: TypeImage 45(int) Cube array sampled format:Unknown
166: TypePointer UniformConstant 165
167(g_tTexcdu4a): 166(ptr) Variable UniformConstant
4(main): 2 Function None 3
5: Label
113(flattenTemp): 101(ptr) Variable Function
114:8(PS_OUTPUT) FunctionCall 10(@main()
Store 113(flattenTemp) 114
117: 106(ptr) AccessChain 113(flattenTemp) 103
118: 7(fvec4) Load 117
Store 116(@entryPointOutput.Color) 118
121: 12(ptr) AccessChain 113(flattenTemp) 108
122: 6(float) Load 121
Store 120(@entryPointOutput.Depth) 122
Return
FunctionEnd
10(@main():8(PS_OUTPUT) Function None 9
11: Label
13(r01): 12(ptr) Variable Function
33(r03): 12(ptr) Variable Function
44(r05): 12(ptr) Variable Function
56(r21): 12(ptr) Variable Function
75(r23): 12(ptr) Variable Function
88(r25): 12(ptr) Variable Function
102(psout): 101(ptr) Variable Function
17: 14 Load 16(g_tTex1df4)
21: 18 Load 20(g_sSamp)
23: 22 SampledImage 17 21
27: 26(fvec2) CompositeConstruct 24 25
31: 6(float) CompositeExtract 27 1
32: 6(float) ImageSampleDrefExplicitLod 23 27 31 Lod ConstOffset 28 30
Store 13(r01) 32
37: 34 Load 36(g_tTex1di4)
38: 18 Load 20(g_sSamp)
40: 39 SampledImage 37 38
41: 26(fvec2) CompositeConstruct 24 25
42: 6(float) CompositeExtract 41 1
43: 6(float) ImageSampleDrefExplicitLod 40 41 42 Lod ConstOffset 28 30
Store 33(r03) 43
49: 46 Load 48(g_tTex1du4)
50: 18 Load 20(g_sSamp)
52: 51 SampledImage 49 50
53: 26(fvec2) CompositeConstruct 24 25
54: 6(float) CompositeExtract 53 1
55: 6(float) ImageSampleDrefExplicitLod 52 53 54 Lod ConstOffset 28 30
Store 44(r05) 55
60: 57 Load 59(g_tTex2df4)
61: 18 Load 20(g_sSamp)
63: 62 SampledImage 60 61
67: 6(float) CompositeExtract 65 0
68: 6(float) CompositeExtract 65 1
69: 66(fvec3) CompositeConstruct 67 68 25
73: 6(float) CompositeExtract 69 2
74: 6(float) ImageSampleDrefExplicitLod 63 69 73 Lod ConstOffset 28 72
Store 56(r21) 74
79: 76 Load 78(g_tTex2di4)
80: 18 Load 20(g_sSamp)
82: 81 SampledImage 79 80
83: 6(float) CompositeExtract 65 0
84: 6(float) CompositeExtract 65 1
85: 66(fvec3) CompositeConstruct 83 84 25
86: 6(float) CompositeExtract 85 2
87: 6(float) ImageSampleDrefExplicitLod 82 85 86 Lod ConstOffset 28 72
Store 75(r23) 87
92: 89 Load 91(g_tTex2du4)
93: 18 Load 20(g_sSamp)
95: 94 SampledImage 92 93
96: 6(float) CompositeExtract 65 0
97: 6(float) CompositeExtract 65 1
98: 66(fvec3) CompositeConstruct 96 97 25
99: 6(float) CompositeExtract 98 2
100: 6(float) ImageSampleDrefExplicitLod 95 98 99 Lod ConstOffset 28 72
Store 88(r25) 100
107: 106(ptr) AccessChain 102(psout) 103
Store 107 105
109: 12(ptr) AccessChain 102(psout) 108
Store 109 104
110:8(PS_OUTPUT) Load 102(psout)
ReturnValue 110
FunctionEnd