hlsl.sample.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          texture (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: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          texture (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.200000
0:?               0.300000
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          texture (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.300000
0:?               0.400000
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          texture (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: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          texture (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.300000
0:?               0.400000
0:?               0.500000
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          texture (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.500000
0:?               0.600000
0:?               0.700000
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          texture (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: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          texture (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.400000
0:?               0.500000
0:?               0.600000
0:?               0.700000
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          texture (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.700000
0:?               0.800000
0:?               0.900000
0:?               1.000000
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          texture (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: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          texture (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.200000
0:?               0.300000
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          texture (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.300000
0:?               0.400000
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          texture (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: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          texture (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.300000
0:?               0.400000
0:?               0.500000
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          texture (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.500000
0:?               0.600000
0:?               0.700000
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          texture (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: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          texture (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.400000
0:?               0.500000
0:?               0.600000
0:?               0.700000
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          texture (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.700000
0:?               0.800000
0:?               0.900000
0:?               1.000000
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 129

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