hlsl.samplelevel.basic.dx10.vert
Shader version: 450
0:? Sequence
0:50  Function Definition: main( (global structure{temp 4-component vector of float FragCoord 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          textureLod (global 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              0.750000
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          textureLod (global 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              0.750000
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          textureLod (global 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              0.750000
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          textureLod (global 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:34            Constant:
0:34              0.750000
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          textureLod (global 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:35            Constant:
0:35              0.750000
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          textureLod (global 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:36            Constant:
0:36              0.750000
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          textureLod (global 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:38            Constant:
0:38              0.750000
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          textureLod (global 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:39            Constant:
0:39              0.750000
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          textureLod (global 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:40            Constant:
0:40              0.750000
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          textureLod (global 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:42            Constant:
0:42              0.750000
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          textureLod (global 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:43            Constant:
0:43              0.750000
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          textureLod (global 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:44            Constant:
0:44              0.750000
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 FragCoord)
0:46          'vsout' (temp structure{temp 4-component vector of float FragCoord 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      Branch: Return with expression
0:48        'vsout' (temp structure{temp 4-component vector of float FragCoord Pos})
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)


Linked vertex stage:


Shader version: 450
0:? Sequence
0:50  Function Definition: main( (global structure{temp 4-component vector of float FragCoord 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          textureLod (global 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              0.750000
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          textureLod (global 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              0.750000
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          textureLod (global 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              0.750000
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          textureLod (global 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:34            Constant:
0:34              0.750000
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          textureLod (global 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:35            Constant:
0:35              0.750000
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          textureLod (global 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:36            Constant:
0:36              0.750000
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          textureLod (global 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:38            Constant:
0:38              0.750000
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          textureLod (global 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:39            Constant:
0:39              0.750000
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          textureLod (global 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:40            Constant:
0:40              0.750000
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          textureLod (global 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:42            Constant:
0:42              0.750000
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          textureLod (global 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:43            Constant:
0:43              0.750000
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          textureLod (global 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:44            Constant:
0:44              0.750000
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 FragCoord)
0:46          'vsout' (temp structure{temp 4-component vector of float FragCoord 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      Branch: Return with expression
0:48        'vsout' (temp structure{temp 4-component vector of float FragCoord Pos})
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)

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

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main"
                              Source HLSL 450
                              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  "VS_OUTPUT"
                              MemberName 144(VS_OUTPUT) 0  "Pos"
                              Name 146  "vsout"
                              Name 153  "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
                              MemberDecorate 144(VS_OUTPUT) 0 BuiltIn FragCoord
                              Decorate 153(g_tTex1df4a) DescriptorSet 0
                              Decorate 153(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(VS_OUTPUT):             TypeStruct 7(fvec4)
             145:             TypePointer Function 144(VS_OUTPUT)
             147:     23(int) Constant 0
             148:    6(float) Constant 0
             149:    7(fvec4) ConstantComposite 148 148 148 148
153(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(vsout):    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(vsout) 147
                              Store 150 149
             151:144(VS_OUTPUT) Load 146(vsout)
                              ReturnValue 151
                              FunctionEnd
