hlsl.samplelevel.basic.dx10.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:29  Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:29    Function Parameters: 
0:?     Sequence
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of float)
0:32          'txval10' (temp 4-component vector of float)
0:32          textureLod (temp 4-component vector of float)
0:32            Construct combined texture-sampler (temp sampler1D)
0:32              'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:32              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:32            Constant:
0:32              0.100000
0:32            Constant:
0:32              0.750000
0:33      Sequence
0:33        move second child to first child (temp 4-component vector of int)
0:33          'txval11' (temp 4-component vector of int)
0:33          textureLod (temp 4-component vector of int)
0:33            Construct combined texture-sampler (temp isampler1D)
0:33              'g_tTex1di4' (uniform itexture1D)
0:33              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:33            Constant:
0:33              0.200000
0:33            Constant:
0:33              0.750000
0:34      Sequence
0:34        move second child to first child (temp 4-component vector of uint)
0:34          'txval12' (temp 4-component vector of uint)
0:34          textureLod (temp 4-component vector of uint)
0:34            Construct combined texture-sampler (temp usampler1D)
0:34              'g_tTex1du4' (uniform utexture1D)
0:34              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:34            Constant:
0:34              0.300000
0:34            Constant:
0:34              0.750000
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of float)
0:36          'txval20' (temp 4-component vector of float)
0:36          textureLod (temp 4-component vector of float)
0:36            Construct combined texture-sampler (temp sampler2D)
0:36              'g_tTex2df4' (uniform texture2D)
0:36              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:36            Constant:
0:36              0.750000
0:37      Sequence
0:37        move second child to first child (temp 4-component vector of int)
0:37          'txval21' (temp 4-component vector of int)
0:37          textureLod (temp 4-component vector of int)
0:37            Construct combined texture-sampler (temp isampler2D)
0:37              'g_tTex2di4' (uniform itexture2D)
0:37              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:37            Constant:
0:37              0.750000
0:38      Sequence
0:38        move second child to first child (temp 4-component vector of uint)
0:38          'txval22' (temp 4-component vector of uint)
0:38          textureLod (temp 4-component vector of uint)
0:38            Construct combined texture-sampler (temp usampler2D)
0:38              'g_tTex2du4' (uniform utexture2D)
0:38              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.500000
0:?               0.600000
0:38            Constant:
0:38              0.750000
0:40      Sequence
0:40        move second child to first child (temp 4-component vector of float)
0:40          'txval30' (temp 4-component vector of float)
0:40          textureLod (temp 4-component vector of float)
0:40            Construct combined texture-sampler (temp sampler3D)
0:40              'g_tTex3df4' (uniform texture3D)
0:40              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:40            Constant:
0:40              0.750000
0:41      Sequence
0:41        move second child to first child (temp 4-component vector of int)
0:41          'txval31' (temp 4-component vector of int)
0:41          textureLod (temp 4-component vector of int)
0:41            Construct combined texture-sampler (temp isampler3D)
0:41              'g_tTex3di4' (uniform itexture3D)
0:41              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:41            Constant:
0:41              0.750000
0:42      Sequence
0:42        move second child to first child (temp 4-component vector of uint)
0:42          'txval32' (temp 4-component vector of uint)
0:42          textureLod (temp 4-component vector of uint)
0:42            Construct combined texture-sampler (temp usampler3D)
0:42              'g_tTex3du4' (uniform utexture3D)
0:42              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:42            Constant:
0:42              0.750000
0:44      Sequence
0:44        move second child to first child (temp 4-component vector of float)
0:44          'txval40' (temp 4-component vector of float)
0:44          textureLod (temp 4-component vector of float)
0:44            Construct combined texture-sampler (temp samplerCube)
0:44              'g_tTexcdf4' (uniform textureCube)
0:44              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:44            Constant:
0:44              0.750000
0:45      Sequence
0:45        move second child to first child (temp 4-component vector of int)
0:45          'txval41' (temp 4-component vector of int)
0:45          textureLod (temp 4-component vector of int)
0:45            Construct combined texture-sampler (temp isamplerCube)
0:45              'g_tTexcdi4' (uniform itextureCube)
0:45              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:45            Constant:
0:45              0.750000
0:46      Sequence
0:46        move second child to first child (temp 4-component vector of uint)
0:46          'txval42' (temp 4-component vector of uint)
0:46          textureLod (temp 4-component vector of uint)
0:46            Construct combined texture-sampler (temp usamplerCube)
0:46              'g_tTexcdu4' (uniform utextureCube)
0:46              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:46            Constant:
0:46              0.750000
0:48      move second child to first child (temp 4-component vector of float)
0:48        Color: direct index for structure (temp 4-component vector of float)
0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48          Constant:
0:48            0 (const int)
0:48        Constant:
0:48          1.000000
0:48          1.000000
0:48          1.000000
0:48          1.000000
0:49      move second child to first child (temp float)
0:49        Depth: direct index for structure (temp float)
0:49          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:49          Constant:
0:49            1 (const int)
0:49        Constant:
0:49          1.000000
0:51      Sequence
0:51        Sequence
0:51          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:51            Color: direct index for structure (temp 4-component vector of float)
0:51              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:51              Constant:
0:51                0 (const int)
0:51          move second child to first child (temp float)
0:?             'Depth' (out float FragDepth)
0:51            Depth: direct index for structure (temp float)
0:51              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:51              Constant:
0:51                1 (const int)
0:51        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_sSamp2d' (uniform sampler)
0:?     'g_tTex1df4a' (layout(binding=1 ) uniform texture1D)
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)


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:29  Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:29    Function Parameters: 
0:?     Sequence
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of float)
0:32          'txval10' (temp 4-component vector of float)
0:32          textureLod (temp 4-component vector of float)
0:32            Construct combined texture-sampler (temp sampler1D)
0:32              'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:32              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:32            Constant:
0:32              0.100000
0:32            Constant:
0:32              0.750000
0:33      Sequence
0:33        move second child to first child (temp 4-component vector of int)
0:33          'txval11' (temp 4-component vector of int)
0:33          textureLod (temp 4-component vector of int)
0:33            Construct combined texture-sampler (temp isampler1D)
0:33              'g_tTex1di4' (uniform itexture1D)
0:33              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:33            Constant:
0:33              0.200000
0:33            Constant:
0:33              0.750000
0:34      Sequence
0:34        move second child to first child (temp 4-component vector of uint)
0:34          'txval12' (temp 4-component vector of uint)
0:34          textureLod (temp 4-component vector of uint)
0:34            Construct combined texture-sampler (temp usampler1D)
0:34              'g_tTex1du4' (uniform utexture1D)
0:34              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:34            Constant:
0:34              0.300000
0:34            Constant:
0:34              0.750000
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of float)
0:36          'txval20' (temp 4-component vector of float)
0:36          textureLod (temp 4-component vector of float)
0:36            Construct combined texture-sampler (temp sampler2D)
0:36              'g_tTex2df4' (uniform texture2D)
0:36              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:36            Constant:
0:36              0.750000
0:37      Sequence
0:37        move second child to first child (temp 4-component vector of int)
0:37          'txval21' (temp 4-component vector of int)
0:37          textureLod (temp 4-component vector of int)
0:37            Construct combined texture-sampler (temp isampler2D)
0:37              'g_tTex2di4' (uniform itexture2D)
0:37              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:37            Constant:
0:37              0.750000
0:38      Sequence
0:38        move second child to first child (temp 4-component vector of uint)
0:38          'txval22' (temp 4-component vector of uint)
0:38          textureLod (temp 4-component vector of uint)
0:38            Construct combined texture-sampler (temp usampler2D)
0:38              'g_tTex2du4' (uniform utexture2D)
0:38              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.500000
0:?               0.600000
0:38            Constant:
0:38              0.750000
0:40      Sequence
0:40        move second child to first child (temp 4-component vector of float)
0:40          'txval30' (temp 4-component vector of float)
0:40          textureLod (temp 4-component vector of float)
0:40            Construct combined texture-sampler (temp sampler3D)
0:40              'g_tTex3df4' (uniform texture3D)
0:40              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:40            Constant:
0:40              0.750000
0:41      Sequence
0:41        move second child to first child (temp 4-component vector of int)
0:41          'txval31' (temp 4-component vector of int)
0:41          textureLod (temp 4-component vector of int)
0:41            Construct combined texture-sampler (temp isampler3D)
0:41              'g_tTex3di4' (uniform itexture3D)
0:41              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:41            Constant:
0:41              0.750000
0:42      Sequence
0:42        move second child to first child (temp 4-component vector of uint)
0:42          'txval32' (temp 4-component vector of uint)
0:42          textureLod (temp 4-component vector of uint)
0:42            Construct combined texture-sampler (temp usampler3D)
0:42              'g_tTex3du4' (uniform utexture3D)
0:42              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:42            Constant:
0:42              0.750000
0:44      Sequence
0:44        move second child to first child (temp 4-component vector of float)
0:44          'txval40' (temp 4-component vector of float)
0:44          textureLod (temp 4-component vector of float)
0:44            Construct combined texture-sampler (temp samplerCube)
0:44              'g_tTexcdf4' (uniform textureCube)
0:44              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:44            Constant:
0:44              0.750000
0:45      Sequence
0:45        move second child to first child (temp 4-component vector of int)
0:45          'txval41' (temp 4-component vector of int)
0:45          textureLod (temp 4-component vector of int)
0:45            Construct combined texture-sampler (temp isamplerCube)
0:45              'g_tTexcdi4' (uniform itextureCube)
0:45              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:45            Constant:
0:45              0.750000
0:46      Sequence
0:46        move second child to first child (temp 4-component vector of uint)
0:46          'txval42' (temp 4-component vector of uint)
0:46          textureLod (temp 4-component vector of uint)
0:46            Construct combined texture-sampler (temp usamplerCube)
0:46              'g_tTexcdu4' (uniform utextureCube)
0:46              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:46            Constant:
0:46              0.750000
0:48      move second child to first child (temp 4-component vector of float)
0:48        Color: direct index for structure (temp 4-component vector of float)
0:48          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48          Constant:
0:48            0 (const int)
0:48        Constant:
0:48          1.000000
0:48          1.000000
0:48          1.000000
0:48          1.000000
0:49      move second child to first child (temp float)
0:49        Depth: direct index for structure (temp float)
0:49          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:49          Constant:
0:49            1 (const int)
0:49        Constant:
0:49          1.000000
0:51      Sequence
0:51        Sequence
0:51          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:51            Color: direct index for structure (temp 4-component vector of float)
0:51              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:51              Constant:
0:51                0 (const int)
0:51          move second child to first child (temp float)
0:?             'Depth' (out float FragDepth)
0:51            Depth: direct index for structure (temp float)
0:51              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:51              Constant:
0:51                1 (const int)
0:51        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_sSamp2d' (uniform sampler)
0:?     'g_tTex1df4a' (layout(binding=1 ) uniform texture1D)
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)

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

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 155 159
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "main"
                              Name 9  "txval10"
                              Name 12  "g_tTex1df4"
                              Name 16  "g_sSamp"
                              Name 26  "txval11"
                              Name 29  "g_tTex1di4"
                              Name 39  "txval12"
                              Name 42  "g_tTex1du4"
                              Name 49  "txval20"
                              Name 52  "g_tTex2df4"
                              Name 60  "txval21"
                              Name 63  "g_tTex2di4"
                              Name 71  "txval22"
                              Name 74  "g_tTex2du4"
                              Name 83  "txval30"
                              Name 86  "g_tTex3df4"
                              Name 94  "txval31"
                              Name 97  "g_tTex3di4"
                              Name 104  "txval32"
                              Name 107  "g_tTex3du4"
                              Name 117  "txval40"
                              Name 120  "g_tTexcdf4"
                              Name 126  "txval41"
                              Name 129  "g_tTexcdi4"
                              Name 135  "txval42"
                              Name 138  "g_tTexcdu4"
                              Name 144  "PS_OUTPUT"
                              MemberName 144(PS_OUTPUT) 0  "Color"
                              MemberName 144(PS_OUTPUT) 1  "Depth"
                              Name 146  "psout"
                              Name 155  "Color"
                              Name 159  "Depth"
                              Name 163  "g_sSamp2d"
                              Name 164  "g_tTex1df4a"
                              Decorate 12(g_tTex1df4) DescriptorSet 0
                              Decorate 12(g_tTex1df4) Binding 0
                              Decorate 16(g_sSamp) DescriptorSet 0
                              Decorate 16(g_sSamp) Binding 0
                              Decorate 29(g_tTex1di4) DescriptorSet 0
                              Decorate 42(g_tTex1du4) DescriptorSet 0
                              Decorate 52(g_tTex2df4) DescriptorSet 0
                              Decorate 63(g_tTex2di4) DescriptorSet 0
                              Decorate 74(g_tTex2du4) DescriptorSet 0
                              Decorate 86(g_tTex3df4) DescriptorSet 0
                              Decorate 97(g_tTex3di4) DescriptorSet 0
                              Decorate 107(g_tTex3du4) DescriptorSet 0
                              Decorate 120(g_tTexcdf4) DescriptorSet 0
                              Decorate 129(g_tTexcdi4) DescriptorSet 0
                              Decorate 138(g_tTexcdu4) DescriptorSet 0
                              Decorate 155(Color) Location 0
                              Decorate 159(Depth) BuiltIn FragDepth
                              Decorate 163(g_sSamp2d) DescriptorSet 0
                              Decorate 164(g_tTex1df4a) DescriptorSet 0
                              Decorate 164(g_tTex1df4a) Binding 1
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Function 7(fvec4)
              10:             TypeImage 6(float) 1D sampled format:Unknown
              11:             TypePointer UniformConstant 10
  12(g_tTex1df4):     11(ptr) Variable UniformConstant
              14:             TypeSampler
              15:             TypePointer UniformConstant 14
     16(g_sSamp):     15(ptr) Variable UniformConstant
              18:             TypeSampledImage 10
              20:    6(float) Constant 1036831949
              21:    6(float) Constant 1061158912
              23:             TypeInt 32 1
              24:             TypeVector 23(int) 4
              25:             TypePointer Function 24(ivec4)
              27:             TypeImage 23(int) 1D sampled format:Unknown
              28:             TypePointer UniformConstant 27
  29(g_tTex1di4):     28(ptr) Variable UniformConstant
              32:             TypeSampledImage 27
              34:    6(float) Constant 1045220557
              36:             TypeInt 32 0
              37:             TypeVector 36(int) 4
              38:             TypePointer Function 37(ivec4)
              40:             TypeImage 36(int) 1D sampled format:Unknown
              41:             TypePointer UniformConstant 40
  42(g_tTex1du4):     41(ptr) Variable UniformConstant
              45:             TypeSampledImage 40
              47:    6(float) Constant 1050253722
              50:             TypeImage 6(float) 2D sampled format:Unknown
              51:             TypePointer UniformConstant 50
  52(g_tTex2df4):     51(ptr) Variable UniformConstant
              55:             TypeSampledImage 50
              57:             TypeVector 6(float) 2
              58:   57(fvec2) ConstantComposite 20 34
              61:             TypeImage 23(int) 2D sampled format:Unknown
              62:             TypePointer UniformConstant 61
  63(g_tTex2di4):     62(ptr) Variable UniformConstant
              66:             TypeSampledImage 61
              68:    6(float) Constant 1053609165
              69:   57(fvec2) ConstantComposite 47 68
              72:             TypeImage 36(int) 2D sampled format:Unknown
              73:             TypePointer UniformConstant 72
  74(g_tTex2du4):     73(ptr) Variable UniformConstant
              77:             TypeSampledImage 72
              79:    6(float) Constant 1056964608
              80:    6(float) Constant 1058642330
              81:   57(fvec2) ConstantComposite 79 80
              84:             TypeImage 6(float) 3D sampled format:Unknown
              85:             TypePointer UniformConstant 84
  86(g_tTex3df4):     85(ptr) Variable UniformConstant
              89:             TypeSampledImage 84
              91:             TypeVector 6(float) 3
              92:   91(fvec3) ConstantComposite 20 34 47
              95:             TypeImage 23(int) 3D sampled format:Unknown
              96:             TypePointer UniformConstant 95
  97(g_tTex3di4):     96(ptr) Variable UniformConstant
             100:             TypeSampledImage 95
             102:   91(fvec3) ConstantComposite 68 79 80
             105:             TypeImage 36(int) 3D sampled format:Unknown
             106:             TypePointer UniformConstant 105
 107(g_tTex3du4):    106(ptr) Variable UniformConstant
             110:             TypeSampledImage 105
             112:    6(float) Constant 1060320051
             113:    6(float) Constant 1061997773
             114:    6(float) Constant 1063675494
             115:   91(fvec3) ConstantComposite 112 113 114
             118:             TypeImage 6(float) Cube sampled format:Unknown
             119:             TypePointer UniformConstant 118
 120(g_tTexcdf4):    119(ptr) Variable UniformConstant
             123:             TypeSampledImage 118
             127:             TypeImage 23(int) Cube sampled format:Unknown
             128:             TypePointer UniformConstant 127
 129(g_tTexcdi4):    128(ptr) Variable UniformConstant
             132:             TypeSampledImage 127
             136:             TypeImage 36(int) Cube sampled format:Unknown
             137:             TypePointer UniformConstant 136
 138(g_tTexcdu4):    137(ptr) Variable UniformConstant
             141:             TypeSampledImage 136
  144(PS_OUTPUT):             TypeStruct 7(fvec4) 6(float)
             145:             TypePointer Function 144(PS_OUTPUT)
             147:     23(int) Constant 0
             148:    6(float) Constant 1065353216
             149:    7(fvec4) ConstantComposite 148 148 148 148
             151:     23(int) Constant 1
             152:             TypePointer Function 6(float)
             154:             TypePointer Output 7(fvec4)
      155(Color):    154(ptr) Variable Output
             158:             TypePointer Output 6(float)
      159(Depth):    158(ptr) Variable Output
  163(g_sSamp2d):     15(ptr) Variable UniformConstant
