hlsl.imageload-subvec4.comp
Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:17  Function Definition: @main(vu3; ( temp void)
0:17    Function Parameters: 
0:17      'tid' ( in 3-component vector of uint)
0:?     Sequence
0:18      Sequence
0:18        move second child to first child ( temp float)
0:18          'f' ( temp float)
0:18          Constant:
0:18            0.000000
0:19      add second child into first child ( temp float)
0:19        'f' ( temp float)
0:19        imageLoad ( temp float)
0:19          'i1D' (layout( binding=0 r32f) uniform image1D)
0:19          direct index ( temp uint)
0:19            'tid' ( in 3-component vector of uint)
0:19            Constant:
0:19              0 (const int)
0:20      add second child into first child ( temp float)
0:20        'f' ( temp float)
0:20        imageLoad ( temp float)
0:20          'i2D' (layout( binding=1 r32f) uniform image2D)
0:20          vector swizzle ( temp 2-component vector of uint)
0:20            'tid' ( in 3-component vector of uint)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:21      add second child into first child ( temp float)
0:21        'f' ( temp float)
0:21        imageLoad ( temp float)
0:21          'i3D' (layout( binding=2 r32f) uniform image3D)
0:21          'tid' ( in 3-component vector of uint)
0:22      add second child into first child ( temp float)
0:22        'f' ( temp float)
0:22        imageLoad ( temp float)
0:22          'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:22          vector swizzle ( temp 2-component vector of uint)
0:22            'tid' ( in 3-component vector of uint)
0:22            Sequence
0:22              Constant:
0:22                0 (const int)
0:22              Constant:
0:22                1 (const int)
0:23      add second child into first child ( temp float)
0:23        'f' ( temp float)
0:23        imageLoad ( temp float)
0:23          'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:23          'tid' ( in 3-component vector of uint)
0:25      Sequence
0:25        move second child to first child ( temp int)
0:25          'i' ( temp int)
0:25          Constant:
0:25            0 (const int)
0:26      add second child into first child ( temp int)
0:26        'i' ( temp int)
0:26        imageLoad ( temp int)
0:26          'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:26          direct index ( temp uint)
0:26            'tid' ( in 3-component vector of uint)
0:26            Constant:
0:26              0 (const int)
0:27      add second child into first child ( temp int)
0:27        'i' ( temp int)
0:27        imageLoad ( temp int)
0:27          'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:27          vector swizzle ( temp 2-component vector of uint)
0:27            'tid' ( in 3-component vector of uint)
0:27            Sequence
0:27              Constant:
0:27                0 (const int)
0:27              Constant:
0:27                1 (const int)
0:28      add second child into first child ( temp int)
0:28        'i' ( temp int)
0:28        imageLoad ( temp int)
0:28          'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:28          'tid' ( in 3-component vector of uint)
0:29      add second child into first child ( temp int)
0:29        'i' ( temp int)
0:29        imageLoad ( temp int)
0:29          'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:29          vector swizzle ( temp 2-component vector of uint)
0:29            'tid' ( in 3-component vector of uint)
0:29            Sequence
0:29              Constant:
0:29                0 (const int)
0:29              Constant:
0:29                1 (const int)
0:30      add second child into first child ( temp int)
0:30        'i' ( temp int)
0:30        imageLoad ( temp int)
0:30          'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:30          'tid' ( in 3-component vector of uint)
0:32      Sequence
0:32        move second child to first child ( temp float)
0:32          'storeTemp' ( temp float)
0:32          add ( temp float)
0:32            'f' ( temp float)
0:32            Convert int to float ( temp float)
0:32              'i' ( temp int)
0:32        imageStore ( temp void)
0:32          'OUT' (layout( binding=10 r32f) uniform image3D)
0:32          'tid' ( in 3-component vector of uint)
0:32          'storeTemp' ( temp float)
0:32        'storeTemp' ( temp float)
0:17  Function Definition: main( ( temp void)
0:17    Function Parameters: 
0:?     Sequence
0:17      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:17      Function Call: @main(vu3; ( temp void)
0:?         'tid' ( temp 3-component vector of uint)
0:?   Linker Objects
0:?     'i1D' (layout( binding=0 r32f) uniform image1D)
0:?     'i2D' (layout( binding=1 r32f) uniform image2D)
0:?     'i3D' (layout( binding=2 r32f) uniform image3D)
0:?     'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:?     'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:?     'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:?     'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:?     'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:?     'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:?     'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:?     'OUT' (layout( binding=10 r32f) uniform image3D)
0:?     'tid' ( in 3-component vector of uint GlobalInvocationID)


Linked compute stage:


Shader version: 500
local_size = (8, 8, 8)
0:? Sequence
0:17  Function Definition: @main(vu3; ( temp void)
0:17    Function Parameters: 
0:17      'tid' ( in 3-component vector of uint)
0:?     Sequence
0:18      Sequence
0:18        move second child to first child ( temp float)
0:18          'f' ( temp float)
0:18          Constant:
0:18            0.000000
0:19      add second child into first child ( temp float)
0:19        'f' ( temp float)
0:19        imageLoad ( temp float)
0:19          'i1D' (layout( binding=0 r32f) uniform image1D)
0:19          direct index ( temp uint)
0:19            'tid' ( in 3-component vector of uint)
0:19            Constant:
0:19              0 (const int)
0:20      add second child into first child ( temp float)
0:20        'f' ( temp float)
0:20        imageLoad ( temp float)
0:20          'i2D' (layout( binding=1 r32f) uniform image2D)
0:20          vector swizzle ( temp 2-component vector of uint)
0:20            'tid' ( in 3-component vector of uint)
0:20            Sequence
0:20              Constant:
0:20                0 (const int)
0:20              Constant:
0:20                1 (const int)
0:21      add second child into first child ( temp float)
0:21        'f' ( temp float)
0:21        imageLoad ( temp float)
0:21          'i3D' (layout( binding=2 r32f) uniform image3D)
0:21          'tid' ( in 3-component vector of uint)
0:22      add second child into first child ( temp float)
0:22        'f' ( temp float)
0:22        imageLoad ( temp float)
0:22          'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:22          vector swizzle ( temp 2-component vector of uint)
0:22            'tid' ( in 3-component vector of uint)
0:22            Sequence
0:22              Constant:
0:22                0 (const int)
0:22              Constant:
0:22                1 (const int)
0:23      add second child into first child ( temp float)
0:23        'f' ( temp float)
0:23        imageLoad ( temp float)
0:23          'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:23          'tid' ( in 3-component vector of uint)
0:25      Sequence
0:25        move second child to first child ( temp int)
0:25          'i' ( temp int)
0:25          Constant:
0:25            0 (const int)
0:26      add second child into first child ( temp int)
0:26        'i' ( temp int)
0:26        imageLoad ( temp int)
0:26          'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:26          direct index ( temp uint)
0:26            'tid' ( in 3-component vector of uint)
0:26            Constant:
0:26              0 (const int)
0:27      add second child into first child ( temp int)
0:27        'i' ( temp int)
0:27        imageLoad ( temp int)
0:27          'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:27          vector swizzle ( temp 2-component vector of uint)
0:27            'tid' ( in 3-component vector of uint)
0:27            Sequence
0:27              Constant:
0:27                0 (const int)
0:27              Constant:
0:27                1 (const int)
0:28      add second child into first child ( temp int)
0:28        'i' ( temp int)
0:28        imageLoad ( temp int)
0:28          'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:28          'tid' ( in 3-component vector of uint)
0:29      add second child into first child ( temp int)
0:29        'i' ( temp int)
0:29        imageLoad ( temp int)
0:29          'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:29          vector swizzle ( temp 2-component vector of uint)
0:29            'tid' ( in 3-component vector of uint)
0:29            Sequence
0:29              Constant:
0:29                0 (const int)
0:29              Constant:
0:29                1 (const int)
0:30      add second child into first child ( temp int)
0:30        'i' ( temp int)
0:30        imageLoad ( temp int)
0:30          'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:30          'tid' ( in 3-component vector of uint)
0:32      Sequence
0:32        move second child to first child ( temp float)
0:32          'storeTemp' ( temp float)
0:32          add ( temp float)
0:32            'f' ( temp float)
0:32            Convert int to float ( temp float)
0:32              'i' ( temp int)
0:32        imageStore ( temp void)
0:32          'OUT' (layout( binding=10 r32f) uniform image3D)
0:32          'tid' ( in 3-component vector of uint)
0:32          'storeTemp' ( temp float)
0:32        'storeTemp' ( temp float)
0:17  Function Definition: main( ( temp void)
0:17    Function Parameters: 
0:?     Sequence
0:17      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:17      Function Call: @main(vu3; ( temp void)
0:?         'tid' ( temp 3-component vector of uint)
0:?   Linker Objects
0:?     'i1D' (layout( binding=0 r32f) uniform image1D)
0:?     'i2D' (layout( binding=1 r32f) uniform image2D)
0:?     'i3D' (layout( binding=2 r32f) uniform image3D)
0:?     'i1DArray' (layout( binding=3 r32f) uniform image1DArray)
0:?     'i2DArray' (layout( binding=4 r32f) uniform image2DArray)
0:?     'ii1D' (layout( binding=5 r32i) uniform iimage1D)
0:?     'ii2D' (layout( binding=6 r32i) uniform iimage2D)
0:?     'ii3D' (layout( binding=7 r32i) uniform iimage3D)
0:?     'ii1DArray' (layout( binding=8 r32i) uniform iimage1DArray)
0:?     'ii2DArray' (layout( binding=9 r32i) uniform iimage2DArray)
0:?     'OUT' (layout( binding=10 r32f) uniform image3D)
0:?     'tid' ( in 3-component vector of uint GlobalInvocationID)

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

                              Capability Shader
                              Capability Image1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint GLCompute 4  "main" 133
                              ExecutionMode 4 LocalSize 8 8 8
                              Source HLSL 500
                              Name 4  "main"
                              Name 11  "@main(vu3;"
                              Name 10  "tid"
                              Name 15  "f"
                              Name 19  "i1D"
                              Name 32  "i2D"
                              Name 43  "i3D"
                              Name 52  "i1DArray"
                              Name 62  "i2DArray"
                              Name 71  "i"
                              Name 75  "ii1D"
                              Name 86  "ii2D"
                              Name 96  "ii3D"
                              Name 105  "ii1DArray"
                              Name 115  "ii2DArray"
                              Name 122  "storeTemp"
                              Name 127  "OUT"
                              Name 131  "tid"
                              Name 133  "tid"
                              Name 135  "param"
                              Decorate 19(i1D) DescriptorSet 0
                              Decorate 19(i1D) Binding 0
                              Decorate 32(i2D) DescriptorSet 0
                              Decorate 32(i2D) Binding 1
                              Decorate 43(i3D) DescriptorSet 0
                              Decorate 43(i3D) Binding 2
                              Decorate 52(i1DArray) DescriptorSet 0
                              Decorate 52(i1DArray) Binding 3
                              Decorate 62(i2DArray) DescriptorSet 0
                              Decorate 62(i2DArray) Binding 4
                              Decorate 75(ii1D) DescriptorSet 0
                              Decorate 75(ii1D) Binding 5
                              Decorate 86(ii2D) DescriptorSet 0
                              Decorate 86(ii2D) Binding 6
                              Decorate 96(ii3D) DescriptorSet 0
                              Decorate 96(ii3D) Binding 7
                              Decorate 105(ii1DArray) DescriptorSet 0
                              Decorate 105(ii1DArray) Binding 8
                              Decorate 115(ii2DArray) DescriptorSet 0
                              Decorate 115(ii2DArray) Binding 9
                              Decorate 127(OUT) DescriptorSet 0
                              Decorate 127(OUT) Binding 10
                              Decorate 133(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:             TypeFloat 32
              14:             TypePointer Function 13(float)
              16:   13(float) Constant 0
              17:             TypeImage 13(float) 1D nonsampled format:R32f
              18:             TypePointer UniformConstant 17
         19(i1D):     18(ptr) Variable UniformConstant
              21:      6(int) Constant 0
              22:             TypePointer Function 6(int)
              25:             TypeVector 13(float) 4
              30:             TypeImage 13(float) 2D nonsampled format:R32f
              31:             TypePointer UniformConstant 30
         32(i2D):     31(ptr) Variable UniformConstant
              34:             TypeVector 6(int) 2
              41:             TypeImage 13(float) 3D nonsampled format:R32f
              42:             TypePointer UniformConstant 41
         43(i3D):     42(ptr) Variable UniformConstant
              50:             TypeImage 13(float) 1D array nonsampled format:R32f
              51:             TypePointer UniformConstant 50
    52(i1DArray):     51(ptr) Variable UniformConstant
              60:             TypeImage 13(float) 2D array nonsampled format:R32f
              61:             TypePointer UniformConstant 60
    62(i2DArray):     61(ptr) Variable UniformConstant
              69:             TypeInt 32 1
              70:             TypePointer Function 69(int)
              72:     69(int) Constant 0
              73:             TypeImage 69(int) 1D nonsampled format:R32i
              74:             TypePointer UniformConstant 73
        75(ii1D):     74(ptr) Variable UniformConstant
              79:             TypeVector 69(int) 4
              84:             TypeImage 69(int) 2D nonsampled format:R32i
              85:             TypePointer UniformConstant 84
        86(ii2D):     85(ptr) Variable UniformConstant
              94:             TypeImage 69(int) 3D nonsampled format:R32i
              95:             TypePointer UniformConstant 94
        96(ii3D):     95(ptr) Variable UniformConstant
             103:             TypeImage 69(int) 1D array nonsampled format:R32i
             104:             TypePointer UniformConstant 103
  105(ii1DArray):    104(ptr) Variable UniformConstant
             113:             TypeImage 69(int) 2D array nonsampled format:R32i
             114:             TypePointer UniformConstant 113
  115(ii2DArray):    114(ptr) Variable UniformConstant
        127(OUT):     42(ptr) Variable UniformConstant
             132:             TypePointer Input 7(ivec3)
        133(tid):    132(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
        131(tid):      8(ptr) Variable Function
      135(param):      8(ptr) Variable Function
             134:    7(ivec3) Load 133(tid)
                              Store 131(tid) 134
             136:    7(ivec3) Load 131(tid)
                              Store 135(param) 136
             137:           2 FunctionCall 11(@main(vu3;) 135(param)
                              Return
                              FunctionEnd
  11(@main(vu3;):           2 Function None 9
         10(tid):      8(ptr) FunctionParameter
              12:             Label
           15(f):     14(ptr) Variable Function
           71(i):     70(ptr) Variable Function
  122(storeTemp):     14(ptr) Variable Function
                              Store 15(f) 16
              20:          17 Load 19(i1D)
              23:     22(ptr) AccessChain 10(tid) 21
              24:      6(int) Load 23
              26:   25(fvec4) ImageRead 20 24
              27:   13(float) CompositeExtract 26 0
              28:   13(float) Load 15(f)
              29:   13(float) FAdd 28 27
                              Store 15(f) 29
              33:          30 Load 32(i2D)
              35:    7(ivec3) Load 10(tid)
              36:   34(ivec2) VectorShuffle 35 35 0 1
              37:   25(fvec4) ImageRead 33 36
              38:   13(float) CompositeExtract 37 0
              39:   13(float) Load 15(f)
              40:   13(float) FAdd 39 38
                              Store 15(f) 40
              44:          41 Load 43(i3D)
              45:    7(ivec3) Load 10(tid)
              46:   25(fvec4) ImageRead 44 45
              47:   13(float) CompositeExtract 46 0
              48:   13(float) Load 15(f)
              49:   13(float) FAdd 48 47
                              Store 15(f) 49
              53:          50 Load 52(i1DArray)
              54:    7(ivec3) Load 10(tid)
              55:   34(ivec2) VectorShuffle 54 54 0 1
              56:   25(fvec4) ImageRead 53 55
              57:   13(float) CompositeExtract 56 0
              58:   13(float) Load 15(f)
              59:   13(float) FAdd 58 57
                              Store 15(f) 59
              63:          60 Load 62(i2DArray)
              64:    7(ivec3) Load 10(tid)
              65:   25(fvec4) ImageRead 63 64
              66:   13(float) CompositeExtract 65 0
              67:   13(float) Load 15(f)
              68:   13(float) FAdd 67 66
                              Store 15(f) 68
                              Store 71(i) 72
              76:          73 Load 75(ii1D)
              77:     22(ptr) AccessChain 10(tid) 21
              78:      6(int) Load 77
              80:   79(ivec4) ImageRead 76 78
              81:     69(int) CompositeExtract 80 0
              82:     69(int) Load 71(i)
              83:     69(int) IAdd 82 81
                              Store 71(i) 83
              87:          84 Load 86(ii2D)
              88:    7(ivec3) Load 10(tid)
              89:   34(ivec2) VectorShuffle 88 88 0 1
              90:   79(ivec4) ImageRead 87 89
              91:     69(int) CompositeExtract 90 0
              92:     69(int) Load 71(i)
              93:     69(int) IAdd 92 91
                              Store 71(i) 93
              97:          94 Load 96(ii3D)
              98:    7(ivec3) Load 10(tid)
              99:   79(ivec4) ImageRead 97 98
             100:     69(int) CompositeExtract 99 0
             101:     69(int) Load 71(i)
             102:     69(int) IAdd 101 100
                              Store 71(i) 102
             106:         103 Load 105(ii1DArray)
             107:    7(ivec3) Load 10(tid)
             108:   34(ivec2) VectorShuffle 107 107 0 1
             109:   79(ivec4) ImageRead 106 108
             110:     69(int) CompositeExtract 109 0
             111:     69(int) Load 71(i)
             112:     69(int) IAdd 111 110
                              Store 71(i) 112
             116:         113 Load 115(ii2DArray)
             117:    7(ivec3) Load 10(tid)
             118:   79(ivec4) ImageRead 116 117
             119:     69(int) CompositeExtract 118 0
             120:     69(int) Load 71(i)
             121:     69(int) IAdd 120 119
                              Store 71(i) 121
             123:   13(float) Load 15(f)
             124:     69(int) Load 71(i)
             125:   13(float) ConvertSToF 124
             126:   13(float) FAdd 123 125
                              Store 122(storeTemp) 126
             128:          41 Load 127(OUT)
             129:    7(ivec3) Load 10(tid)
             130:   13(float) Load 122(storeTemp)
                              ImageWrite 128 129 130
                              Return
                              FunctionEnd
