hlsl.imagefetch-subvec4.comp
Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:6  Function Definition: @main(vu3; ( temp void)
0:6    Function Parameters: 
0:6      'tid' ( in 3-component vector of uint)
0:?     Sequence
0:7      Sequence
0:7        move second child to first child ( temp uint)
0:7          'storeTemp' ( temp uint)
0:7          Convert int to uint ( temp uint)
0:7            textureFetch ( temp int)
0:7              'IN' (layout( binding=0) uniform itexture3D)
0:7              'tid' ( in 3-component vector of uint)
0:7              Constant:
0:7                0 (const int)
0:7        imageStore ( temp void)
0:7          'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:7          'tid' ( in 3-component vector of uint)
0:7          'storeTemp' ( temp uint)
0:7        'storeTemp' ( temp uint)
0:6  Function Definition: main( ( temp void)
0:6    Function Parameters: 
0:?     Sequence
0:6      move second child to first child ( temp 3-component vector of uint)
0:?         'tid' ( temp 3-component vector of uint)
0:?         'tid' ( in 3-component vector of uint GlobalInvocationID)
0:6      Function Call: @main(vu3; ( temp void)
0:?         'tid' ( temp 3-component vector of uint)
0:?   Linker Objects
0:?     'IN' (layout( binding=0) uniform itexture3D)
0:?     'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:?     'tid' ( in 3-component vector of uint GlobalInvocationID)


Linked compute stage:


Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:6  Function Definition: @main(vu3; ( temp void)
0:6    Function Parameters: 
0:6      'tid' ( in 3-component vector of uint)
0:?     Sequence
0:7      Sequence
0:7        move second child to first child ( temp uint)
0:7          'storeTemp' ( temp uint)
0:7          Convert int to uint ( temp uint)
0:7            textureFetch ( temp int)
0:7              'IN' (layout( binding=0) uniform itexture3D)
0:7              'tid' ( in 3-component vector of uint)
0:7              Constant:
0:7                0 (const int)
0:7        imageStore ( temp void)
0:7          'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:7          'tid' ( in 3-component vector of uint)
0:7          'storeTemp' ( temp uint)
0:7        'storeTemp' ( temp uint)
0:6  Function Definition: main( ( temp void)
0:6    Function Parameters: 
0:?     Sequence
0:6      move second child to first child ( temp 3-component vector of uint)
0:?         'tid' ( temp 3-component vector of uint)
0:?         'tid' ( in 3-component vector of uint GlobalInvocationID)
0:6      Function Call: @main(vu3; ( temp void)
0:?         'tid' ( temp 3-component vector of uint)
0:?   Linker Objects
0:?     'IN' (layout( binding=0) uniform itexture3D)
0:?     'OUT' (layout( binding=1 r32ui) uniform uimage3D)
0:?     'tid' ( in 3-component vector of uint GlobalInvocationID)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint GLCompute 4  "main" 34
                              ExecutionMode 4 LocalSize 8 8 8
                              Source HLSL 500
                              Name 4  "main"
                              Name 11  "@main(vu3;"
                              Name 10  "tid"
                              Name 14  "storeTemp"
                              Name 18  "IN"
                              Name 28  "OUT"
                              Name 32  "tid"
                              Name 34  "tid"
                              Name 36  "param"
                              Decorate 18(IN) DescriptorSet 0
                              Decorate 18(IN) Binding 0
                              Decorate 28(OUT) DescriptorSet 0
                              Decorate 28(OUT) Binding 1
                              Decorate 34(tid) BuiltIn GlobalInvocationId
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 0
               7:             TypeVector 6(int) 3
               8:             TypePointer Function 7(ivec3)
               9:             TypeFunction 2 8(ptr)
              13:             TypePointer Function 6(int)
              15:             TypeInt 32 1
              16:             TypeImage 15(int) 3D sampled format:Unknown
              17:             TypePointer UniformConstant 16
          18(IN):     17(ptr) Variable UniformConstant
              21:     15(int) Constant 0
              22:             TypeVector 15(int) 4
              26:             TypeImage 6(int) 3D nonsampled format:R32ui
              27:             TypePointer UniformConstant 26
         28(OUT):     27(ptr) Variable UniformConstant
              33:             TypePointer Input 7(ivec3)
         34(tid):     33(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
         32(tid):      8(ptr) Variable Function
       36(param):      8(ptr) Variable Function
              35:    7(ivec3) Load 34(tid)
                              Store 32(tid) 35
              37:    7(ivec3) Load 32(tid)
                              Store 36(param) 37
              38:           2 FunctionCall 11(@main(vu3;) 36(param)
                              Return
                              FunctionEnd
  11(@main(vu3;):           2 Function None 9
         10(tid):      8(ptr) FunctionParameter
              12:             Label
   14(storeTemp):     13(ptr) Variable Function
              19:          16 Load 18(IN)
              20:    7(ivec3) Load 10(tid)
              23:   22(ivec4) ImageFetch 19 20 Lod 21
              24:     15(int) CompositeExtract 23 0
              25:      6(int) Bitcast 24
                              Store 14(storeTemp) 25
              29:          26 Load 28(OUT)
              30:    7(ivec3) Load 10(tid)
              31:      6(int) Load 14(storeTemp)
                              ImageWrite 29 30 31
                              Return
                              FunctionEnd