164(g_tTex1df4a):     11(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
      9(txval10):      8(ptr) Variable Function
     26(txval11):     25(ptr) Variable Function
     39(txval12):     38(ptr) Variable Function
     49(txval20):      8(ptr) Variable Function
     60(txval21):     25(ptr) Variable Function
     71(txval22):     38(ptr) Variable Function
     83(txval30):      8(ptr) Variable Function
     94(txval31):     25(ptr) Variable Function
    104(txval32):     38(ptr) Variable Function
    117(txval40):      8(ptr) Variable Function
    126(txval41):     25(ptr) Variable Function
    135(txval42):     38(ptr) Variable Function
      146(psout):    145(ptr) Variable Function
              13:          10 Load 12(g_tTex1df4)
              17:          14 Load 16(g_sSamp)
              19:          18 SampledImage 13 17
              22:    7(fvec4) ImageSampleExplicitLod 19 20 Lod 21
                              Store 9(txval10) 22
              30:          27 Load 29(g_tTex1di4)
              31:          14 Load 16(g_sSamp)
              33:          32 SampledImage 30 31
              35:   24(ivec4) ImageSampleExplicitLod 33 34 Lod 21
                              Store 26(txval11) 35
              43:          40 Load 42(g_tTex1du4)
              44:          14 Load 16(g_sSamp)
              46:          45 SampledImage 43 44
              48:   37(ivec4) ImageSampleExplicitLod 46 47 Lod 21
                              Store 39(txval12) 48
              53:          50 Load 52(g_tTex2df4)
              54:          14 Load 16(g_sSamp)
              56:          55 SampledImage 53 54
              59:    7(fvec4) ImageSampleExplicitLod 56 58 Lod 21
                              Store 49(txval20) 59
              64:          61 Load 63(g_tTex2di4)
              65:          14 Load 16(g_sSamp)
              67:          66 SampledImage 64 65
              70:   24(ivec4) ImageSampleExplicitLod 67 69 Lod 21
                              Store 60(txval21) 70
              75:          72 Load 74(g_tTex2du4)
              76:          14 Load 16(g_sSamp)
              78:          77 SampledImage 75 76
              82:   37(ivec4) ImageSampleExplicitLod 78 81 Lod 21
                              Store 71(txval22) 82
              87:          84 Load 86(g_tTex3df4)
              88:          14 Load 16(g_sSamp)
              90:          89 SampledImage 87 88
              93:    7(fvec4) ImageSampleExplicitLod 90 92 Lod 21
                              Store 83(txval30) 93
              98:          95 Load 97(g_tTex3di4)
              99:          14 Load 16(g_sSamp)
             101:         100 SampledImage 98 99
             103:   24(ivec4) ImageSampleExplicitLod 101 102 Lod 21
                              Store 94(txval31) 103
             108:         105 Load 107(g_tTex3du4)
             109:          14 Load 16(g_sSamp)
             111:         110 SampledImage 108 109
             116:   37(ivec4) ImageSampleExplicitLod 111 115 Lod 21
                              Store 104(txval32) 116
             121:         118 Load 120(g_tTexcdf4)
             122:          14 Load 16(g_sSamp)
             124:         123 SampledImage 121 122
             125:    7(fvec4) ImageSampleExplicitLod 124 92 Lod 21
                              Store 117(txval40) 125
             130:         127 Load 129(g_tTexcdi4)
             131:          14 Load 16(g_sSamp)
             133:         132 SampledImage 130 131
             134:   24(ivec4) ImageSampleExplicitLod 133 102 Lod 21
                              Store 126(txval41) 134
             139:         136 Load 138(g_tTexcdu4)
             140:          14 Load 16(g_sSamp)
             142:         141 SampledImage 139 140
             143:   37(ivec4) ImageSampleExplicitLod 142 115 Lod 21
                              Store 135(txval42) 143
             150:      8(ptr) AccessChain 146(psout) 147
                              Store 150 149
             153:    152(ptr) AccessChain 146(psout) 151
                              Store 153 148
             156:      8(ptr) AccessChain 146(psout) 147
             157:    7(fvec4) Load 156
                              Store 155(Color) 157
             160:    152(ptr) AccessChain 146(psout) 151
             161:    6(float) Load 160
                              Store 159(Depth) 161
                              Return
                              FunctionEnd
