hlsl.samplegrad.basic.dx10.vert
Shader version: 450
0:? Sequence
0:27  Function Definition: main( (temp structure{temp 4-component vector of float Pos})
0:27    Function Parameters: 
0:?     Sequence
0:30      Sequence
0:30        move second child to first child (temp 4-component vector of float)
0:30          'txval10' (temp 4-component vector of float)
0:30          textureGrad (temp 4-component vector of float)
0:30            Construct combined texture-sampler (temp sampler1D)
0:30              'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:30              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:30            Constant:
0:30              0.100000
0:30            Constant:
0:30              1.100000
0:30            Constant:
0:30              1.200000
0:31      Sequence
0:31        move second child to first child (temp 4-component vector of int)
0:31          'txval11' (temp 4-component vector of int)
0:31          textureGrad (temp 4-component vector of int)
0:31            Construct combined texture-sampler (temp isampler1D)
0:31              'g_tTex1di4' (uniform itexture1D)
0:31              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:31            Constant:
0:31              0.200000
0:31            Constant:
0:31              1.100000
0:31            Constant:
0:31              1.200000
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of uint)
0:32          'txval12' (temp 4-component vector of uint)
0:32          textureGrad (temp 4-component vector of uint)
0:32            Construct combined texture-sampler (temp usampler1D)
0:32              'g_tTex1du4' (uniform utexture1D)
0:32              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:32            Constant:
0:32              0.300000
0:32            Constant:
0:32              1.100000
0:32            Constant:
0:32              1.200000
0:34      Sequence
0:34        move second child to first child (temp 4-component vector of float)
0:34          'txval20' (temp 4-component vector of float)
0:34          textureGrad (temp 4-component vector of float)
0:34            Construct combined texture-sampler (temp sampler2D)
0:34              'g_tTex2df4' (uniform texture2D)
0:34              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:35      Sequence
0:35        move second child to first child (temp 4-component vector of int)
0:35          'txval21' (temp 4-component vector of int)
0:35          textureGrad (temp 4-component vector of int)
0:35            Construct combined texture-sampler (temp isampler2D)
0:35              'g_tTex2di4' (uniform itexture2D)
0:35              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of uint)
0:36          'txval22' (temp 4-component vector of uint)
0:36          textureGrad (temp 4-component vector of uint)
0:36            Construct combined texture-sampler (temp usampler2D)
0:36              'g_tTex2du4' (uniform utexture2D)
0:36              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.500000
0:?               0.600000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:38      Sequence
0:38        move second child to first child (temp 4-component vector of float)
0:38          'txval30' (temp 4-component vector of float)
0:38          textureGrad (temp 4-component vector of float)
0:38            Construct combined texture-sampler (temp sampler3D)
0:38              'g_tTex3df4' (uniform texture3D)
0:38              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:39      Sequence
0:39        move second child to first child (temp 4-component vector of int)
0:39          'txval31' (temp 4-component vector of int)
0:39          textureGrad (temp 4-component vector of int)
0:39            Construct combined texture-sampler (temp isampler3D)
0:39              'g_tTex3di4' (uniform itexture3D)
0:39              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:40      Sequence
0:40        move second child to first child (temp 4-component vector of uint)
0:40          'txval32' (temp 4-component vector of uint)
0:40          textureGrad (temp 4-component vector of uint)
0:40            Construct combined texture-sampler (temp usampler3D)
0:40              'g_tTex3du4' (uniform utexture3D)
0:40              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:42      Sequence
0:42        move second child to first child (temp 4-component vector of float)
0:42          'txval40' (temp 4-component vector of float)
0:42          textureGrad (temp 4-component vector of float)
0:42            Construct combined texture-sampler (temp samplerCube)
0:42              'g_tTexcdf4' (uniform textureCube)
0:42              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:43      Sequence
0:43        move second child to first child (temp 4-component vector of int)
0:43          'txval41' (temp 4-component vector of int)
0:43          textureGrad (temp 4-component vector of int)
0:43            Construct combined texture-sampler (temp isamplerCube)
0:43              'g_tTexcdi4' (uniform itextureCube)
0:43              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:44      Sequence
0:44        move second child to first child (temp 4-component vector of uint)
0:44          'txval42' (temp 4-component vector of uint)
0:44          textureGrad (temp 4-component vector of uint)
0:44            Construct combined texture-sampler (temp usamplerCube)
0:44              'g_tTexcdu4' (uniform utextureCube)
0:44              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:46      move second child to first child (temp 4-component vector of float)
0:46        Pos: direct index for structure (temp 4-component vector of float)
0:46          'vsout' (temp structure{temp 4-component vector of float Pos})
0:46          Constant:
0:46            0 (const int)
0:?         Constant:
0:?           0.000000
0:?           0.000000
0:?           0.000000
0:?           0.000000
0:48      Sequence
0:48        Sequence
0:48          move second child to first child (temp 4-component vector of float)
0:?             'Pos' (out 4-component vector of float Position)
0:48            Pos: direct index for structure (temp 4-component vector of float)
0:48              'vsout' (temp structure{temp 4-component vector of float Pos})
0:48              Constant:
0:48                0 (const int)
0:48        Branch: Return
0:?   Linker Objects
0:?     'g_sSamp' (layout(binding=0 ) 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)
0:?     'Pos' (out 4-component vector of float Position)


