hlsl.gather.array.dx10.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:24  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24    Function Parameters: 
0:?     Sequence
0:29      Sequence
0:29        move second child to first child ( temp 4-component vector of float)
0:29          'txval20' ( temp 4-component vector of float)
0:29          textureGather ( temp 4-component vector of float)
0:29            Construct combined texture-sampler ( temp sampler2DArray)
0:29              'g_tTex2df4a' ( uniform texture2DArray)
0:29              'g_sSamp' (layout( binding=0) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:30      Sequence
0:30        move second child to first child ( temp 4-component vector of int)
0:30          'txval21' ( temp 4-component vector of int)
0:30          textureGather ( temp 4-component vector of int)
0:30            Construct combined texture-sampler ( temp isampler2DArray)
0:30              'g_tTex2di4a' ( uniform itexture2DArray)
0:30              'g_sSamp' (layout( binding=0) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:?               0.500000
0:31      Sequence
0:31        move second child to first child ( temp 4-component vector of uint)
0:31          'txval22' ( temp 4-component vector of uint)
0:31          textureGather ( temp 4-component vector of uint)
0:31            Construct combined texture-sampler ( temp usampler2DArray)
0:31              'g_tTex2du4a' ( uniform utexture2DArray)
0:31              'g_sSamp' (layout( binding=0) 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          textureGather ( temp 4-component vector of float)
0:35            Construct combined texture-sampler ( temp samplerCubeArray)
0:35              'g_tTexcdf4a' ( uniform textureCubeArray)
0:35              'g_sSamp' (layout( binding=0) 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          textureGather ( temp 4-component vector of int)
0:36            Construct combined texture-sampler ( temp isamplerCubeArray)
0:36              'g_tTexcdi4a' ( uniform itextureCubeArray)
0:36              'g_sSamp' (layout( binding=0) 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          textureGather ( temp 4-component vector of uint)
0:37            Construct combined texture-sampler ( temp usamplerCubeArray)
0:37              'g_tTexcdu4a' ( uniform utextureCubeArray)
0:37              'g_sSamp' (layout( binding=0) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:?               1.000000
0:39      move second child to first child ( temp 4-component vector of float)
0:39        Color: direct index for structure ( temp 4-component vector of float)
0:39          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:39          Constant:
0:39            0 (const int)
0:39        Constant:
0:39          1.000000
0:39          1.000000
0:39          1.000000
0:39          1.000000
0:40      move second child to first child ( temp float)
0:40        Depth: direct index for structure ( temp float)
0:40          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float 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 Depth})
0:24  Function Definition: main( ( temp void)
0:24    Function Parameters: 
0:?     Sequence
0:24      Sequence
0:24        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24        move second child to first child ( temp 4-component vector of float)
0:?           'Color' (layout( location=0) out 4-component vector of float)
0:24          Color: direct index for structure ( temp 4-component vector of float)
0:24            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp float)
0:?           'Depth' ( out float FragDepth)
0:24          Depth: direct index for structure ( temp float)
0:24            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24            Constant:
0:24              1 (const int)
0:?   Linker Objects
0:?     'g_sSamp' (layout( binding=0) uniform sampler)
0:?     'g_tTex1df4a' (layout( binding=1) uniform texture1DArray)
0:?     'g_tTex1df4' (layout( binding=0) uniform texture1DArray)
0:?     'g_tTex1di4a' ( uniform itexture1DArray)
0:?     'g_tTex1du4a' ( uniform utexture1DArray)
0:?     'g_tTex2df4a' ( uniform texture2DArray)
0:?     'g_tTex2di4a' ( uniform itexture2DArray)
0:?     'g_tTex2du4a' ( uniform utexture2DArray)
0:?     'g_tTexcdf4a' ( uniform textureCubeArray)
0:?     'g_tTexcdi4a' ( uniform itextureCubeArray)
0:?     'g_tTexcdu4a' ( uniform utextureCubeArray)
0:?     'Color' (layout( location=0) out 4-component vector of float)
0:?     'Depth' ( out float FragDepth)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:24  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24    Function Parameters: 
0:?     Sequence
0:29      Sequence
0:29        move second child to first child ( temp 4-component vector of float)
0:29          'txval20' ( temp 4-component vector of float)
0:29          textureGather ( temp 4-component vector of float)
0:29            Construct combined texture-sampler ( temp sampler2DArray)
0:29              'g_tTex2df4a' ( uniform texture2DArray)
0:29              'g_sSamp' (layout( binding=0) uniform sampler)
0:?             Constant:
0:?               0.100000
0:?               0.200000
0:?               0.300000
0:30      Sequence
0:30        move second child to first child ( temp 4-component vector of int)
0:30          'txval21' ( temp 4-component vector of int)
0:30          textureGather ( temp 4-component vector of int)
0:30            Construct combined texture-sampler ( temp isampler2DArray)
0:30              'g_tTex2di4a' ( uniform itexture2DArray)
0:30              'g_sSamp' (layout( binding=0) uniform sampler)
0:?             Constant:
0:?               0.300000
0:?               0.400000
0:?               0.500000
0:31      Sequence
0:31        move second child to first child ( temp 4-component vector of uint)
0:31          'txval22' ( temp 4-component vector of uint)
0:31          textureGather ( temp 4-component vector of uint)
0:31            Construct combined texture-sampler ( temp usampler2DArray)
0:31              'g_tTex2du4a' ( uniform utexture2DArray)
0:31              'g_sSamp' (layout( binding=0) 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          textureGather ( temp 4-component vector of float)
0:35            Construct combined texture-sampler ( temp samplerCubeArray)
0:35              'g_tTexcdf4a' ( uniform textureCubeArray)
0:35              'g_sSamp' (layout( binding=0) 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          textureGather ( temp 4-component vector of int)
0:36            Construct combined texture-sampler ( temp isamplerCubeArray)
0:36              'g_tTexcdi4a' ( uniform itextureCubeArray)
0:36              'g_sSamp' (layout( binding=0) 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          textureGather ( temp 4-component vector of uint)
0:37            Construct combined texture-sampler ( temp usamplerCubeArray)
0:37              'g_tTexcdu4a' ( uniform utextureCubeArray)
0:37              'g_sSamp' (layout( binding=0) uniform sampler)
0:?             Constant:
0:?               0.700000
0:?               0.800000
0:?               0.900000
0:?               1.000000
0:39      move second child to first child ( temp 4-component vector of float)
0:39        Color: direct index for structure ( temp 4-component vector of float)
0:39          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:39          Constant:
0:39            0 (const int)
0:39        Constant:
0:39          1.000000
0:39          1.000000
0:39          1.000000
0:39          1.000000
0:40      move second child to first child ( temp float)
0:40        Depth: direct index for structure ( temp float)
0:40          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float 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 Depth})
0:24  Function Definition: main( ( temp void)
0:24    Function Parameters: 
0:?     Sequence
0:24      Sequence
0:24        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24        move second child to first child ( temp 4-component vector of float)
0:?           'Color' (layout( location=0) out 4-component vector of float)
0:24          Color: direct index for structure ( temp 4-component vector of float)
0:24            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24            Constant:
0:24              0 (const int)
0:24        move second child to first child ( temp float)
0:?           'Depth' ( out float FragDepth)
0:24          Depth: direct index for structure ( temp float)
0:24            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:24            Constant:
0:24              1 (const int)
0:?   Linker Objects
0:?     'g_sSamp' (layout( binding=0) uniform sampler)
0:?     'g_tTex1df4a' (layout( binding=1) uniform texture1DArray)
0:?     'g_tTex1df4' (layout( binding=0) uniform texture1DArray)
0:?     'g_tTex1di4a' ( uniform itexture1DArray)
0:?     'g_tTex1du4a' ( uniform utexture1DArray)
0:?     'g_tTex2df4a' ( uniform texture2DArray)
0:?     'g_tTex2di4a' ( uniform itexture2DArray)
0:?     'g_tTex2du4a' ( uniform utexture2DArray)
0:?     'g_tTexcdf4a' ( uniform textureCubeArray)
0:?     'g_tTexcdi4a' ( uniform itextureCubeArray)
0:?     'g_tTexcdu4a' ( uniform utextureCubeArray)
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 124

                              Capability Shader
                              Capability Sampled1D
                              Capability SampledCubeArray
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 107 111
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "main"
                              Name 8  "PS_OUTPUT"
                              MemberName 8(PS_OUTPUT) 0  "Color"
                              MemberName 8(PS_OUTPUT) 1  "Depth"
                              Name 10  "@main("
                              Name 13  "txval20"
                              Name 16  "g_tTex2df4a"
                              Name 20  "g_sSamp"
                              Name 34  "txval21"
                              Name 37  "g_tTex2di4a"
                              Name 49  "txval22"
                              Name 52  "g_tTex2du4a"
                              Name 61  "txval40"
                              Name 64  "g_tTexcdf4a"
                              Name 71  "txval41"
                              Name 74  "g_tTexcdi4a"
                              Name 81  "txval42"
                              Name 84  "g_tTexcdu4a"
                              Name 95  "psout"
                              Name 104  "flattenTemp"
                              Name 107  "Color"
                              Name 111  "Depth"
                              Name 116  "g_tTex1df4a"
                              Name 117  "g_tTex1df4"
                              Name 120  "g_tTex1di4a"
                              Name 123  "g_tTex1du4a"
                              Decorate 16(g_tTex2df4a) DescriptorSet 0
                              Decorate 20(g_sSamp) DescriptorSet 0
                              Decorate 20(g_sSamp) Binding 0
                              Decorate 37(g_tTex2di4a) DescriptorSet 0
                              Decorate 52(g_tTex2du4a) DescriptorSet 0
                              Decorate 64(g_tTexcdf4a) DescriptorSet 0
                              Decorate 74(g_tTexcdi4a) DescriptorSet 0
                              Decorate 84(g_tTexcdu4a) DescriptorSet 0
                              Decorate 107(Color) Location 0
                              Decorate 111(Depth) BuiltIn FragDepth
                              Decorate 116(g_tTex1df4a) DescriptorSet 0
                              Decorate 116(g_tTex1df4a) Binding 1
                              Decorate 117(g_tTex1df4) DescriptorSet 0
                              Decorate 117(g_tTex1df4) Binding 0
                              Decorate 120(g_tTex1di4a) DescriptorSet 0
                              Decorate 123(g_tTex1du4a) DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
    8(PS_OUTPUT):             TypeStruct 7(fvec4) 6(float)
               9:             TypeFunction 8(PS_OUTPUT)
              12:             TypePointer Function 7(fvec4)
              14:             TypeImage 6(float) 2D array sampled format:Unknown
              15:             TypePointer UniformConstant 14
 16(g_tTex2df4a):     15(ptr) Variable UniformConstant
              18:             TypeSampler
              19:             TypePointer UniformConstant 18
     20(g_sSamp):     19(ptr) Variable UniformConstant
              22:             TypeSampledImage 14
              24:             TypeVector 6(float) 3
              25:    6(float) Constant 1036831949
              26:    6(float) Constant 1045220557
              27:    6(float) Constant 1050253722
              28:   24(fvec3) ConstantComposite 25 26 27
              29:             TypeInt 32 1
              30:     29(int) Constant 0
              32:             TypeVector 29(int) 4
              33:             TypePointer Function 32(ivec4)
              35:             TypeImage 29(int) 2D array sampled format:Unknown
              36:             TypePointer UniformConstant 35
 37(g_tTex2di4a):     36(ptr) Variable UniformConstant
              40:             TypeSampledImage 35
              42:    6(float) Constant 1053609165
              43:    6(float) Constant 1056964608
              44:   24(fvec3) ConstantComposite 27 42 43
              46:             TypeInt 32 0
              47:             TypeVector 46(int) 4
              48:             TypePointer Function 47(ivec4)
              50:             TypeImage 46(int) 2D array sampled format:Unknown
              51:             TypePointer UniformConstant 50
 52(g_tTex2du4a):     51(ptr) Variable UniformConstant
              55:             TypeSampledImage 50
              57:    6(float) Constant 1058642330
              58:    6(float) Constant 1060320051
              59:   24(fvec3) ConstantComposite 43 57 58
              62:             TypeImage 6(float) Cube array sampled format:Unknown
              63:             TypePointer UniformConstant 62
 64(g_tTexcdf4a):     63(ptr) Variable UniformConstant
              67:             TypeSampledImage 62
              69:    7(fvec4) ConstantComposite 25 26 27 42
              72:             TypeImage 29(int) Cube array sampled format:Unknown
              73:             TypePointer UniformConstant 72
 74(g_tTexcdi4a):     73(ptr) Variable UniformConstant
              77:             TypeSampledImage 72
              79:    7(fvec4) ConstantComposite 42 43 57 58
              82:             TypeImage 46(int) Cube array sampled format:Unknown
              83:             TypePointer UniformConstant 82
 84(g_tTexcdu4a):     83(ptr) Variable UniformConstant
              87:             TypeSampledImage 82
              89:    6(float) Constant 1061997773
              90:    6(float) Constant 1063675494
              91:    6(float) Constant 1065353216
              92:    7(fvec4) ConstantComposite 58 89 90 91
              94:             TypePointer Function 8(PS_OUTPUT)
              96:    7(fvec4) ConstantComposite 91 91 91 91
              98:     29(int) Constant 1
              99:             TypePointer Function 6(float)
             106:             TypePointer Output 7(fvec4)
      107(Color):    106(ptr) Variable Output
             110:             TypePointer Output 6(float)
      111(Depth):    110(ptr) Variable Output
             114:             TypeImage 6(float) 1D array sampled format:Unknown
             115:             TypePointer UniformConstant 114
116(g_tTex1df4a):    115(ptr) Variable UniformConstant
 117(g_tTex1df4):    115(ptr) Variable UniformConstant
             118:             TypeImage 29(int) 1D array sampled format:Unknown
             119:             TypePointer UniformConstant 118
120(g_tTex1di4a):    119(ptr) Variable UniformConstant
             121:             TypeImage 46(int) 1D array sampled format:Unknown
             122:             TypePointer UniformConstant 121
123(g_tTex1du4a):    122(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
104(flattenTemp):     94(ptr) Variable Function
             105:8(PS_OUTPUT) FunctionCall 10(@main()
                              Store 104(flattenTemp) 105
             108:     12(ptr) AccessChain 104(flattenTemp) 30
             109:    7(fvec4) Load 108
                              Store 107(Color) 109
             112:     99(ptr) AccessChain 104(flattenTemp) 98
             113:    6(float) Load 112
                              Store 111(Depth) 113
                              Return
                              FunctionEnd
      10(@main():8(PS_OUTPUT) Function None 9
              11:             Label
     13(txval20):     12(ptr) Variable Function
     34(txval21):     33(ptr) Variable Function
     49(txval22):     48(ptr) Variable Function
     61(txval40):     12(ptr) Variable Function
     71(txval41):     33(ptr) Variable Function
     81(txval42):     48(ptr) Variable Function
       95(psout):     94(ptr) Variable Function
              17:          14 Load 16(g_tTex2df4a)
              21:          18 Load 20(g_sSamp)
              23:          22 SampledImage 17 21
              31:    7(fvec4) ImageGather 23 28 30
                              Store 13(txval20) 31
              38:          35 Load 37(g_tTex2di4a)
              39:          18 Load 20(g_sSamp)
              41:          40 SampledImage 38 39
              45:   32(ivec4) ImageGather 41 44 30
                              Store 34(txval21) 45
              53:          50 Load 52(g_tTex2du4a)
              54:          18 Load 20(g_sSamp)
              56:          55 SampledImage 53 54
              60:   47(ivec4) ImageGather 56 59 30
                              Store 49(txval22) 60
              65:          62 Load 64(g_tTexcdf4a)
              66:          18 Load 20(g_sSamp)
              68:          67 SampledImage 65 66
              70:    7(fvec4) ImageGather 68 69 30
                              Store 61(txval40) 70
              75:          72 Load 74(g_tTexcdi4a)
              76:          18 Load 20(g_sSamp)
              78:          77 SampledImage 75 76
              80:   32(ivec4) ImageGather 78 79 30
                              Store 71(txval41) 80
              85:          82 Load 84(g_tTexcdu4a)
              86:          18 Load 20(g_sSamp)
              88:          87 SampledImage 85 86
              93:   47(ivec4) ImageGather 88 92 30
                              Store 81(txval42) 93
              97:     12(ptr) AccessChain 95(psout) 30
                              Store 97 96
             100:     99(ptr) AccessChain 95(psout) 98
                              Store 100 91
             101:8(PS_OUTPUT) Load 95(psout)
                              ReturnValue 101
                              FunctionEnd
