hlsl.samplecmplevelzero.offset.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 Parameters: 
0:?     Sequence
0:42      Sequence
0:42        move second child to first child (temp float)
0:42          'r01' (temp float)
0:42          textureLodOffset (global float)
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 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 (global float)
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 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 (global float)
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 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 (global float)
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 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 (global float)
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 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 (global float)
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 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      Sequence
0:65        Sequence
0:65          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:65            Color: direct index for structure (temp 4-component vector of float)
0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:65              Constant:
0:65                0 (const int)
0:65          move second child to first child (temp float)
0:?             'Depth' (out float FragDepth)
0:65            Depth: direct index for structure (temp float)
0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:65              Constant:
0:65                1 (const int)
0:65        Branch: Return
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)
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 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)


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 Parameters: 
0:?     Sequence
0:42      Sequence
0:42        move second child to first child (temp float)
0:42          'r01' (temp float)
0:42          textureLodOffset (global float)
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 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 (global float)
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 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 (global float)
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 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 (global float)
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 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 (global float)
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 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 (global float)
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 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      Sequence
0:65        Sequence
0:65          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:65            Color: direct index for structure (temp 4-component vector of float)
0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:65              Constant:
0:65                0 (const int)
0:65          move second child to first child (temp float)
0:?             'Depth' (out float FragDepth)
0:65            Depth: direct index for structure (temp float)
0:65              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:65              Constant:
0:65                1 (const int)
0:65        Branch: Return
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)
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 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)

// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 167

                              Capability Shader
                              Capability Sampled1D
                              Capability SampledCubeArray
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 114 118
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "main"
                              Name 8  "r01"
                              Name 11  "g_tTex1df4"
                              Name 15  "g_sSamp"
                              Name 29  "r03"
                              Name 32  "g_tTex1di4"
                              Name 41  "r05"
                              Name 45  "g_tTex1du4"
                              Name 54  "r21"
                              Name 57  "g_tTex2df4"
                              Name 74  "r23"
                              Name 77  "g_tTex2di4"
                              Name 88  "r25"
                              Name 91  "g_tTex2du4"
                              Name 103  "PS_OUTPUT"
                              MemberName 103(PS_OUTPUT) 0  "Color"
                              MemberName 103(PS_OUTPUT) 1  "Depth"
                              Name 105  "psout"
                              Name 114  "Color"
                              Name 118  "Depth"
                              Name 124  "g_tTex3df4"
                              Name 127  "g_tTex3di4"
                              Name 130  "g_tTex3du4"
                              Name 133  "g_tTexcdf4"
                              Name 136  "g_tTexcdi4"
                              Name 139  "g_tTexcdu4"
                              Name 142  "g_tTex1df4a"
                              Name 145  "g_tTex1di4a"
                              Name 148  "g_tTex1du4a"
                              Name 151  "g_tTex2df4a"
                              Name 154  "g_tTex2di4a"
                              Name 157  "g_tTex2du4a"
                              Name 160  "g_tTexcdf4a"
                              Name 163  "g_tTexcdi4a"
                              Name 166  "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 32(g_tTex1di4) DescriptorSet 0
                              Decorate 45(g_tTex1du4) DescriptorSet 0
                              Decorate 57(g_tTex2df4) DescriptorSet 0
                              Decorate 77(g_tTex2di4) DescriptorSet 0
                              Decorate 91(g_tTex2du4) DescriptorSet 0
                              Decorate 114(Color) Location 0
                              Decorate 118(Depth) BuiltIn FragDepth
                              Decorate 124(g_tTex3df4) DescriptorSet 0
                              Decorate 127(g_tTex3di4) DescriptorSet 0
                              Decorate 130(g_tTex3du4) DescriptorSet 0
                              Decorate 133(g_tTexcdf4) DescriptorSet 0
                              Decorate 136(g_tTexcdi4) DescriptorSet 0
                              Decorate 139(g_tTexcdu4) DescriptorSet 0
                              Decorate 142(g_tTex1df4a) DescriptorSet 0
                              Decorate 145(g_tTex1di4a) DescriptorSet 0
                              Decorate 148(g_tTex1du4a) DescriptorSet 0
                              Decorate 151(g_tTex2df4a) DescriptorSet 0
                              Decorate 154(g_tTex2di4a) DescriptorSet 0
                              Decorate 157(g_tTex2du4a) DescriptorSet 0
                              Decorate 160(g_tTexcdf4a) DescriptorSet 0
                              Decorate 163(g_tTexcdi4a) DescriptorSet 0
                              Decorate 166(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
              24:    6(float) Constant 0
              25:             TypeInt 32 1
              26:     25(int) Constant 2
              30:             TypeImage 25(int) 1D sampled format:Unknown
              31:             TypePointer UniformConstant 30
  32(g_tTex1di4):     31(ptr) Variable UniformConstant
              35:             TypeImage 25(int) 1D depth sampled format:Unknown
              36:             TypeSampledImage 35
              42:             TypeInt 32 0
              43:             TypeImage 42(int) 1D sampled format:Unknown
              44:             TypePointer UniformConstant 43
  45(g_tTex1du4):     44(ptr) Variable UniformConstant
              48:             TypeImage 42(int) 1D depth sampled format:Unknown
              49:             TypeSampledImage 48
              55:             TypeImage 6(float) 2D sampled format:Unknown
              56:             TypePointer UniformConstant 55
  57(g_tTex2df4):     56(ptr) Variable UniformConstant
              60:             TypeImage 6(float) 2D depth sampled format:Unknown
              61:             TypeSampledImage 60
              63:    6(float) Constant 1045220557
              64:   22(fvec2) ConstantComposite 20 63
              65:             TypeVector 6(float) 3
              69:             TypeVector 25(int) 2
              70:     25(int) Constant 3
              71:   69(ivec2) ConstantComposite 26 70
              75:             TypeImage 25(int) 2D sampled format:Unknown
              76:             TypePointer UniformConstant 75
  77(g_tTex2di4):     76(ptr) Variable UniformConstant
              80:             TypeImage 25(int) 2D depth sampled format:Unknown
              81:             TypeSampledImage 80
              89:             TypeImage 42(int) 2D sampled format:Unknown
              90:             TypePointer UniformConstant 89
  91(g_tTex2du4):     90(ptr) Variable UniformConstant
              94:             TypeImage 42(int) 2D depth sampled format:Unknown
              95:             TypeSampledImage 94
             102:             TypeVector 6(float) 4
  103(PS_OUTPUT):             TypeStruct 102(fvec4) 6(float)
             104:             TypePointer Function 103(PS_OUTPUT)
             106:     25(int) Constant 0
             107:    6(float) Constant 1065353216
             108:  102(fvec4) ConstantComposite 107 107 107 107
             109:             TypePointer Function 102(fvec4)
             111:     25(int) Constant 1
             113:             TypePointer Output 102(fvec4)
      114(Color):    113(ptr) Variable Output
             117:             TypePointer Output 6(float)
      118(Depth):    117(ptr) Variable Output
             122:             TypeImage 6(float) 3D sampled format:Unknown
             123:             TypePointer UniformConstant 122
 124(g_tTex3df4):    123(ptr) Variable UniformConstant
             125:             TypeImage 25(int) 3D sampled format:Unknown
             126:             TypePointer UniformConstant 125
 127(g_tTex3di4):    126(ptr) Variable UniformConstant
             128:             TypeImage 42(int) 3D sampled format:Unknown
             129:             TypePointer UniformConstant 128
 130(g_tTex3du4):    129(ptr) Variable UniformConstant
             131:             TypeImage 6(float) Cube sampled format:Unknown
             132:             TypePointer UniformConstant 131
 133(g_tTexcdf4):    132(ptr) Variable UniformConstant
             134:             TypeImage 25(int) Cube sampled format:Unknown
             135:             TypePointer UniformConstant 134
 136(g_tTexcdi4):    135(ptr) Variable UniformConstant
             137:             TypeImage 42(int) Cube sampled format:Unknown
             138:             TypePointer UniformConstant 137
 139(g_tTexcdu4):    138(ptr) Variable UniformConstant
             140:             TypeImage 6(float) 1D array sampled format:Unknown
             141:             TypePointer UniformConstant 140
142(g_tTex1df4a):    141(ptr) Variable UniformConstant
             143:             TypeImage 25(int) 1D array sampled format:Unknown
             144:             TypePointer UniformConstant 143
145(g_tTex1di4a):    144(ptr) Variable UniformConstant
             146:             TypeImage 42(int) 1D array sampled format:Unknown
             147:             TypePointer UniformConstant 146
148(g_tTex1du4a):    147(ptr) Variable UniformConstant
             149:             TypeImage 6(float) 2D array sampled format:Unknown
             150:             TypePointer UniformConstant 149
151(g_tTex2df4a):    150(ptr) Variable UniformConstant
             152:             TypeImage 25(int) 2D array sampled format:Unknown
             153:             TypePointer UniformConstant 152
154(g_tTex2di4a):    153(ptr) Variable UniformConstant
             155:             TypeImage 42(int) 2D array sampled format:Unknown
             156:             TypePointer UniformConstant 155
157(g_tTex2du4a):    156(ptr) Variable UniformConstant
             158:             TypeImage 6(float) Cube array sampled format:Unknown
             159:             TypePointer UniformConstant 158
160(g_tTexcdf4a):    159(ptr) Variable UniformConstant
             161:             TypeImage 25(int) Cube array sampled format:Unknown
             162:             TypePointer UniformConstant 161
163(g_tTexcdi4a):    162(ptr) Variable UniformConstant
             164:             TypeImage 42(int) Cube array sampled format:Unknown
             165:             TypePointer UniformConstant 164
166(g_tTexcdu4a):    165(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
          8(r01):      7(ptr) Variable Function
         29(r03):      7(ptr) Variable Function
         41(r05):      7(ptr) Variable Function
         54(r21):      7(ptr) Variable Function
         74(r23):      7(ptr) Variable Function
         88(r25):      7(ptr) Variable Function
      105(psout):    104(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
              27:    6(float) CompositeExtract 23 1
              28:    6(float) ImageSampleDrefExplicitLod 19 23 27 Lod ConstOffset 24 26
                              Store 8(r01) 28
              33:          30 Load 32(g_tTex1di4)
              34:          13 Load 15(g_sSamp)
              37:          36 SampledImage 33 34
              38:   22(fvec2) CompositeConstruct 20 21
              39:    6(float) CompositeExtract 38 1
              40:    6(float) ImageSampleDrefExplicitLod 37 38 39 Lod ConstOffset 24 26
                              Store 29(r03) 40
              46:          43 Load 45(g_tTex1du4)
              47:          13 Load 15(g_sSamp)
              50:          49 SampledImage 46 47
              51:   22(fvec2) CompositeConstruct 20 21
              52:    6(float) CompositeExtract 51 1
              53:    6(float) ImageSampleDrefExplicitLod 50 51 52 Lod ConstOffset 24 26
                              Store 41(r05) 53
              58:          55 Load 57(g_tTex2df4)
              59:          13 Load 15(g_sSamp)
              62:          61 SampledImage 58 59
              66:    6(float) CompositeExtract 64 0
              67:    6(float) CompositeExtract 64 1
              68:   65(fvec3) CompositeConstruct 66 67 21
              72:    6(float) CompositeExtract 68 2
              73:    6(float) ImageSampleDrefExplicitLod 62 68 72 Lod ConstOffset 24 71
                              Store 54(r21) 73
              78:          75 Load 77(g_tTex2di4)
              79:          13 Load 15(g_sSamp)
              82:          81 SampledImage 78 79
              83:    6(float) CompositeExtract 64 0
              84:    6(float) CompositeExtract 64 1
              85:   65(fvec3) CompositeConstruct 83 84 21
              86:    6(float) CompositeExtract 85 2
              87:    6(float) ImageSampleDrefExplicitLod 82 85 86 Lod ConstOffset 24 71
                              Store 74(r23) 87
              92:          89 Load 91(g_tTex2du4)
              93:          13 Load 15(g_sSamp)
              96:          95 SampledImage 92 93
              97:    6(float) CompositeExtract 64 0
              98:    6(float) CompositeExtract 64 1
              99:   65(fvec3) CompositeConstruct 97 98 21
             100:    6(float) CompositeExtract 99 2
             101:    6(float) ImageSampleDrefExplicitLod 96 99 100 Lod ConstOffset 24 71
                              Store 88(r25) 101
             110:    109(ptr) AccessChain 105(psout) 106
                              Store 110 108
             112:      7(ptr) AccessChain 105(psout) 111
                              Store 112 107
             115:    109(ptr) AccessChain 105(psout) 106
             116:  102(fvec4) Load 115
                              Store 114(Color) 116
             119:      7(ptr) AccessChain 105(psout) 111
             120:    6(float) Load 119
                              Store 118(Depth) 120
                              Return
                              FunctionEnd