Linked vertex stage:


Shader version: 450
0:? Sequence
0:27  Function Definition: main( (temp structure{temp 4-component vector of float Pos})
0:27    Function Parameters: 
0:?     Sequence
0:30      Sequence
0:30        move second child to first child (temp 4-component vector of float)
0:30          'txval10' (temp 4-component vector of float)
0:30          textureGrad (temp 4-component vector of float)
0:30            Construct combined texture-sampler (temp sampler1D)
0:30              'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:30              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:30            Constant:
0:30              0.100000
0:30            Constant:
0:30              1.100000
0:30            Constant:
0:30              1.200000
0:31      Sequence
0:31        move second child to first child (temp 4-component vector of int)
0:31          'txval11' (temp 4-component vector of int)
0:31          textureGrad (temp 4-component vector of int)
0:31            Construct combined texture-sampler (temp isampler1D)
0:31              'g_tTex1di4' (uniform itexture1D)
0:31              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:31            Constant:
0:31              0.200000
0:31            Constant:
0:31              1.100000
0:31            Constant:
0:31              1.200000
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of uint)
0:32          'txval12' (temp 4-component vector of uint)
0:32          textureGrad (temp 4-component vector of uint)
0:32            Construct combined texture-sampler (temp usampler1D)
0:32              'g_tTex1du4' (uniform utexture1D)
0:32              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:32            Constant:
0:32              0.300000
0:32            Constant:
0:32              1.100000
0:32            Constant:
0:32              1.200000
0:34      Sequence
0:34        move second child to first child (temp 4-component vector of float)
0:34          'txval20' (temp 4-component vector of float)
0:34          textureGrad (temp 4-component vector of float)
0:34            Construct combined texture-sampler (temp sampler2D)
0:34              'g_tTex2df4' (uniform texture2D)
0:34              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:35      Sequence
0:35        move second child to first child (temp 4-component vector of int)
0:35          'txval21' (temp 4-component vector of int)
0:35          textureGrad (temp 4-component vector of int)
0:35            Construct combined texture-sampler (temp isampler2D)
0:35              'g_tTex2di4' (uniform itexture2D)
0:35              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of uint)
0:36          'txval22' (temp 4-component vector of uint)
0:36          textureGrad (temp 4-component vector of uint)
0:36            Construct combined texture-sampler (temp usampler2D)
0:36              'g_tTex2du4' (uniform utexture2D)
0:36              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.500000
0:?               0.600000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:38      Sequence
0:38        move second child to first child (temp 4-component vector of float)
0:38          'txval30' (temp 4-component vector of float)
0:38          textureGrad (temp 4-component vector of float)
0:38            Construct combined texture-sampler (temp sampler3D)
0:38              'g_tTex3df4' (uniform texture3D)
0:38              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:39      Sequence
0:39        move second child to first child (temp 4-component vector of int)
0:39          'txval31' (temp 4-component vector of int)
0:39          textureGrad (temp 4-component vector of int)
0:39            Construct combined texture-sampler (temp isampler3D)
0:39              'g_tTex3di4' (uniform itexture3D)
0:39              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:40      Sequence
0:40        move second child to first child (temp 4-component vector of uint)
0:40          'txval32' (temp 4-component vector of uint)
0:40          textureGrad (temp 4-component vector of uint)
0:40            Construct combined texture-sampler (temp usampler3D)
0:40              'g_tTex3du4' (uniform utexture3D)
0:40              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:42      Sequence
0:42        move second child to first child (temp 4-component vector of float)
0:42          'txval40' (temp 4-component vector of float)
0:42          textureGrad (temp 4-component vector of float)
0:42            Construct combined texture-sampler (temp samplerCube)
0:42              'g_tTexcdf4' (uniform textureCube)
0:42              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:43      Sequence
0:43        move second child to first child (temp 4-component vector of int)
0:43          'txval41' (temp 4-component vector of int)
0:43          textureGrad (temp 4-component vector of int)
0:43            Construct combined texture-sampler (temp isamplerCube)
0:43              'g_tTexcdi4' (uniform itextureCube)
0:43              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:44      Sequence
0:44        move second child to first child (temp 4-component vector of uint)
0:44          'txval42' (temp 4-component vector of uint)
0:44          textureGrad (temp 4-component vector of uint)
0:44            Construct combined texture-sampler (temp usamplerCube)
0:44              'g_tTexcdu4' (uniform utextureCube)
0:44              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:46      move second child to first child (temp 4-component vector of float)
0:46        Pos: direct index for structure (temp 4-component vector of float)
0:46          'vsout' (temp structure{temp 4-component vector of float Pos})
0:46          Constant:
0:46            0 (const int)
0:?         Constant:
0:?           0.000000
0:?           0.000000
0:?           0.000000
0:?           0.000000
0:48      Sequence
0:48        Sequence
0:48          move second child to first child (temp 4-component vector of float)
0:?             'Pos' (out 4-component vector of float Position)
0:48            Pos: direct index for structure (temp 4-component vector of float)
0:48              'vsout' (temp structure{temp 4-component vector of float Pos})
0:48              Constant:
0:48                0 (const int)
0:48        Branch: Return
0:?   Linker Objects
0:?     'g_sSamp' (layout(binding=0 ) 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)
0:?     'Pos' (out 4-component vector of float Position)

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

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