hlsl.samplegrad.array.dx10.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:44  Function Definition: main( (global structure{temp 4-component vector of float Color, temp float FragDepth Depth})
0:24    Function Parameters: 
0:?     Sequence
0:27      Sequence
0:27        move second child to first child (temp 4-component vector of float)
0:27          'txval10' (temp 4-component vector of float)
0:27          textureGrad (global 4-component vector of float)
0:27            Construct combined texture-sampler (temp sampler1DArray)
0:27              'g_tTex1df4' (uniform texture1DArray)
0:27              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:27            Constant:
0:27              1.100000
0:27            Constant:
0:27              1.200000
0:28      Sequence
0:28        move second child to first child (temp 4-component vector of int)
0:28          'txval11' (temp 4-component vector of int)
0:28          textureGrad (global 4-component vector of int)
0:28            Construct combined texture-sampler (temp isampler1DArray)
0:28              'g_tTex1di4' (uniform itexture1DArray)
0:28              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:28            Constant:
0:28              1.100000
0:28            Constant:
0:28              1.200000
0:29      Sequence
0:29        move second child to first child (temp 4-component vector of uint)
0:29          'txval12' (temp 4-component vector of uint)
0:29          textureGrad (global 4-component vector of uint)
0:29            Construct combined texture-sampler (temp usampler1DArray)
0:29              'g_tTex1du4' (uniform utexture1DArray)
0:29              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:29            Constant:
0:29              1.100000
0:29            Constant:
0:29              1.200000
0:31      Sequence
0:31        move second child to first child (temp 4-component vector of float)
0:31          'txval20' (temp 4-component vector of float)
0:31          textureGrad (global 4-component vector of float)
0:31            Construct combined texture-sampler (temp sampler2DArray)
0:31              'g_tTex2df4' (uniform texture2DArray)
0:31              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of int)
0:32          'txval21' (temp 4-component vector of int)
0:32          textureGrad (global 4-component vector of int)
0:32            Construct combined texture-sampler (temp isampler2DArray)
0:32              'g_tTex2di4' (uniform itexture2DArray)
0:32              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:33      Sequence
0:33        move second child to first child (temp 4-component vector of uint)
0:33          'txval22' (temp 4-component vector of uint)
0:33          textureGrad (global 4-component vector of uint)
0:33            Construct combined texture-sampler (temp usampler2DArray)
0:33              'g_tTex2du4' (uniform utexture2DArray)
0:33              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
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 float)
0:35          'txval40' (temp 4-component vector of float)
0:35          textureGrad (global 4-component vector of float)
0:35            Construct combined texture-sampler (temp samplerCubeArray)
0:35              'g_tTexcdf4' (uniform textureCubeArray)
0:35              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of int)
0:36          'txval41' (temp 4-component vector of int)
0:36          textureGrad (global 4-component vector of int)
0:36            Construct combined texture-sampler (temp isamplerCubeArray)
0:36              'g_tTexcdi4' (uniform itextureCubeArray)
0:36              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:37      Sequence
0:37        move second child to first child (temp 4-component vector of uint)
0:37          'txval42' (temp 4-component vector of uint)
0:37          textureGrad (global 4-component vector of uint)
0:37            Construct combined texture-sampler (temp usamplerCubeArray)
0:37              'g_tTexcdu4' (uniform utextureCubeArray)
0:37              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:40      move second child to first child (temp float)
0:40        Depth: direct index for structure (temp float FragDepth)
0:40          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
0:40          Constant:
0:40            1 (const int)
0:40        Constant:
0:40          1.000000
0:42      Branch: Return with expression
0:42        'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
0:?   Linker Objects
0:?     'g_sSamp' (uniform sampler)
0:?     'g_tTex1df4a' (uniform texture1DArray)
0:?     'g_tTex1df4' (uniform texture1DArray)
0:?     'g_tTex1di4' (uniform itexture1DArray)
0:?     'g_tTex1du4' (uniform utexture1DArray)
0:?     'g_tTex2df4' (uniform texture2DArray)
0:?     'g_tTex2di4' (uniform itexture2DArray)
0:?     'g_tTex2du4' (uniform utexture2DArray)
0:?     'g_tTexcdf4' (uniform textureCubeArray)
0:?     'g_tTexcdi4' (uniform itextureCubeArray)
0:?     'g_tTexcdu4' (uniform utextureCubeArray)


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:44  Function Definition: main( (global structure{temp 4-component vector of float Color, temp float FragDepth Depth})
0:24    Function Parameters: 
0:?     Sequence
0:27      Sequence
0:27        move second child to first child (temp 4-component vector of float)
0:27          'txval10' (temp 4-component vector of float)
0:27          textureGrad (global 4-component vector of float)
0:27            Construct combined texture-sampler (temp sampler1DArray)
0:27              'g_tTex1df4' (uniform texture1DArray)
0:27              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:27            Constant:
0:27              1.100000
0:27            Constant:
0:27              1.200000
0:28      Sequence
0:28        move second child to first child (temp 4-component vector of int)
0:28          'txval11' (temp 4-component vector of int)
0:28          textureGrad (global 4-component vector of int)
0:28            Construct combined texture-sampler (temp isampler1DArray)
0:28              'g_tTex1di4' (uniform itexture1DArray)
0:28              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:28            Constant:
0:28              1.100000
0:28            Constant:
0:28              1.200000
0:29      Sequence
0:29        move second child to first child (temp 4-component vector of uint)
0:29          'txval12' (temp 4-component vector of uint)
0:29          textureGrad (global 4-component vector of uint)
0:29            Construct combined texture-sampler (temp usampler1DArray)
0:29              'g_tTex1du4' (uniform utexture1DArray)
0:29              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:29            Constant:
0:29              1.100000
0:29            Constant:
0:29              1.200000
0:31      Sequence
0:31        move second child to first child (temp 4-component vector of float)
0:31          'txval20' (temp 4-component vector of float)
0:31          textureGrad (global 4-component vector of float)
0:31            Construct combined texture-sampler (temp sampler2DArray)
0:31              'g_tTex2df4' (uniform texture2DArray)
0:31              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of int)
0:32          'txval21' (temp 4-component vector of int)
0:32          textureGrad (global 4-component vector of int)
0:32            Construct combined texture-sampler (temp isampler2DArray)
0:32              'g_tTex2di4' (uniform itexture2DArray)
0:32              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:33      Sequence
0:33        move second child to first child (temp 4-component vector of uint)
0:33          'txval22' (temp 4-component vector of uint)
0:33          textureGrad (global 4-component vector of uint)
0:33            Construct combined texture-sampler (temp usampler2DArray)
0:33              'g_tTex2du4' (uniform utexture2DArray)
0:33              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
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 float)
0:35          'txval40' (temp 4-component vector of float)
0:35          textureGrad (global 4-component vector of float)
0:35            Construct combined texture-sampler (temp samplerCubeArray)
0:35              'g_tTexcdf4' (uniform textureCubeArray)
0:35              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:36      Sequence
0:36        move second child to first child (temp 4-component vector of int)
0:36          'txval41' (temp 4-component vector of int)
0:36          textureGrad (global 4-component vector of int)
0:36            Construct combined texture-sampler (temp isamplerCubeArray)
0:36              'g_tTexcdi4' (uniform itextureCubeArray)
0:36              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:37      Sequence
0:37        move second child to first child (temp 4-component vector of uint)
0:37          'txval42' (temp 4-component vector of uint)
0:37          textureGrad (global 4-component vector of uint)
0:37            Construct combined texture-sampler (temp usamplerCubeArray)
0:37              'g_tTexcdu4' (uniform utextureCubeArray)
0:37              'g_sSamp' (uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:?               0.400000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:?             Constant:
0:?               1.100000
0:?               1.200000
0:?               1.300000
0:40      move second child to first child (temp float)
0:40        Depth: direct index for structure (temp float FragDepth)
0:40          'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
0:40          Constant:
0:40            1 (const int)
0:40        Constant:
0:40          1.000000
0:42      Branch: Return with expression
0:42        'psout' (temp structure{temp 4-component vector of float Color, temp float FragDepth Depth})
0:?   Linker Objects
0:?     'g_sSamp' (uniform sampler)
0:?     'g_tTex1df4a' (uniform texture1DArray)
0:?     'g_tTex1df4' (uniform texture1DArray)
0:?     'g_tTex1di4' (uniform itexture1DArray)
0:?     'g_tTex1du4' (uniform utexture1DArray)
0:?     'g_tTex2df4' (uniform texture2DArray)
0:?     'g_tTex2di4' (uniform itexture2DArray)
0:?     'g_tTex2du4' (uniform utexture2DArray)
0:?     'g_tTexcdf4' (uniform textureCubeArray)
0:?     'g_tTexcdi4' (uniform itextureCubeArray)
0:?     'g_tTexcdu4' (uniform utextureCubeArray)

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

                              Capability Shader
                              Capability Sampled1D
                              Capability SampledCubeArray
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main"
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 450
                              Name 4  "main"
                              Name 9  "txval10"
                              Name 12  "g_tTex1df4"
                              Name 16  "g_sSamp"
                              Name 30  "txval11"
                              Name 33  "g_tTex1di4"
                              Name 42  "txval12"
                              Name 45  "g_tTex1du4"
                              Name 51  "txval20"
                              Name 54  "g_tTex2df4"
                              Name 64  "txval21"
                              Name 67  "g_tTex2di4"
                              Name 73  "txval22"
                              Name 76  "g_tTex2du4"
                              Name 82  "txval40"
                              Name 85  "g_tTexcdf4"
                              Name 95  "txval41"
                              Name 98  "g_tTexcdi4"
                              Name 104  "txval42"
                              Name 107  "g_tTexcdu4"
                              Name 113  "PS_OUTPUT"
                              MemberName 113(PS_OUTPUT) 0  "Color"
                              MemberName 113(PS_OUTPUT) 1  "Depth"
                              Name 115  "psout"
                              Name 122  "g_tTex1df4a"
                              Decorate 12(g_tTex1df4) DescriptorSet 0
                              Decorate 16(g_sSamp) DescriptorSet 0
                              Decorate 33(g_tTex1di4) DescriptorSet 0
                              Decorate 45(g_tTex1du4) DescriptorSet 0
                              Decorate 54(g_tTex2df4) DescriptorSet 0
                              Decorate 67(g_tTex2di4) DescriptorSet 0
                              Decorate 76(g_tTex2du4) DescriptorSet 0
                              Decorate 85(g_tTexcdf4) DescriptorSet 0
                              Decorate 98(g_tTexcdi4) DescriptorSet 0
                              Decorate 107(g_tTexcdu4) DescriptorSet 0
                              MemberDecorate 113(PS_OUTPUT) 1 BuiltIn FragDepth
                              Decorate 122(g_tTex1df4a) 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 array 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:             TypeVector 6(float) 2
              21:    6(float) Constant 1036831949
              22:    6(float) Constant 1045220557
              23:   20(fvec2) ConstantComposite 21 22
              24:    6(float) Constant 1066192077
              25:    6(float) Constant 1067030938
              27:             TypeInt 32 1
              28:             TypeVector 27(int) 4
              29:             TypePointer Function 28(ivec4)
              31:             TypeImage 27(int) 1D array sampled format:Unknown
              32:             TypePointer UniformConstant 31
  33(g_tTex1di4):     32(ptr) Variable UniformConstant
              36:             TypeSampledImage 31
              39:             TypeInt 32 0
              40:             TypeVector 39(int) 4
              41:             TypePointer Function 40(ivec4)
              43:             TypeImage 39(int) 1D array sampled format:Unknown
              44:             TypePointer UniformConstant 43
  45(g_tTex1du4):     44(ptr) Variable UniformConstant
              48:             TypeSampledImage 43
              52:             TypeImage 6(float) 2D array sampled format:Unknown
              53:             TypePointer UniformConstant 52
  54(g_tTex2df4):     53(ptr) Variable UniformConstant
              57:             TypeSampledImage 52
              59:             TypeVector 6(float) 3
              60:    6(float) Constant 1050253722
              61:   59(fvec3) ConstantComposite 21 22 60
              62:   20(fvec2) ConstantComposite 24 25
              65:             TypeImage 27(int) 2D array sampled format:Unknown
              66:             TypePointer UniformConstant 65
  67(g_tTex2di4):     66(ptr) Variable UniformConstant
              70:             TypeSampledImage 65
              74:             TypeImage 39(int) 2D array sampled format:Unknown
              75:             TypePointer UniformConstant 74
  76(g_tTex2du4):     75(ptr) Variable UniformConstant
              79:             TypeSampledImage 74
              83:             TypeImage 6(float) Cube array sampled format:Unknown
              84:             TypePointer UniformConstant 83
  85(g_tTexcdf4):     84(ptr) Variable UniformConstant
              88:             TypeSampledImage 83
              90:    6(float) Constant 1053609165
              91:    7(fvec4) ConstantComposite 21 22 60 90
              92:    6(float) Constant 1067869798
              93:   59(fvec3) ConstantComposite 24 25 92
              96:             TypeImage 27(int) Cube array sampled format:Unknown
              97:             TypePointer UniformConstant 96
  98(g_tTexcdi4):     97(ptr) Variable UniformConstant
             101:             TypeSampledImage 96
             105:             TypeImage 39(int) Cube array sampled format:Unknown
             106:             TypePointer UniformConstant 105
 107(g_tTexcdu4):    106(ptr) Variable UniformConstant
             110:             TypeSampledImage 105
  113(PS_OUTPUT):             TypeStruct 7(fvec4) 6(float)
             114:             TypePointer Function 113(PS_OUTPUT)
             116:     27(int) Constant 1
             117:    6(float) Constant 1065353216
             118:             TypePointer Function 6(float)
122(g_tTex1df4a):     11(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
      9(txval10):      8(ptr) Variable Function
     30(txval11):     29(ptr) Variable Function
     42(txval12):     41(ptr) Variable Function
     51(txval20):      8(ptr) Variable Function
     64(txval21):     29(ptr) Variable Function
     73(txval22):     41(ptr) Variable Function
     82(txval40):      8(ptr) Variable Function
     95(txval41):     29(ptr) Variable Function
    104(txval42):     41(ptr) Variable Function
      115(psout):    114(ptr) Variable Function
              13:          10 Load 12(g_tTex1df4)
              17:          14 Load 16(g_sSamp)
              19:          18 SampledImage 13 17
              26:    7(fvec4) ImageSampleExplicitLod 19 23 Grad 24 25
                              Store 9(txval10) 26
              34:          31 Load 33(g_tTex1di4)
              35:          14 Load 16(g_sSamp)
              37:          36 SampledImage 34 35
              38:   28(ivec4) ImageSampleExplicitLod 37 23 Grad 24 25
                              Store 30(txval11) 38
              46:          43 Load 45(g_tTex1du4)
              47:          14 Load 16(g_sSamp)
              49:          48 SampledImage 46 47
              50:   40(ivec4) ImageSampleExplicitLod 49 23 Grad 24 25
                              Store 42(txval12) 50
              55:          52 Load 54(g_tTex2df4)
              56:          14 Load 16(g_sSamp)
              58:          57 SampledImage 55 56
              63:    7(fvec4) ImageSampleExplicitLod 58 61 Grad 62 62
                              Store 51(txval20) 63
              68:          65 Load 67(g_tTex2di4)
              69:          14 Load 16(g_sSamp)
              71:          70 SampledImage 68 69
              72:   28(ivec4) ImageSampleExplicitLod 71 61 Grad 62 62
                              Store 64(txval21) 72
              77:          74 Load 76(g_tTex2du4)
              78:          14 Load 16(g_sSamp)
              80:          79 SampledImage 77 78
              81:   40(ivec4) ImageSampleExplicitLod 80 61 Grad 62 62
                              Store 73(txval22) 81
              86:          83 Load 85(g_tTexcdf4)
              87:          14 Load 16(g_sSamp)
              89:          88 SampledImage 86 87
              94:    7(fvec4) ImageSampleExplicitLod 89 91 Grad 93 93
                              Store 82(txval40) 94
              99:          96 Load 98(g_tTexcdi4)
             100:          14 Load 16(g_sSamp)
             102:         101 SampledImage 99 100
             103:   28(ivec4) ImageSampleExplicitLod 102 91 Grad 93 93
                              Store 95(txval41) 103
             108:         105 Load 107(g_tTexcdu4)
             109:          14 Load 16(g_sSamp)
             111:         110 SampledImage 108 109
             112:   40(ivec4) ImageSampleExplicitLod 111 91 Grad 93 93
                              Store 104(txval42) 112
             119:    118(ptr) AccessChain 115(psout) 116
                              Store 119 117
             120:113(PS_OUTPUT) Load 115(psout)
                              ReturnValue 120
                              FunctionEnd
