hlsl.samplebias.offset.dx10.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:28  Function Definition: main( (temp structure{temp 4-component vector of float Color, temp float Depth})
0:28    Function Parameters: 
0:?     Sequence
0:31      Sequence
0:31        move second child to first child (temp 4-component vector of float)
0:31          'txval10' (temp 4-component vector of float)
0:31          textureOffset (temp 4-component vector of float)
0:31            Construct combined texture-sampler (temp sampler1D)
0:31              'g_tTex1df4' (layout(binding=0 ) uniform texture1D)
0:31              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:31            Constant:
0:31              0.100000
0:31            Constant:
0:31              0.500000
0:31            Constant:
0:31              1 (const int)
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of int)
0:32          'txval11' (temp 4-component vector of int)
0:32          textureOffset (temp 4-component vector of int)
0:32            Construct combined texture-sampler (temp isampler1D)
0:32              'g_tTex1di4' (uniform itexture1D)
0:32              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:32            Constant:
0:32              0.200000
0:32            Constant:
0:32              0.500000
0:32            Constant:
0:32              1 (const int)
0:33      Sequence
0:33        move second child to first child (temp 4-component vector of uint)
0:33          'txval12' (temp 4-component vector of uint)
0:33          textureOffset (temp 4-component vector of uint)
0:33            Construct combined texture-sampler (temp usampler1D)
0:33              'g_tTex1du4' (uniform utexture1D)
0:33              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:33            Constant:
0:33              0.300000
0:33            Constant:
0:33              0.500000
0:33            Constant:
0:33              1 (const int)
0:35      Sequence
0:35        move second child to first child (temp 4-component vector of float)
0:35          'txval20' (temp 4-component vector of float)
0:35          textureOffset (temp 4-component vector of float)
0:35            Construct combined texture-sampler (temp sampler2D)
0:35              'g_tTex2df4' (uniform texture2D)
0:35              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:35            Constant:
0:35              0.500000
0:?             Constant:
0:?               1 (const int)
0:?               0 (const int)
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of int)
0:36          'txval21' (temp 4-component vector of int)
0:36          textureOffset (temp 4-component vector of int)
0:36            Construct combined texture-sampler (temp isampler2D)
0:36              'g_tTex2di4' (uniform itexture2D)
0:36              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:36            Constant:
0:36              0.500000
0:?             Constant:
0:?               1 (const int)
0:?               1 (const int)
0:37      Sequence
0:37        move second child to first child (temp 4-component vector of uint)
0:37          'txval22' (temp 4-component vector of uint)
0:37          textureOffset (temp 4-component vector of uint)
0:37            Construct combined texture-sampler (temp usampler2D)
0:37              'g_tTex2du4' (uniform utexture2D)
0:37              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.500000
0:?               0.600000
0:37            Constant:
0:37              0.500000
0:?             Constant:
0:?               1 (const int)
0:?               -1 (const int)
0:39      Sequence
0:39        move second child to first child (temp 4-component vector of float)
0:39          'txval30' (temp 4-component vector of float)
0:39          textureOffset (temp 4-component vector of float)
0:39            Construct combined texture-sampler (temp sampler3D)
0:39              'g_tTex3df4' (uniform texture3D)
0:39              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:39            Constant:
0:39              0.500000
0:?             Constant:
0:?               1 (const int)
0:?               0 (const int)
0:?               1 (const int)
0:40      Sequence
0:40        move second child to first child (temp 4-component vector of int)
0:40          'txval31' (temp 4-component vector of int)
0:40          textureOffset (temp 4-component vector of int)
0:40            Construct combined texture-sampler (temp isampler3D)
0:40              'g_tTex3di4' (uniform itexture3D)
0:40              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.400000
0:?               0.500000
0:?               0.600000
0:40            Constant:
0:40              0.500000
0:?             Constant:
0:?               1 (const int)
0:?               1 (const int)
0:?               1 (const int)
0:41      Sequence
0:41        move second child to first child (temp 4-component vector of uint)
0:41          'txval32' (temp 4-component vector of uint)
0:41          textureOffset (temp 4-component vector of uint)
0:41            Construct combined texture-sampler (temp usampler3D)
0:41              'g_tTex3du4' (uniform utexture3D)
0:41              'g_sSamp' (layout(binding=0 ) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:41            Constant:
0:41              0.500000
0:?             Constant:
0:?               1 (const int)
0:?               0 (const int)
0:?               -1 (const int)
0:45      move second child to first child (temp 4-component vector of float)
0:45        Color: direct index for structure (temp 4-component vector of float)
0:45          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:45          Constant:
0:45            0 (const int)
0:45        Constant:
0:45          1.000000
0:45          1.000000
0:45          1.000000
0:45          1.000000
0:46      move second child to first child (temp float)
0:46        Depth: direct index for structure (temp float)
0:46          'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:46          Constant:
0:46            1 (const int)
0:46        Constant:
0:46          1.000000
0:48      Sequence
0:48        Sequence
0:48          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 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          move second child to first child (temp float)
0:?             'Depth' (out float FragDepth)
0:48            Depth: direct index for structure (temp float)
0:48              'psout' (temp structure{temp 4-component vector of float Color, temp float Depth})
0:48              Constant:
0:48                1 (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:?     'Color' (layout(location=0 ) out 4-component vector of float)
0:?     'Depth' (out float FragDepth)


Linked fragment stage:


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

// 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 Fragment 4  "main" 136 140
                              ExecutionMode 4 OriginUpperLeft
                              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 64  "txval21"
                              Name 67  "g_tTex2di4"
                              Name 76  "txval22"
                              Name 79  "g_tTex2du4"
                              Name 89  "txval30"
                              Name 92  "g_tTex3df4"
                              Name 102  "txval31"
                              Name 105  "g_tTex3di4"
                              Name 113  "txval32"
                              Name 116  "g_tTex3du4"
                              Name 127  "PS_OUTPUT"
                              MemberName 127(PS_OUTPUT) 0  "Color"
                              MemberName 127(PS_OUTPUT) 1  "Depth"
                              Name 129  "psout"
                              Name 136  "Color"
                              Name 140  "Depth"
                              Name 144  "g_tTex1df4a"
                              Name 147  "g_tTexcdf4"
                              Name 150  "g_tTexcdi4"
                              Name 153  "g_tTexcdu4"
                              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 67(g_tTex2di4) DescriptorSet 0
                              Decorate 79(g_tTex2du4) DescriptorSet 0
                              Decorate 92(g_tTex3df4) DescriptorSet 0
                              Decorate 105(g_tTex3di4) DescriptorSet 0
                              Decorate 116(g_tTex3du4) DescriptorSet 0
                              Decorate 136(Color) Location 0
                              Decorate 140(Depth) BuiltIn FragDepth
                              Decorate 144(g_tTex1df4a) DescriptorSet 0
                              Decorate 144(g_tTex1df4a) Binding 1
                              Decorate 147(g_tTexcdf4) DescriptorSet 0
                              Decorate 150(g_tTexcdi4) DescriptorSet 0
                              Decorate 153(g_tTexcdu4) DescriptorSet 0
               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 1056964608
              22:             TypeInt 32 1
              23:     22(int) Constant 1
              25:             TypeVector 22(int) 4
              26:             TypePointer Function 25(ivec4)
              28:             TypeImage 22(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:             TypeVector 22(int) 2
              61:     22(int) Constant 0
              62:   60(ivec2) ConstantComposite 23 61
              65:             TypeImage 22(int) 2D sampled format:Unknown
              66:             TypePointer UniformConstant 65
  67(g_tTex2di4):     66(ptr) Variable UniformConstant
              70:             TypeSampledImage 65
              72:    6(float) Constant 1053609165
              73:   58(fvec2) ConstantComposite 48 72
              74:   60(ivec2) ConstantComposite 23 23
              77:             TypeImage 37(int) 2D sampled format:Unknown
              78:             TypePointer UniformConstant 77
  79(g_tTex2du4):     78(ptr) Variable UniformConstant
              82:             TypeSampledImage 77
              84:    6(float) Constant 1058642330
              85:   58(fvec2) ConstantComposite 21 84
              86:     22(int) Constant 4294967295
              87:   60(ivec2) ConstantComposite 23 86
              90:             TypeImage 6(float) 3D sampled format:Unknown
              91:             TypePointer UniformConstant 90
  92(g_tTex3df4):     91(ptr) Variable UniformConstant
              95:             TypeSampledImage 90
              97:             TypeVector 6(float) 3
              98:   97(fvec3) ConstantComposite 20 35 48
              99:             TypeVector 22(int) 3
             100:   99(ivec3) ConstantComposite 23 61 23
             103:             TypeImage 22(int) 3D sampled format:Unknown
             104:             TypePointer UniformConstant 103
 105(g_tTex3di4):    104(ptr) Variable UniformConstant
             108:             TypeSampledImage 103
             110:   97(fvec3) ConstantComposite 72 21 84
             111:   99(ivec3) ConstantComposite 23 23 23
             114:             TypeImage 37(int) 3D sampled format:Unknown
             115:             TypePointer UniformConstant 114
 116(g_tTex3du4):    115(ptr) Variable UniformConstant
             119:             TypeSampledImage 114
             121:    6(float) Constant 1060320051
             122:    6(float) Constant 1061997773
             123:    6(float) Constant 1063675494
             124:   97(fvec3) ConstantComposite 121 122 123
             125:   99(ivec3) ConstantComposite 23 61 86
  127(PS_OUTPUT):             TypeStruct 7(fvec4) 6(float)
             128:             TypePointer Function 127(PS_OUTPUT)
             130:    6(float) Constant 1065353216
             131:    7(fvec4) ConstantComposite 130 130 130 130
             133:             TypePointer Function 6(float)
             135:             TypePointer Output 7(fvec4)
      136(Color):    135(ptr) Variable Output
             139:             TypePointer Output 6(float)
      140(Depth):    139(ptr) Variable Output
144(g_tTex1df4a):     11(ptr) Variable UniformConstant
             145:             TypeImage 6(float) Cube sampled format:Unknown
             146:             TypePointer UniformConstant 145
 147(g_tTexcdf4):    146(ptr) Variable UniformConstant
             148:             TypeImage 22(int) Cube sampled format:Unknown
             149:             TypePointer UniformConstant 148
 150(g_tTexcdi4):    149(ptr) Variable UniformConstant
             151:             TypeImage 37(int) Cube sampled format:Unknown
             152:             TypePointer UniformConstant 151
 153(g_tTexcdu4):    152(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
     64(txval21):     26(ptr) Variable Function
     76(txval22):     39(ptr) Variable Function
     89(txval30):      8(ptr) Variable Function
    102(txval31):     26(ptr) Variable Function
    113(txval32):     39(ptr) Variable Function
      129(psout):    128(ptr) Variable Function
              13:          10 Load 12(g_tTex1df4)
              17:          14 Load 16(g_sSamp)
              19:          18 SampledImage 13 17
              24:    7(fvec4) ImageSampleImplicitLod 19 20 Bias ConstOffset 23 21
                              Store 9(txval10) 24
              31:          28 Load 30(g_tTex1di4)
              32:          14 Load 16(g_sSamp)
              34:          33 SampledImage 31 32
              36:   25(ivec4) ImageSampleImplicitLod 34 35 Bias ConstOffset 23 21
                              Store 27(txval11) 36
              44:          41 Load 43(g_tTex1du4)
              45:          14 Load 16(g_sSamp)
              47:          46 SampledImage 44 45
              49:   38(ivec4) ImageSampleImplicitLod 47 48 Bias ConstOffset 23 21
                              Store 40(txval12) 49
              54:          51 Load 53(g_tTex2df4)
              55:          14 Load 16(g_sSamp)
              57:          56 SampledImage 54 55
              63:    7(fvec4) ImageSampleImplicitLod 57 59 Bias ConstOffset 62 21
                              Store 50(txval20) 63
              68:          65 Load 67(g_tTex2di4)
              69:          14 Load 16(g_sSamp)
              71:          70 SampledImage 68 69
              75:   25(ivec4) ImageSampleImplicitLod 71 73 Bias ConstOffset 74 21
                              Store 64(txval21) 75
              80:          77 Load 79(g_tTex2du4)
              81:          14 Load 16(g_sSamp)
              83:          82 SampledImage 80 81
              88:   38(ivec4) ImageSampleImplicitLod 83 85 Bias ConstOffset 87 21
                              Store 76(txval22) 88
              93:          90 Load 92(g_tTex3df4)
              94:          14 Load 16(g_sSamp)
              96:          95 SampledImage 93 94
             101:    7(fvec4) ImageSampleImplicitLod 96 98 Bias ConstOffset 100 21
                              Store 89(txval30) 101
             106:         103 Load 105(g_tTex3di4)
             107:          14 Load 16(g_sSamp)
             109:         108 SampledImage 106 107
             112:   25(ivec4) ImageSampleImplicitLod 109 110 Bias ConstOffset 111 21
                              Store 102(txval31) 112
             117:         114 Load 116(g_tTex3du4)
             118:          14 Load 16(g_sSamp)
             120:         119 SampledImage 117 118
             126:   38(ivec4) ImageSampleImplicitLod 120 124 Bias ConstOffset 125 21
                              Store 113(txval32) 126
             132:      8(ptr) AccessChain 129(psout) 61
                              Store 132 131
             134:    133(ptr) AccessChain 129(psout) 23
                              Store 134 130
             137:      8(ptr) AccessChain 129(psout) 61
             138:    7(fvec4) Load 137
                              Store 136(Color) 138
             141:    133(ptr) AccessChain 129(psout) 23
             142:    6(float) Load 141
                              Store 140(Depth) 142
                              Return
                              FunctionEnd
