hlsl.gather.basic.dx10.frag
Shader version: 500
gl_FragCoord origin is upper left
using depth_any
0:? Sequence
0:29  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29    Function Parameters: 
0:?     Sequence
0:34      Sequence
0:34        move second child to first child ( temp 4-component vector of float)
0:34          'txval20' ( temp 4-component vector of float)
0:34          textureGather ( temp 4-component vector of float)
0:34            Construct combined texture-sampler ( temp sampler2D)
0:34              'g_tTex2df4' ( uniform texture2D)
0:34              'g_sSamp' (layout( binding=0) uniform sampler)
0:34            Constant:
0:34              0.100000
0:34              0.200000
0:35      Sequence
0:35        move second child to first child ( temp 4-component vector of int)
0:35          'txval21' ( temp 4-component vector of int)
0:35          textureGather ( temp 4-component vector of int)
0:35            Construct combined texture-sampler ( temp isampler2D)
0:35              'g_tTex2di4' ( uniform itexture2D)
0:35              'g_sSamp' (layout( binding=0) uniform sampler)
0:35            Constant:
0:35              0.300000
0:35              0.400000
0:36      Sequence
0:36        move second child to first child ( temp 4-component vector of uint)
0:36          'txval22' ( temp 4-component vector of uint)
0:36          textureGather ( temp 4-component vector of uint)
0:36            Construct combined texture-sampler ( temp usampler2D)
0:36              'g_tTex2du4' ( uniform utexture2D)
0:36              'g_sSamp' (layout( binding=0) uniform sampler)
0:36            Constant:
0:36              0.500000
0:36              0.600000
0:40      Sequence
0:40        move second child to first child ( temp 4-component vector of float)
0:40          'txval40' ( temp 4-component vector of float)
0:40          textureGather ( temp 4-component vector of float)
0:40            Construct combined texture-sampler ( temp samplerCube)
0:40              'g_tTexcdf4' ( uniform textureCube)
0:40              'g_sSamp' (layout( binding=0) uniform sampler)
0:40            Constant:
0:40              0.100000
0:40              0.200000
0:40              0.300000
0:41      Sequence
0:41        move second child to first child ( temp 4-component vector of int)
0:41          'txval41' ( temp 4-component vector of int)
0:41          textureGather ( temp 4-component vector of int)
0:41            Construct combined texture-sampler ( temp isamplerCube)
0:41              'g_tTexcdi4' ( uniform itextureCube)
0:41              'g_sSamp' (layout( binding=0) uniform sampler)
0:41            Constant:
0:41              0.400000
0:41              0.500000
0:41              0.600000
0:42      Sequence
0:42        move second child to first child ( temp 4-component vector of uint)
0:42          'txval42' ( temp 4-component vector of uint)
0:42          textureGather ( temp 4-component vector of uint)
0:42            Construct combined texture-sampler ( temp usamplerCube)
0:42              'g_tTexcdu4' ( uniform utextureCube)
0:42              'g_sSamp' (layout( binding=0) uniform sampler)
0:42            Constant:
0:42              0.700000
0:42              0.800000
0:42              0.900000
0:44      move second child to first child ( temp 4-component vector of float)
0:44        Color: direct index for structure ( temp 4-component vector of float)
0:44          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:44          Constant:
0:44            0 (const int)
0:44        Constant:
0:44          1.000000
0:44          1.000000
0:44          1.000000
0:44          1.000000
0:45      move second child to first child ( temp float)
0:45        Depth: direct index for structure ( temp float)
0:45          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:45          Constant:
0:45            1 (const int)
0:45        Constant:
0:45          1.000000
0:47      Branch: Return with expression
0:47        'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29  Function Definition: main( ( temp void)
0:29    Function Parameters: 
0:?     Sequence
0:29      Sequence
0:29        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29        move second child to first child ( temp 4-component vector of float)
0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
0:29          Color: direct index for structure ( temp 4-component vector of float)
0:29            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29            Constant:
0:29              0 (const int)
0:29        move second child to first child ( temp float)
0:?           '@entryPointOutput.Depth' ( out float FragDepth)
0:29          Depth: direct index for structure ( temp float)
0:29            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29            Constant:
0:29              1 (const int)
0:?   Linker Objects
0:?     'g_sSamp' (layout( binding=0) uniform sampler)
0:?     'g_sSamp2d' ( 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:?     '@entryPointOutput.Depth' ( out float FragDepth)
0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
using depth_any
0:? Sequence
0:29  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29    Function Parameters: 
0:?     Sequence
0:34      Sequence
0:34        move second child to first child ( temp 4-component vector of float)
0:34          'txval20' ( temp 4-component vector of float)
0:34          textureGather ( temp 4-component vector of float)
0:34            Construct combined texture-sampler ( temp sampler2D)
0:34              'g_tTex2df4' ( uniform texture2D)
0:34              'g_sSamp' (layout( binding=0) uniform sampler)
0:34            Constant:
0:34              0.100000
0:34              0.200000
0:35      Sequence
0:35        move second child to first child ( temp 4-component vector of int)
0:35          'txval21' ( temp 4-component vector of int)
0:35          textureGather ( temp 4-component vector of int)
0:35            Construct combined texture-sampler ( temp isampler2D)
0:35              'g_tTex2di4' ( uniform itexture2D)
0:35              'g_sSamp' (layout( binding=0) uniform sampler)
0:35            Constant:
0:35              0.300000
0:35              0.400000
0:36      Sequence
0:36        move second child to first child ( temp 4-component vector of uint)
0:36          'txval22' ( temp 4-component vector of uint)
0:36          textureGather ( temp 4-component vector of uint)
0:36            Construct combined texture-sampler ( temp usampler2D)
0:36              'g_tTex2du4' ( uniform utexture2D)
0:36              'g_sSamp' (layout( binding=0) uniform sampler)
0:36            Constant:
0:36              0.500000
0:36              0.600000
0:40      Sequence
0:40        move second child to first child ( temp 4-component vector of float)
0:40          'txval40' ( temp 4-component vector of float)
0:40          textureGather ( temp 4-component vector of float)
0:40            Construct combined texture-sampler ( temp samplerCube)
0:40              'g_tTexcdf4' ( uniform textureCube)
0:40              'g_sSamp' (layout( binding=0) uniform sampler)
0:40            Constant:
0:40              0.100000
0:40              0.200000
0:40              0.300000
0:41      Sequence
0:41        move second child to first child ( temp 4-component vector of int)
0:41          'txval41' ( temp 4-component vector of int)
0:41          textureGather ( temp 4-component vector of int)
0:41            Construct combined texture-sampler ( temp isamplerCube)
0:41              'g_tTexcdi4' ( uniform itextureCube)
0:41              'g_sSamp' (layout( binding=0) uniform sampler)
0:41            Constant:
0:41              0.400000
0:41              0.500000
0:41              0.600000
0:42      Sequence
0:42        move second child to first child ( temp 4-component vector of uint)
0:42          'txval42' ( temp 4-component vector of uint)
0:42          textureGather ( temp 4-component vector of uint)
0:42            Construct combined texture-sampler ( temp usamplerCube)
0:42              'g_tTexcdu4' ( uniform utextureCube)
0:42              'g_sSamp' (layout( binding=0) uniform sampler)
0:42            Constant:
0:42              0.700000
0:42              0.800000
0:42              0.900000
0:44      move second child to first child ( temp 4-component vector of float)
0:44        Color: direct index for structure ( temp 4-component vector of float)
0:44          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:44          Constant:
0:44            0 (const int)
0:44        Constant:
0:44          1.000000
0:44          1.000000
0:44          1.000000
0:44          1.000000
0:45      move second child to first child ( temp float)
0:45        Depth: direct index for structure ( temp float)
0:45          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:45          Constant:
0:45            1 (const int)
0:45        Constant:
0:45          1.000000
0:47      Branch: Return with expression
0:47        'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29  Function Definition: main( ( temp void)
0:29    Function Parameters: 
0:?     Sequence
0:29      Sequence
0:29        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29        move second child to first child ( temp 4-component vector of float)
0:?           '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)
0:29          Color: direct index for structure ( temp 4-component vector of float)
0:29            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29            Constant:
0:29              0 (const int)
0:29        move second child to first child ( temp float)
0:?           '@entryPointOutput.Depth' ( out float FragDepth)
0:29          Depth: direct index for structure ( temp float)
0:29            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:29            Constant:
0:29              1 (const int)
0:?   Linker Objects
0:?     'g_sSamp' (layout( binding=0) uniform sampler)
0:?     'g_sSamp2d' ( 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:?     '@entryPointOutput.Depth' ( out float FragDepth)
0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)

// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 135

                              Capability Shader
                              Capability Sampled1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 108 112
                              ExecutionMode 4 OriginUpperLeft
                              ExecutionMode 4 DepthReplacing
                              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_tTex2df4"
                              Name 20  "g_sSamp"
                              Name 33  "txval21"
                              Name 36  "g_tTex2di4"
                              Name 48  "txval22"
                              Name 51  "g_tTex2du4"
                              Name 60  "txval40"
                              Name 63  "g_tTexcdf4"
                              Name 71  "txval41"
                              Name 74  "g_tTexcdi4"
                              Name 81  "txval42"
                              Name 84  "g_tTexcdu4"
                              Name 95  "psout"
                              Name 105  "flattenTemp"
                              Name 108  "@entryPointOutput.Color"
                              Name 112  "@entryPointOutput.Depth"
                              Name 115  "g_sSamp2d"
                              Name 118  "g_tTex1df4a"
                              Name 119  "g_tTex1df4"
                              Name 122  "g_tTex1di4"
                              Name 125  "g_tTex1du4"
                              Name 128  "g_tTex3df4"
                              Name 131  "g_tTex3di4"
                              Name 134  "g_tTex3du4"
                              Decorate 16(g_tTex2df4) DescriptorSet 0
                              Decorate 16(g_tTex2df4) Binding 2
                              Decorate 20(g_sSamp) DescriptorSet 0
                              Decorate 20(g_sSamp) Binding 0
                              Decorate 36(g_tTex2di4) DescriptorSet 0
                              Decorate 36(g_tTex2di4) Binding 3
                              Decorate 51(g_tTex2du4) DescriptorSet 0
                              Decorate 51(g_tTex2du4) Binding 4
                              Decorate 63(g_tTexcdf4) DescriptorSet 0
                              Decorate 63(g_tTexcdf4) Binding 5
                              Decorate 74(g_tTexcdi4) DescriptorSet 0
                              Decorate 74(g_tTexcdi4) Binding 6
                              Decorate 84(g_tTexcdu4) DescriptorSet 0
                              Decorate 84(g_tTexcdu4) Binding 7
                              Decorate 108(@entryPointOutput.Color) Location 0
                              Decorate 112(@entryPointOutput.Depth) BuiltIn FragDepth
                              Decorate 115(g_sSamp2d) DescriptorSet 0
                              Decorate 115(g_sSamp2d) Binding 0
                              Decorate 118(g_tTex1df4a) DescriptorSet 0
                              Decorate 118(g_tTex1df4a) Binding 1
                              Decorate 119(g_tTex1df4) DescriptorSet 0
                              Decorate 119(g_tTex1df4) Binding 0
                              Decorate 122(g_tTex1di4) DescriptorSet 0
                              Decorate 122(g_tTex1di4) Binding 0
                              Decorate 125(g_tTex1du4) DescriptorSet 0
                              Decorate 125(g_tTex1du4) Binding 0
                              Decorate 128(g_tTex3df4) DescriptorSet 0
                              Decorate 128(g_tTex3df4) Binding 0
                              Decorate 131(g_tTex3di4) DescriptorSet 0
                              Decorate 131(g_tTex3di4) Binding 0
                              Decorate 134(g_tTex3du4) DescriptorSet 0
                              Decorate 134(g_tTex3du4) Binding 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 sampled format:Unknown
              15:             TypePointer UniformConstant 14
  16(g_tTex2df4):     15(ptr) Variable UniformConstant
              18:             TypeSampler
              19:             TypePointer UniformConstant 18
     20(g_sSamp):     19(ptr) Variable UniformConstant
              22:             TypeSampledImage 14
              24:             TypeVector 6(float) 2
              25:    6(float) Constant 1036831949
              26:    6(float) Constant 1045220557
              27:   24(fvec2) ConstantComposite 25 26
              28:             TypeInt 32 1
              29:     28(int) Constant 0
              31:             TypeVector 28(int) 4
              32:             TypePointer Function 31(ivec4)
              34:             TypeImage 28(int) 2D sampled format:Unknown
              35:             TypePointer UniformConstant 34
  36(g_tTex2di4):     35(ptr) Variable UniformConstant
              39:             TypeSampledImage 34
              41:    6(float) Constant 1050253722
              42:    6(float) Constant 1053609165
              43:   24(fvec2) ConstantComposite 41 42
              45:             TypeInt 32 0
              46:             TypeVector 45(int) 4
              47:             TypePointer Function 46(ivec4)
              49:             TypeImage 45(int) 2D sampled format:Unknown
              50:             TypePointer UniformConstant 49
  51(g_tTex2du4):     50(ptr) Variable UniformConstant
              54:             TypeSampledImage 49
              56:    6(float) Constant 1056964608
              57:    6(float) Constant 1058642330
              58:   24(fvec2) ConstantComposite 56 57
              61:             TypeImage 6(float) Cube sampled format:Unknown
              62:             TypePointer UniformConstant 61
  63(g_tTexcdf4):     62(ptr) Variable UniformConstant
              66:             TypeSampledImage 61
              68:             TypeVector 6(float) 3
              69:   68(fvec3) ConstantComposite 25 26 41
              72:             TypeImage 28(int) Cube sampled format:Unknown
              73:             TypePointer UniformConstant 72
  74(g_tTexcdi4):     73(ptr) Variable UniformConstant
              77:             TypeSampledImage 72
              79:   68(fvec3) ConstantComposite 42 56 57
              82:             TypeImage 45(int) Cube sampled format:Unknown
              83:             TypePointer UniformConstant 82
  84(g_tTexcdu4):     83(ptr) Variable UniformConstant
              87:             TypeSampledImage 82
              89:    6(float) Constant 1060320051
              90:    6(float) Constant 1061997773
              91:    6(float) Constant 1063675494
              92:   68(fvec3) ConstantComposite 89 90 91
              94:             TypePointer Function 8(PS_OUTPUT)
              96:    6(float) Constant 1065353216
              97:    7(fvec4) ConstantComposite 96 96 96 96
              99:     28(int) Constant 1
             100:             TypePointer Function 6(float)
             107:             TypePointer Output 7(fvec4)
108(@entryPointOutput.Color):    107(ptr) Variable Output
             111:             TypePointer Output 6(float)
112(@entryPointOutput.Depth):    111(ptr) Variable Output
  115(g_sSamp2d):     19(ptr) Variable UniformConstant
             116:             TypeImage 6(float) 1D sampled format:Unknown
             117:             TypePointer UniformConstant 116
118(g_tTex1df4a):    117(ptr) Variable UniformConstant
 119(g_tTex1df4):    117(ptr) Variable UniformConstant
             120:             TypeImage 28(int) 1D sampled format:Unknown
             121:             TypePointer UniformConstant 120
 122(g_tTex1di4):    121(ptr) Variable UniformConstant
             123:             TypeImage 45(int) 1D sampled format:Unknown
             124:             TypePointer UniformConstant 123
 125(g_tTex1du4):    124(ptr) Variable UniformConstant
             126:             TypeImage 6(float) 3D sampled format:Unknown
             127:             TypePointer UniformConstant 126
 128(g_tTex3df4):    127(ptr) Variable UniformConstant
             129:             TypeImage 28(int) 3D sampled format:Unknown
             130:             TypePointer UniformConstant 129
 131(g_tTex3di4):    130(ptr) Variable UniformConstant
             132:             TypeImage 45(int) 3D sampled format:Unknown
             133:             TypePointer UniformConstant 132
 134(g_tTex3du4):    133(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
105(flattenTemp):     94(ptr) Variable Function
             106:8(PS_OUTPUT) FunctionCall 10(@main()
                              Store 105(flattenTemp) 106
             109:     12(ptr) AccessChain 105(flattenTemp) 29
             110:    7(fvec4) Load 109
                              Store 108(@entryPointOutput.Color) 110
             113:    100(ptr) AccessChain 105(flattenTemp) 99
             114:    6(float) Load 113
                              Store 112(@entryPointOutput.Depth) 114
                              Return
                              FunctionEnd
      10(@main():8(PS_OUTPUT) Function None 9
              11:             Label
     13(txval20):     12(ptr) Variable Function
     33(txval21):     32(ptr) Variable Function
     48(txval22):     47(ptr) Variable Function
     60(txval40):     12(ptr) Variable Function
     71(txval41):     32(ptr) Variable Function
     81(txval42):     47(ptr) Variable Function
       95(psout):     94(ptr) Variable Function
              17:          14 Load 16(g_tTex2df4)
              21:          18 Load 20(g_sSamp)
              23:          22 SampledImage 17 21
              30:    7(fvec4) ImageGather 23 27 29
                              Store 13(txval20) 30
              37:          34 Load 36(g_tTex2di4)
              38:          18 Load 20(g_sSamp)
              40:          39 SampledImage 37 38
              44:   31(ivec4) ImageGather 40 43 29
                              Store 33(txval21) 44
              52:          49 Load 51(g_tTex2du4)
              53:          18 Load 20(g_sSamp)
              55:          54 SampledImage 52 53
              59:   46(ivec4) ImageGather 55 58 29
                              Store 48(txval22) 59
              64:          61 Load 63(g_tTexcdf4)
              65:          18 Load 20(g_sSamp)
              67:          66 SampledImage 64 65
              70:    7(fvec4) ImageGather 67 69 29
                              Store 60(txval40) 70
              75:          72 Load 74(g_tTexcdi4)
              76:          18 Load 20(g_sSamp)
              78:          77 SampledImage 75 76
              80:   31(ivec4) ImageGather 78 79 29
                              Store 71(txval41) 80
              85:          82 Load 84(g_tTexcdu4)
              86:          18 Load 20(g_sSamp)
              88:          87 SampledImage 85 86
              93:   46(ivec4) ImageGather 88 92 29
                              Store 81(txval42) 93
              98:     12(ptr) AccessChain 95(psout) 29
                              Store 98 97
             101:    100(ptr) AccessChain 95(psout) 99
                              Store 101 96
             102:8(PS_OUTPUT) Load 95(psout)
                              ReturnValue 102
                              FunctionEnd
