hlsl.samplecmp.array.dx10.frag
Shader version: 500
gl_FragCoord origin is upper left
using depth_any
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          'r10' ( temp float)
0:42          texture ( temp float)
0:42            Construct combined texture-sampler ( temp sampler1DArrayShadow)
0:42              'g_tTex1df4a' ( uniform texture1DArrayShadow)
0:42              'g_sSamp' (layout( binding=0) uniform sampler)
0:42            Construct vec3 ( temp 3-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:42              Constant:
0:42                0.750000
0:43      Sequence
0:43        move second child to first child ( temp float)
0:43          'r12' ( temp float)
0:43          texture ( temp float)
0:43            Construct combined texture-sampler ( temp isampler1DArrayShadow)
0:43              'g_tTex1di4a' ( uniform itexture1DArrayShadow)
0:43              'g_sSamp' (layout( binding=0) uniform sampler)
0:43            Construct vec3 ( temp 3-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:43              Constant:
0:43                0.750000
0:44      Sequence
0:44        move second child to first child ( temp float)
0:44          'r14' ( temp float)
0:44          texture ( temp float)
0:44            Construct combined texture-sampler ( temp usampler1DArrayShadow)
0:44              'g_tTex1du4a' ( uniform utexture1DArrayShadow)
0:44              'g_sSamp' (layout( binding=0) uniform sampler)
0:44            Construct vec3 ( temp 3-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:44              Constant:
0:44                0.750000
0:47      Sequence
0:47        move second child to first child ( temp float)
0:47          'r30' ( temp float)
0:47          texture ( temp float)
0:47            Construct combined texture-sampler ( temp sampler2DArrayShadow)
0:47              'g_tTex2df4a' ( uniform texture2DArrayShadow)
0:47              'g_sSamp' (layout( binding=0) uniform sampler)
0:47            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:47              Constant:
0:47                0.750000
0:48      Sequence
0:48        move second child to first child ( temp float)
0:48          'r32' ( temp float)
0:48          texture ( temp float)
0:48            Construct combined texture-sampler ( temp isampler2DArrayShadow)
0:48              'g_tTex2di4a' ( uniform itexture2DArrayShadow)
0:48              'g_sSamp' (layout( binding=0) uniform sampler)
0:48            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:48              Constant:
0:48                0.750000
0:49      Sequence
0:49        move second child to first child ( temp float)
0:49          'r34' ( temp float)
0:49          texture ( temp float)
0:49            Construct combined texture-sampler ( temp usampler2DArrayShadow)
0:49              'g_tTex2du4a' ( uniform utexture2DArrayShadow)
0:49              'g_sSamp' (layout( binding=0) uniform sampler)
0:49            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:49              Constant:
0:49                0.750000
0:52      Sequence
0:52        move second child to first child ( temp float)
0:52          'r60' ( temp float)
0:52          texture ( temp float)
0:52            Construct combined texture-sampler ( temp samplerCubeArrayShadow)
0:52              'g_tTexcdf4a' ( uniform textureCubeArrayShadow)
0:52              'g_sSamp' (layout( binding=0) uniform sampler)
0:52            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:?                 0.400000
0:52            Constant:
0:52              0.750000
0:53      Sequence
0:53        move second child to first child ( temp float)
0:53          'r62' ( temp float)
0:53          texture ( temp float)
0:53            Construct combined texture-sampler ( temp isamplerCubeArrayShadow)
0:53              'g_tTexcdi4a' ( uniform itextureCubeArrayShadow)
0:53              'g_sSamp' (layout( binding=0) uniform sampler)
0:53            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:?                 0.400000
0:53            Constant:
0:53              0.750000
0:54      Sequence
0:54        move second child to first child ( temp float)
0:54          'r64' ( temp float)
0:54          texture ( temp float)
0:54            Construct combined texture-sampler ( temp usamplerCubeArrayShadow)
0:54              'g_tTexcdu4a' ( uniform utextureCubeArrayShadow)
0:54              'g_sSamp' (layout( binding=0) uniform sampler)
0:54            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:?                 0.400000
0:54            Constant:
0:54              0.750000
0:56      move second child to first child ( temp 4-component vector of float)
0:56        Color: direct index for structure ( temp 4-component vector of float)
0:56          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:56          Constant:
0:56            0 (const int)
0:56        Constant:
0:56          1.000000
0:56          1.000000
0:56          1.000000
0:56          1.000000
0:57      move second child to first child ( temp float)
0:57        Depth: direct index for structure ( temp float)
0:57          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:57          Constant:
0:57            1 (const int)
0:57        Constant:
0:57          1.000000
0:59      Branch: Return with expression
0:59        '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 texture1D)
0:?     'g_tTex1di4' ( uniform itexture1D)
0:?     'g_tTex1du4' ( uniform utexture1D)
0:?     'g_tTex2df4' ( uniform texture2D)
0:?     'g_tTex2di4' ( uniform itexture2D)
0:?     'g_tTex2du4' ( uniform utexture2D)
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 texture1DArrayShadow)
0:?     'g_tTex1di4a' ( uniform itexture1DArrayShadow)
0:?     'g_tTex1du4a' ( uniform utexture1DArrayShadow)
0:?     'g_tTex2df4a' ( uniform texture2DArrayShadow)
0:?     'g_tTex2di4a' ( uniform itexture2DArrayShadow)
0:?     'g_tTex2du4a' ( uniform utexture2DArrayShadow)
0:?     'g_tTexcdf4a' ( uniform textureCubeArrayShadow)
0:?     'g_tTexcdi4a' ( uniform itextureCubeArrayShadow)
0:?     'g_tTexcdu4a' ( uniform utextureCubeArrayShadow)
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
using depth_any
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          'r10' ( temp float)
0:42          texture ( temp float)
0:42            Construct combined texture-sampler ( temp sampler1DArrayShadow)
0:42              'g_tTex1df4a' ( uniform texture1DArrayShadow)
0:42              'g_sSamp' (layout( binding=0) uniform sampler)
0:42            Construct vec3 ( temp 3-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:42              Constant:
0:42                0.750000
0:43      Sequence
0:43        move second child to first child ( temp float)
0:43          'r12' ( temp float)
0:43          texture ( temp float)
0:43            Construct combined texture-sampler ( temp isampler1DArrayShadow)
0:43              'g_tTex1di4a' ( uniform itexture1DArrayShadow)
0:43              'g_sSamp' (layout( binding=0) uniform sampler)
0:43            Construct vec3 ( temp 3-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:43              Constant:
0:43                0.750000
0:44      Sequence
0:44        move second child to first child ( temp float)
0:44          'r14' ( temp float)
0:44          texture ( temp float)
0:44            Construct combined texture-sampler ( temp usampler1DArrayShadow)
0:44              'g_tTex1du4a' ( uniform utexture1DArrayShadow)
0:44              'g_sSamp' (layout( binding=0) uniform sampler)
0:44            Construct vec3 ( temp 3-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:44              Constant:
0:44                0.750000
0:47      Sequence
0:47        move second child to first child ( temp float)
0:47          'r30' ( temp float)
0:47          texture ( temp float)
0:47            Construct combined texture-sampler ( temp sampler2DArrayShadow)
0:47              'g_tTex2df4a' ( uniform texture2DArrayShadow)
0:47              'g_sSamp' (layout( binding=0) uniform sampler)
0:47            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:47              Constant:
0:47                0.750000
0:48      Sequence
0:48        move second child to first child ( temp float)
0:48          'r32' ( temp float)
0:48          texture ( temp float)
0:48            Construct combined texture-sampler ( temp isampler2DArrayShadow)
0:48              'g_tTex2di4a' ( uniform itexture2DArrayShadow)
0:48              'g_sSamp' (layout( binding=0) uniform sampler)
0:48            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:48              Constant:
0:48                0.750000
0:49      Sequence
0:49        move second child to first child ( temp float)
0:49          'r34' ( temp float)
0:49          texture ( temp float)
0:49            Construct combined texture-sampler ( temp usampler2DArrayShadow)
0:49              'g_tTex2du4a' ( uniform utexture2DArrayShadow)
0:49              'g_sSamp' (layout( binding=0) uniform sampler)
0:49            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:49              Constant:
0:49                0.750000
0:52      Sequence
0:52        move second child to first child ( temp float)
0:52          'r60' ( temp float)
0:52          texture ( temp float)
0:52            Construct combined texture-sampler ( temp samplerCubeArrayShadow)
0:52              'g_tTexcdf4a' ( uniform textureCubeArrayShadow)
0:52              'g_sSamp' (layout( binding=0) uniform sampler)
0:52            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:?                 0.400000
0:52            Constant:
0:52              0.750000
0:53      Sequence
0:53        move second child to first child ( temp float)
0:53          'r62' ( temp float)
0:53          texture ( temp float)
0:53            Construct combined texture-sampler ( temp isamplerCubeArrayShadow)
0:53              'g_tTexcdi4a' ( uniform itextureCubeArrayShadow)
0:53              'g_sSamp' (layout( binding=0) uniform sampler)
0:53            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:?                 0.400000
0:53            Constant:
0:53              0.750000
0:54      Sequence
0:54        move second child to first child ( temp float)
0:54          'r64' ( temp float)
0:54          texture ( temp float)
0:54            Construct combined texture-sampler ( temp usamplerCubeArrayShadow)
0:54              'g_tTexcdu4a' ( uniform utextureCubeArrayShadow)
0:54              'g_sSamp' (layout( binding=0) uniform sampler)
0:54            Construct vec4 ( temp 4-component vector of float)
0:?               Constant:
0:?                 0.100000
0:?                 0.200000
0:?                 0.300000
0:?                 0.400000
0:54            Constant:
0:54              0.750000
0:56      move second child to first child ( temp 4-component vector of float)
0:56        Color: direct index for structure ( temp 4-component vector of float)
0:56          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:56          Constant:
0:56            0 (const int)
0:56        Constant:
0:56          1.000000
0:56          1.000000
0:56          1.000000
0:56          1.000000
0:57      move second child to first child ( temp float)
0:57        Depth: direct index for structure ( temp float)
0:57          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:57          Constant:
0:57            1 (const int)
0:57        Constant:
0:57          1.000000
0:59      Branch: Return with expression
0:59        '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 texture1D)
0:?     'g_tTex1di4' ( uniform itexture1D)
0:?     'g_tTex1du4' ( uniform utexture1D)
0:?     'g_tTex2df4' ( uniform texture2D)
0:?     'g_tTex2di4' ( uniform itexture2D)
0:?     'g_tTex2du4' ( uniform utexture2D)
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 texture1DArrayShadow)
0:?     'g_tTex1di4a' ( uniform itexture1DArrayShadow)
0:?     'g_tTex1du4a' ( uniform utexture1DArrayShadow)
0:?     'g_tTex2df4a' ( uniform texture2DArrayShadow)
0:?     'g_tTex2di4a' ( uniform itexture2DArrayShadow)
0:?     'g_tTex2du4a' ( uniform utexture2DArrayShadow)
0:?     'g_tTexcdf4a' ( uniform textureCubeArrayShadow)
0:?     'g_tTexcdi4a' ( uniform itextureCubeArrayShadow)
0:?     'g_tTexcdu4a' ( uniform utextureCubeArrayShadow)
0:?     '@entryPointOutput.Depth' ( out float FragDepth)
0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)

Validation failed
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 209

                              Capability Shader
                              Capability Sampled1D
                              Capability SampledCubeArray
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 166 170
                              ExecutionMode 4 OriginUpperLeft
                              ExecutionMode 4 DepthReplacing
                              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  "r10"
                              Name 16  "g_tTex1df4a"
                              Name 20  "g_sSamp"
                              Name 35  "r12"
                              Name 39  "g_tTex1di4a"
                              Name 49  "r14"
                              Name 53  "g_tTex1du4a"
                              Name 63  "r30"
                              Name 66  "g_tTex2df4a"
                              Name 79  "r32"
                              Name 82  "g_tTex2di4a"
                              Name 93  "r34"
                              Name 96  "g_tTex2du4a"
                              Name 107  "r60"
                              Name 110  "g_tTexcdf4a"
                              Name 123  "r62"
                              Name 126  "g_tTexcdi4a"
                              Name 137  "r64"
                              Name 140  "g_tTexcdu4a"
                              Name 152  "psout"
                              Name 163  "flattenTemp"
                              Name 166  "@entryPointOutput.Color"
                              Name 170  "@entryPointOutput.Depth"
                              Name 175  "g_tTex1df4"
                              Name 178  "g_tTex1di4"
                              Name 181  "g_tTex1du4"
                              Name 184  "g_tTex2df4"
                              Name 187  "g_tTex2di4"
                              Name 190  "g_tTex2du4"
                              Name 193  "g_tTex3df4"
                              Name 196  "g_tTex3di4"
                              Name 199  "g_tTex3du4"
                              Name 202  "g_tTexcdf4"
                              Name 205  "g_tTexcdi4"
                              Name 208  "g_tTexcdu4"
                              Decorate 16(g_tTex1df4a) DescriptorSet 0
                              Decorate 16(g_tTex1df4a) Binding 0
                              Decorate 20(g_sSamp) DescriptorSet 0
                              Decorate 20(g_sSamp) Binding 0
                              Decorate 39(g_tTex1di4a) DescriptorSet 0
                              Decorate 39(g_tTex1di4a) Binding 0
                              Decorate 53(g_tTex1du4a) DescriptorSet 0
                              Decorate 53(g_tTex1du4a) Binding 0
                              Decorate 66(g_tTex2df4a) DescriptorSet 0
                              Decorate 66(g_tTex2df4a) Binding 0
                              Decorate 82(g_tTex2di4a) DescriptorSet 0
                              Decorate 82(g_tTex2di4a) Binding 0
                              Decorate 96(g_tTex2du4a) DescriptorSet 0
                              Decorate 96(g_tTex2du4a) Binding 0
                              Decorate 110(g_tTexcdf4a) DescriptorSet 0
                              Decorate 110(g_tTexcdf4a) Binding 0
                              Decorate 126(g_tTexcdi4a) DescriptorSet 0
                              Decorate 126(g_tTexcdi4a) Binding 0
                              Decorate 140(g_tTexcdu4a) DescriptorSet 0
                              Decorate 140(g_tTexcdu4a) Binding 0
                              Decorate 166(@entryPointOutput.Color) Location 0
                              Decorate 170(@entryPointOutput.Depth) BuiltIn FragDepth
                              Decorate 175(g_tTex1df4) DescriptorSet 0
                              Decorate 175(g_tTex1df4) Binding 0
                              Decorate 178(g_tTex1di4) DescriptorSet 0
                              Decorate 178(g_tTex1di4) Binding 0
                              Decorate 181(g_tTex1du4) DescriptorSet 0
                              Decorate 181(g_tTex1du4) Binding 0
                              Decorate 184(g_tTex2df4) DescriptorSet 0
                              Decorate 184(g_tTex2df4) Binding 0
                              Decorate 187(g_tTex2di4) DescriptorSet 0
                              Decorate 187(g_tTex2di4) Binding 0
                              Decorate 190(g_tTex2du4) DescriptorSet 0
                              Decorate 190(g_tTex2du4) Binding 0
                              Decorate 193(g_tTex3df4) DescriptorSet 0
                              Decorate 193(g_tTex3df4) Binding 0
                              Decorate 196(g_tTex3di4) DescriptorSet 0
                              Decorate 196(g_tTex3di4) Binding 0
                              Decorate 199(g_tTex3du4) DescriptorSet 0
                              Decorate 199(g_tTex3du4) Binding 0
                              Decorate 202(g_tTexcdf4) DescriptorSet 0
                              Decorate 202(g_tTexcdf4) Binding 0
                              Decorate 205(g_tTexcdi4) DescriptorSet 0
                              Decorate 205(g_tTexcdi4) Binding 0
                              Decorate 208(g_tTexcdu4) DescriptorSet 0
                              Decorate 208(g_tTexcdu4) Binding 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 array sampled format:Unknown
              15:             TypePointer UniformConstant 14
 16(g_tTex1df4a):     15(ptr) Variable UniformConstant
              18:             TypeSampler
              19:             TypePointer UniformConstant 18
     20(g_sSamp):     19(ptr) Variable UniformConstant
              22:             TypeSampledImage 14
              24:             TypeVector 6(float) 2
              25:    6(float) Constant 1036831949
              26:    6(float) Constant 1045220557
              27:   24(fvec2) ConstantComposite 25 26
              28:    6(float) Constant 1061158912
              29:             TypeVector 6(float) 3
              36:             TypeInt 32 1
              37:             TypeImage 36(int) 1D depth array sampled format:Unknown
              38:             TypePointer UniformConstant 37
 39(g_tTex1di4a):     38(ptr) Variable UniformConstant
              42:             TypeSampledImage 37
              50:             TypeInt 32 0
              51:             TypeImage 50(int) 1D depth array sampled format:Unknown
              52:             TypePointer UniformConstant 51
 53(g_tTex1du4a):     52(ptr) Variable UniformConstant
              56:             TypeSampledImage 51
              64:             TypeImage 6(float) 2D depth array sampled format:Unknown
              65:             TypePointer UniformConstant 64
 66(g_tTex2df4a):     65(ptr) Variable UniformConstant
              69:             TypeSampledImage 64
              71:    6(float) Constant 1050253722
              72:   29(fvec3) ConstantComposite 25 26 71
              80:             TypeImage 36(int) 2D depth array sampled format:Unknown
              81:             TypePointer UniformConstant 80
 82(g_tTex2di4a):     81(ptr) Variable UniformConstant
              85:             TypeSampledImage 80
              94:             TypeImage 50(int) 2D depth array sampled format:Unknown
              95:             TypePointer UniformConstant 94
 96(g_tTex2du4a):     95(ptr) Variable UniformConstant
              99:             TypeSampledImage 94
             108:             TypeImage 6(float) Cube depth array sampled format:Unknown
             109:             TypePointer UniformConstant 108
110(g_tTexcdf4a):    109(ptr) Variable UniformConstant
             113:             TypeSampledImage 108
             115:    6(float) Constant 1053609165
             116:    7(fvec4) ConstantComposite 25 26 71 115
             124:             TypeImage 36(int) Cube depth array sampled format:Unknown
             125:             TypePointer UniformConstant 124
126(g_tTexcdi4a):    125(ptr) Variable UniformConstant
             129:             TypeSampledImage 124
             138:             TypeImage 50(int) Cube depth array sampled format:Unknown
             139:             TypePointer UniformConstant 138
140(g_tTexcdu4a):    139(ptr) Variable UniformConstant
             143:             TypeSampledImage 138
             151:             TypePointer Function 8(PS_OUTPUT)
             153:     36(int) Constant 0
             154:    6(float) Constant 1065353216
             155:    7(fvec4) ConstantComposite 154 154 154 154
             156:             TypePointer Function 7(fvec4)
             158:     36(int) Constant 1
             165:             TypePointer Output 7(fvec4)
166(@entryPointOutput.Color):    165(ptr) Variable Output
             169:             TypePointer Output 6(float)
170(@entryPointOutput.Depth):    169(ptr) Variable Output
             173:             TypeImage 6(float) 1D sampled format:Unknown
             174:             TypePointer UniformConstant 173
 175(g_tTex1df4):    174(ptr) Variable UniformConstant
             176:             TypeImage 36(int) 1D sampled format:Unknown
             177:             TypePointer UniformConstant 176
 178(g_tTex1di4):    177(ptr) Variable UniformConstant
             179:             TypeImage 50(int) 1D sampled format:Unknown
             180:             TypePointer UniformConstant 179
 181(g_tTex1du4):    180(ptr) Variable UniformConstant
             182:             TypeImage 6(float) 2D sampled format:Unknown
             183:             TypePointer UniformConstant 182
 184(g_tTex2df4):    183(ptr) Variable UniformConstant
             185:             TypeImage 36(int) 2D sampled format:Unknown
             186:             TypePointer UniformConstant 185
 187(g_tTex2di4):    186(ptr) Variable UniformConstant
             188:             TypeImage 50(int) 2D sampled format:Unknown
             189:             TypePointer UniformConstant 188
 190(g_tTex2du4):    189(ptr) Variable UniformConstant
             191:             TypeImage 6(float) 3D sampled format:Unknown
             192:             TypePointer UniformConstant 191
 193(g_tTex3df4):    192(ptr) Variable UniformConstant
             194:             TypeImage 36(int) 3D sampled format:Unknown
             195:             TypePointer UniformConstant 194
 196(g_tTex3di4):    195(ptr) Variable UniformConstant
             197:             TypeImage 50(int) 3D sampled format:Unknown
             198:             TypePointer UniformConstant 197
 199(g_tTex3du4):    198(ptr) Variable UniformConstant
             200:             TypeImage 6(float) Cube sampled format:Unknown
             201:             TypePointer UniformConstant 200
 202(g_tTexcdf4):    201(ptr) Variable UniformConstant
             203:             TypeImage 36(int) Cube sampled format:Unknown
             204:             TypePointer UniformConstant 203
 205(g_tTexcdi4):    204(ptr) Variable UniformConstant
             206:             TypeImage 50(int) Cube sampled format:Unknown
             207:             TypePointer UniformConstant 206
 208(g_tTexcdu4):    207(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
163(flattenTemp):    151(ptr) Variable Function
             164:8(PS_OUTPUT) FunctionCall 10(@main()
                              Store 163(flattenTemp) 164
             167:    156(ptr) AccessChain 163(flattenTemp) 153
             168:    7(fvec4) Load 167
                              Store 166(@entryPointOutput.Color) 168
             171:     12(ptr) AccessChain 163(flattenTemp) 158
             172:    6(float) Load 171
                              Store 170(@entryPointOutput.Depth) 172
                              Return
                              FunctionEnd
      10(@main():8(PS_OUTPUT) Function None 9
              11:             Label
         13(r10):     12(ptr) Variable Function
         35(r12):     12(ptr) Variable Function
         49(r14):     12(ptr) Variable Function
         63(r30):     12(ptr) Variable Function
         79(r32):     12(ptr) Variable Function
         93(r34):     12(ptr) Variable Function
        107(r60):     12(ptr) Variable Function
        123(r62):     12(ptr) Variable Function
        137(r64):     12(ptr) Variable Function
      152(psout):    151(ptr) Variable Function
              17:          14 Load 16(g_tTex1df4a)
              21:          18 Load 20(g_sSamp)
              23:          22 SampledImage 17 21
              30:    6(float) CompositeExtract 27 0
              31:    6(float) CompositeExtract 27 1
              32:   29(fvec3) CompositeConstruct 30 31 28
              33:    6(float) CompositeExtract 32 2
              34:    6(float) ImageSampleDrefImplicitLod 23 32 33
                              Store 13(r10) 34
              40:          37 Load 39(g_tTex1di4a)
              41:          18 Load 20(g_sSamp)
              43:          42 SampledImage 40 41
              44:    6(float) CompositeExtract 27 0
              45:    6(float) CompositeExtract 27 1
              46:   29(fvec3) CompositeConstruct 44 45 28
              47:    6(float) CompositeExtract 46 2
              48:    6(float) ImageSampleDrefImplicitLod 43 46 47
                              Store 35(r12) 48
              54:          51 Load 53(g_tTex1du4a)
              55:          18 Load 20(g_sSamp)
              57:          56 SampledImage 54 55
              58:    6(float) CompositeExtract 27 0
              59:    6(float) CompositeExtract 27 1
              60:   29(fvec3) CompositeConstruct 58 59 28
              61:    6(float) CompositeExtract 60 2
              62:    6(float) ImageSampleDrefImplicitLod 57 60 61
                              Store 49(r14) 62
              67:          64 Load 66(g_tTex2df4a)
              68:          18 Load 20(g_sSamp)
              70:          69 SampledImage 67 68
              73:    6(float) CompositeExtract 72 0
              74:    6(float) CompositeExtract 72 1
              75:    6(float) CompositeExtract 72 2
              76:    7(fvec4) CompositeConstruct 73 74 75 28
              77:    6(float) CompositeExtract 76 3
              78:    6(float) ImageSampleDrefImplicitLod 70 76 77
                              Store 63(r30) 78
              83:          80 Load 82(g_tTex2di4a)
              84:          18 Load 20(g_sSamp)
              86:          85 SampledImage 83 84
              87:    6(float) CompositeExtract 72 0
              88:    6(float) CompositeExtract 72 1
              89:    6(float) CompositeExtract 72 2
              90:    7(fvec4) CompositeConstruct 87 88 89 28
              91:    6(float) CompositeExtract 90 3
              92:    6(float) ImageSampleDrefImplicitLod 86 90 91
                              Store 79(r32) 92
              97:          94 Load 96(g_tTex2du4a)
              98:          18 Load 20(g_sSamp)
             100:          99 SampledImage 97 98
             101:    6(float) CompositeExtract 72 0
             102:    6(float) CompositeExtract 72 1
             103:    6(float) CompositeExtract 72 2
             104:    7(fvec4) CompositeConstruct 101 102 103 28
             105:    6(float) CompositeExtract 104 3
             106:    6(float) ImageSampleDrefImplicitLod 100 104 105
                              Store 93(r34) 106
             111:         108 Load 110(g_tTexcdf4a)
             112:          18 Load 20(g_sSamp)
             114:         113 SampledImage 111 112
             117:    6(float) CompositeExtract 116 0
             118:    6(float) CompositeExtract 116 1
             119:    6(float) CompositeExtract 116 2
             120:    6(float) CompositeExtract 116 3
             121:    7(fvec4) CompositeConstruct 117 118 119 120
             122:    6(float) ImageSampleDrefImplicitLod 114 121 28
                              Store 107(r60) 122
             127:         124 Load 126(g_tTexcdi4a)
             128:          18 Load 20(g_sSamp)
             130:         129 SampledImage 127 128
             131:    6(float) CompositeExtract 116 0
             132:    6(float) CompositeExtract 116 1
             133:    6(float) CompositeExtract 116 2
             134:    6(float) CompositeExtract 116 3
             135:    7(fvec4) CompositeConstruct 131 132 133 134
             136:    6(float) ImageSampleDrefImplicitLod 130 135 28
                              Store 123(r62) 136
             141:         138 Load 140(g_tTexcdu4a)
             142:          18 Load 20(g_sSamp)
             144:         143 SampledImage 141 142
             145:    6(float) CompositeExtract 116 0
             146:    6(float) CompositeExtract 116 1
             147:    6(float) CompositeExtract 116 2
             148:    6(float) CompositeExtract 116 3
             149:    7(fvec4) CompositeConstruct 145 146 147 148
             150:    6(float) ImageSampleDrefImplicitLod 144 149 28
                              Store 137(r64) 150
             157:    156(ptr) AccessChain 152(psout) 153
                              Store 157 155
             159:     12(ptr) AccessChain 152(psout) 158
                              Store 159 154
             160:8(PS_OUTPUT) Load 152(psout)
                              ReturnValue 160
                              FunctionEnd
