hlsl.load.rwtexture.array.dx10.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:40  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40    Function Parameters: 
0:?     Sequence
0:44      imageLoad ( temp 4-component vector of float)
0:44        'g_tTex1df4a' (layout( rgba32f) uniform image1DArray)
0:44        c2: direct index for structure ( uniform 2-component vector of int)
0:44          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:44          Constant:
0:44            1 (const uint)
0:45      imageLoad ( temp 4-component vector of int)
0:45        'g_tTex1di4a' (layout( rgba32i) uniform iimage1DArray)
0:45        c2: direct index for structure ( uniform 2-component vector of int)
0:45          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:45          Constant:
0:45            1 (const uint)
0:46      imageLoad ( temp 4-component vector of uint)
0:46        'g_tTex1du4a' (layout( rgba32ui) uniform uimage1DArray)
0:46        c2: direct index for structure ( uniform 2-component vector of int)
0:46          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:46          Constant:
0:46            1 (const uint)
0:49      imageLoad ( temp 4-component vector of float)
0:49        'g_tTex2df4a' (layout( rgba32f) uniform image2DArray)
0:49        c3: direct index for structure ( uniform 3-component vector of int)
0:49          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:49          Constant:
0:49            2 (const uint)
0:50      imageLoad ( temp 4-component vector of int)
0:50        'g_tTex2di4a' (layout( rgba32i) uniform iimage2DArray)
0:50        c3: direct index for structure ( uniform 3-component vector of int)
0:50          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:50          Constant:
0:50            2 (const uint)
0:51      imageLoad ( temp 4-component vector of uint)
0:51        'g_tTex2du4a' (layout( rgba32ui) uniform uimage2DArray)
0:51        c3: direct index for structure ( uniform 3-component vector of int)
0:51          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:51          Constant:
0:51            2 (const uint)
0:53      move second child to first child ( temp 4-component vector of float)
0:53        Color: direct index for structure ( temp 4-component vector of float)
0:53          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:53          Constant:
0:53            0 (const int)
0:53        Constant:
0:53          1.000000
0:53          1.000000
0:53          1.000000
0:53          1.000000
0:54      move second child to first child ( temp float)
0:54        Depth: direct index for structure ( temp float)
0:54          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:54          Constant:
0:54            1 (const int)
0:54        Constant:
0:54          1.000000
0:56      Branch: Return with expression
0:56        'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40  Function Definition: main( ( temp void)
0:40    Function Parameters: 
0:?     Sequence
0:40      Sequence
0:40        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40        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:40          Color: direct index for structure ( temp 4-component vector of float)
0:40            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40            Constant:
0:40              0 (const int)
0:40        move second child to first child ( temp float)
0:?           '@entryPointOutput.Depth' ( out float FragDepth)
0:40          Depth: direct index for structure ( temp float)
0:40            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40            Constant:
0:40              1 (const int)
0:?   Linker Objects
0:?     'g_sSamp' (layout( binding=0) uniform sampler)
0:?     'g_tTex1df4' (layout( binding=0 rgba32f) uniform image1D)
0:?     'g_tTex1di4' (layout( rgba32i) uniform iimage1D)
0:?     'g_tTex1du4' (layout( rgba32ui) uniform uimage1D)
0:?     'g_tTex2df4' (layout( rgba32f) uniform image2D)
0:?     'g_tTex2di4' (layout( rgba32i) uniform iimage2D)
0:?     'g_tTex2du4' (layout( rgba32ui) uniform uimage2D)
0:?     'g_tTex3df4' (layout( rgba32f) uniform image3D)
0:?     'g_tTex3di4' (layout( rgba32i) uniform iimage3D)
0:?     'g_tTex3du4' (layout( rgba32ui) uniform uimage3D)
0:?     'g_tTex1df4a' (layout( rgba32f) uniform image1DArray)
0:?     'g_tTex1di4a' (layout( rgba32i) uniform iimage1DArray)
0:?     'g_tTex1du4a' (layout( rgba32ui) uniform uimage1DArray)
0:?     'g_tTex2df4a' (layout( rgba32f) uniform image2DArray)
0:?     'g_tTex2di4a' (layout( rgba32i) uniform iimage2DArray)
0:?     'g_tTex2du4a' (layout( rgba32ui) uniform uimage2DArray)
0:?     'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
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
0:? Sequence
0:40  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40    Function Parameters: 
0:?     Sequence
0:44      imageLoad ( temp 4-component vector of float)
0:44        'g_tTex1df4a' (layout( rgba32f) uniform image1DArray)
0:44        c2: direct index for structure ( uniform 2-component vector of int)
0:44          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:44          Constant:
0:44            1 (const uint)
0:45      imageLoad ( temp 4-component vector of int)
0:45        'g_tTex1di4a' (layout( rgba32i) uniform iimage1DArray)
0:45        c2: direct index for structure ( uniform 2-component vector of int)
0:45          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:45          Constant:
0:45            1 (const uint)
0:46      imageLoad ( temp 4-component vector of uint)
0:46        'g_tTex1du4a' (layout( rgba32ui) uniform uimage1DArray)
0:46        c2: direct index for structure ( uniform 2-component vector of int)
0:46          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:46          Constant:
0:46            1 (const uint)
0:49      imageLoad ( temp 4-component vector of float)
0:49        'g_tTex2df4a' (layout( rgba32f) uniform image2DArray)
0:49        c3: direct index for structure ( uniform 3-component vector of int)
0:49          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:49          Constant:
0:49            2 (const uint)
0:50      imageLoad ( temp 4-component vector of int)
0:50        'g_tTex2di4a' (layout( rgba32i) uniform iimage2DArray)
0:50        c3: direct index for structure ( uniform 3-component vector of int)
0:50          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:50          Constant:
0:50            2 (const uint)
0:51      imageLoad ( temp 4-component vector of uint)
0:51        'g_tTex2du4a' (layout( rgba32ui) uniform uimage2DArray)
0:51        c3: direct index for structure ( uniform 3-component vector of int)
0:51          'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
0:51          Constant:
0:51            2 (const uint)
0:53      move second child to first child ( temp 4-component vector of float)
0:53        Color: direct index for structure ( temp 4-component vector of float)
0:53          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:53          Constant:
0:53            0 (const int)
0:53        Constant:
0:53          1.000000
0:53          1.000000
0:53          1.000000
0:53          1.000000
0:54      move second child to first child ( temp float)
0:54        Depth: direct index for structure ( temp float)
0:54          'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:54          Constant:
0:54            1 (const int)
0:54        Constant:
0:54          1.000000
0:56      Branch: Return with expression
0:56        'psout' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40  Function Definition: main( ( temp void)
0:40    Function Parameters: 
0:?     Sequence
0:40      Sequence
0:40        move second child to first child ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40          'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40          Function Call: @main( ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40        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:40          Color: direct index for structure ( temp 4-component vector of float)
0:40            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40            Constant:
0:40              0 (const int)
0:40        move second child to first child ( temp float)
0:?           '@entryPointOutput.Depth' ( out float FragDepth)
0:40          Depth: direct index for structure ( temp float)
0:40            'flattenTemp' ( temp structure{ temp 4-component vector of float Color,  temp float Depth})
0:40            Constant:
0:40              1 (const int)
0:?   Linker Objects
0:?     'g_sSamp' (layout( binding=0) uniform sampler)
0:?     'g_tTex1df4' (layout( binding=0 rgba32f) uniform image1D)
0:?     'g_tTex1di4' (layout( rgba32i) uniform iimage1D)
0:?     'g_tTex1du4' (layout( rgba32ui) uniform uimage1D)
0:?     'g_tTex2df4' (layout( rgba32f) uniform image2D)
0:?     'g_tTex2di4' (layout( rgba32i) uniform iimage2D)
0:?     'g_tTex2du4' (layout( rgba32ui) uniform uimage2D)
0:?     'g_tTex3df4' (layout( rgba32f) uniform image3D)
0:?     'g_tTex3di4' (layout( rgba32i) uniform iimage3D)
0:?     'g_tTex3du4' (layout( rgba32ui) uniform uimage3D)
0:?     'g_tTex1df4a' (layout( rgba32f) uniform image1DArray)
0:?     'g_tTex1di4a' (layout( rgba32i) uniform iimage1DArray)
0:?     'g_tTex1du4a' (layout( rgba32ui) uniform uimage1DArray)
0:?     'g_tTex2df4a' (layout( rgba32f) uniform image2DArray)
0:?     'g_tTex2di4a' (layout( rgba32i) uniform iimage2DArray)
0:?     'g_tTex2du4a' (layout( rgba32ui) uniform uimage2DArray)
0:?     'anon@0' (layout( row_major std140) uniform block{ uniform int c1,  uniform 2-component vector of int c2,  uniform 3-component vector of int c3,  uniform 4-component vector of int c4,  uniform int o1,  uniform 2-component vector of int o2,  uniform 3-component vector of int o3,  uniform 4-component vector of int o4})
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): 80006
// Id's are bound by 119

                              Capability Shader
                              Capability Image1D
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 82 86
                              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 14  "g_tTex1df4a"
                              Name 20  "$Global"
                              MemberName 20($Global) 0  "c1"
                              MemberName 20($Global) 1  "c2"
                              MemberName 20($Global) 2  "c3"
                              MemberName 20($Global) 3  "c4"
                              MemberName 20($Global) 4  "o1"
                              MemberName 20($Global) 5  "o2"
                              MemberName 20($Global) 6  "o3"
                              MemberName 20($Global) 7  "o4"
                              Name 22  ""
                              Name 30  "g_tTex1di4a"
                              Name 38  "g_tTex1du4a"
                              Name 46  "g_tTex2df4a"
                              Name 55  "g_tTex2di4a"
                              Name 62  "g_tTex2du4a"
                              Name 68  "psout"
                              Name 79  "flattenTemp"
                              Name 82  "@entryPointOutput.Color"
                              Name 86  "@entryPointOutput.Depth"
                              Name 91  "g_sSamp"
                              Name 94  "g_tTex1df4"
                              Name 97  "g_tTex1di4"
                              Name 100  "g_tTex1du4"
                              Name 103  "g_tTex2df4"
                              Name 106  "g_tTex2di4"
                              Name 109  "g_tTex2du4"
                              Name 112  "g_tTex3df4"
                              Name 115  "g_tTex3di4"
                              Name 118  "g_tTex3du4"
                              Decorate 14(g_tTex1df4a) DescriptorSet 0
                              MemberDecorate 20($Global) 0 Offset 0
                              MemberDecorate 20($Global) 1 Offset 8
                              MemberDecorate 20($Global) 2 Offset 16
                              MemberDecorate 20($Global) 3 Offset 32
                              MemberDecorate 20($Global) 4 Offset 48
                              MemberDecorate 20($Global) 5 Offset 56
                              MemberDecorate 20($Global) 6 Offset 64
                              MemberDecorate 20($Global) 7 Offset 80
                              Decorate 20($Global) Block
                              Decorate 22 DescriptorSet 0
                              Decorate 30(g_tTex1di4a) DescriptorSet 0
                              Decorate 38(g_tTex1du4a) DescriptorSet 0
                              Decorate 46(g_tTex2df4a) DescriptorSet 0
                              Decorate 55(g_tTex2di4a) DescriptorSet 0
                              Decorate 62(g_tTex2du4a) DescriptorSet 0
                              Decorate 82(@entryPointOutput.Color) Location 0
                              Decorate 86(@entryPointOutput.Depth) BuiltIn FragDepth
                              Decorate 91(g_sSamp) DescriptorSet 0
                              Decorate 91(g_sSamp) Binding 0
                              Decorate 94(g_tTex1df4) DescriptorSet 0
                              Decorate 94(g_tTex1df4) Binding 0
                              Decorate 97(g_tTex1di4) DescriptorSet 0
                              Decorate 100(g_tTex1du4) DescriptorSet 0
                              Decorate 103(g_tTex2df4) DescriptorSet 0
                              Decorate 106(g_tTex2di4) DescriptorSet 0
                              Decorate 109(g_tTex2du4) DescriptorSet 0
                              Decorate 112(g_tTex3df4) DescriptorSet 0
                              Decorate 115(g_tTex3di4) DescriptorSet 0
                              Decorate 118(g_tTex3du4) 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:             TypeImage 6(float) 1D array nonsampled format:Rgba32f
              13:             TypePointer UniformConstant 12
 14(g_tTex1df4a):     13(ptr) Variable UniformConstant
              16:             TypeInt 32 1
              17:             TypeVector 16(int) 2
              18:             TypeVector 16(int) 3
              19:             TypeVector 16(int) 4
     20($Global):             TypeStruct 16(int) 17(ivec2) 18(ivec3) 19(ivec4) 16(int) 17(ivec2) 18(ivec3) 19(ivec4)
              21:             TypePointer Uniform 20($Global)
              22:     21(ptr) Variable Uniform
              23:     16(int) Constant 1
              24:             TypePointer Uniform 17(ivec2)
              28:             TypeImage 16(int) 1D array nonsampled format:Rgba32i
              29:             TypePointer UniformConstant 28
 30(g_tTex1di4a):     29(ptr) Variable UniformConstant
              35:             TypeInt 32 0
              36:             TypeImage 35(int) 1D array nonsampled format:Rgba32ui
              37:             TypePointer UniformConstant 36
 38(g_tTex1du4a):     37(ptr) Variable UniformConstant
              42:             TypeVector 35(int) 4
              44:             TypeImage 6(float) 2D array nonsampled format:Rgba32f
              45:             TypePointer UniformConstant 44
 46(g_tTex2df4a):     45(ptr) Variable UniformConstant
              48:     16(int) Constant 2
              49:             TypePointer Uniform 18(ivec3)
              53:             TypeImage 16(int) 2D array nonsampled format:Rgba32i
              54:             TypePointer UniformConstant 53
 55(g_tTex2di4a):     54(ptr) Variable UniformConstant
              60:             TypeImage 35(int) 2D array nonsampled format:Rgba32ui
              61:             TypePointer UniformConstant 60
 62(g_tTex2du4a):     61(ptr) Variable UniformConstant
              67:             TypePointer Function 8(PS_OUTPUT)
              69:     16(int) Constant 0
              70:    6(float) Constant 1065353216
              71:    7(fvec4) ConstantComposite 70 70 70 70
              72:             TypePointer Function 7(fvec4)
              74:             TypePointer Function 6(float)
              81:             TypePointer Output 7(fvec4)
82(@entryPointOutput.Color):     81(ptr) Variable Output
              85:             TypePointer Output 6(float)
86(@entryPointOutput.Depth):     85(ptr) Variable Output
              89:             TypeSampler
              90:             TypePointer UniformConstant 89
     91(g_sSamp):     90(ptr) Variable UniformConstant
              92:             TypeImage 6(float) 1D nonsampled format:Rgba32f
              93:             TypePointer UniformConstant 92
  94(g_tTex1df4):     93(ptr) Variable UniformConstant
              95:             TypeImage 16(int) 1D nonsampled format:Rgba32i
              96:             TypePointer UniformConstant 95
  97(g_tTex1di4):     96(ptr) Variable UniformConstant
              98:             TypeImage 35(int) 1D nonsampled format:Rgba32ui
              99:             TypePointer UniformConstant 98
 100(g_tTex1du4):     99(ptr) Variable UniformConstant
             101:             TypeImage 6(float) 2D nonsampled format:Rgba32f
             102:             TypePointer UniformConstant 101
 103(g_tTex2df4):    102(ptr) Variable UniformConstant
             104:             TypeImage 16(int) 2D nonsampled format:Rgba32i
             105:             TypePointer UniformConstant 104
 106(g_tTex2di4):    105(ptr) Variable UniformConstant
             107:             TypeImage 35(int) 2D nonsampled format:Rgba32ui
             108:             TypePointer UniformConstant 107
 109(g_tTex2du4):    108(ptr) Variable UniformConstant
             110:             TypeImage 6(float) 3D nonsampled format:Rgba32f
             111:             TypePointer UniformConstant 110
 112(g_tTex3df4):    111(ptr) Variable UniformConstant
             113:             TypeImage 16(int) 3D nonsampled format:Rgba32i
             114:             TypePointer UniformConstant 113
 115(g_tTex3di4):    114(ptr) Variable UniformConstant
             116:             TypeImage 35(int) 3D nonsampled format:Rgba32ui
             117:             TypePointer UniformConstant 116
 118(g_tTex3du4):    117(ptr) Variable UniformConstant
         4(main):           2 Function None 3
               5:             Label
 79(flattenTemp):     67(ptr) Variable Function
              80:8(PS_OUTPUT) FunctionCall 10(@main()
                              Store 79(flattenTemp) 80
              83:     72(ptr) AccessChain 79(flattenTemp) 69
              84:    7(fvec4) Load 83
                              Store 82(@entryPointOutput.Color) 84
              87:     74(ptr) AccessChain 79(flattenTemp) 23
              88:    6(float) Load 87
                              Store 86(@entryPointOutput.Depth) 88
                              Return
                              FunctionEnd
      10(@main():8(PS_OUTPUT) Function None 9
              11:             Label
       68(psout):     67(ptr) Variable Function
              15:          12 Load 14(g_tTex1df4a)
              25:     24(ptr) AccessChain 22 23
              26:   17(ivec2) Load 25
              27:    7(fvec4) ImageRead 15 26
              31:          28 Load 30(g_tTex1di4a)
              32:     24(ptr) AccessChain 22 23
              33:   17(ivec2) Load 32
              34:   19(ivec4) ImageRead 31 33
              39:          36 Load 38(g_tTex1du4a)
              40:     24(ptr) AccessChain 22 23
              41:   17(ivec2) Load 40
              43:   42(ivec4) ImageRead 39 41
              47:          44 Load 46(g_tTex2df4a)
              50:     49(ptr) AccessChain 22 48
              51:   18(ivec3) Load 50
              52:    7(fvec4) ImageRead 47 51
              56:          53 Load 55(g_tTex2di4a)
              57:     49(ptr) AccessChain 22 48
              58:   18(ivec3) Load 57
              59:   19(ivec4) ImageRead 56 58
              63:          60 Load 62(g_tTex2du4a)
              64:     49(ptr) AccessChain 22 48
              65:   18(ivec3) Load 64
              66:   42(ivec4) ImageRead 63 65
              73:     72(ptr) AccessChain 68(psout) 69
                              Store 73 71
              75:     74(ptr) AccessChain 68(psout) 23
                              Store 75 70
              76:8(PS_OUTPUT) Load 68(psout)
                              ReturnValue 76
                              FunctionEnd
