hlsl.rw.register.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:11  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
0:11    Function Parameters: 
0:?     Sequence
0:12      Sequence
0:12        move second child to first child ( temp float)
0:12          'r00' ( temp float)
0:12          imageLoad ( temp float)
0:12            'g_tTex1df1' (layout( binding=2 r32f) uniform image1D)
0:12            Constant:
0:12              0 (const int)
0:13      Sequence
0:13        move second child to first child ( temp uint)
0:13          'r01' ( temp uint)
0:13          imageLoad ( temp uint)
0:13            'g_tBuf1du1' (layout( binding=3 r32ui) uniform uimageBuffer)
0:13            Constant:
0:13              0 (const int)
0:16      move second child to first child ( temp 4-component vector of float)
0:16        Color: direct index for structure ( temp 4-component vector of float)
0:16          'psout' ( temp structure{ temp 4-component vector of float Color})
0:16          Constant:
0:16            0 (const int)
0:16        Constant:
0:16          1.000000
0:16          1.000000
0:16          1.000000
0:16          1.000000
0:17      Branch: Return with expression
0:17        'psout' ( temp structure{ temp 4-component vector of float Color})
0:11  Function Definition: main( ( temp void)
0:11    Function Parameters: 
0:?     Sequence
0:11      Sequence
0:11        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:11          Color: direct index for structure ( temp 4-component vector of float)
0:11            Function Call: @main( ( temp structure{ temp 4-component vector of float Color})
0:11            Constant:
0:11              0 (const int)
0:?   Linker Objects
0:?     'g_tTex1df1' (layout( binding=2 r32f) uniform image1D)
0:?     'g_tBuf1du1' (layout( binding=3 r32ui) uniform uimageBuffer)
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:11  Function Definition: @main( ( temp structure{ temp 4-component vector of float Color})
0:11    Function Parameters: 
0:?     Sequence
0:12      Sequence
0:12        move second child to first child ( temp float)
0:12          'r00' ( temp float)
0:12          imageLoad ( temp float)
0:12            'g_tTex1df1' (layout( binding=2 r32f) uniform image1D)
0:12            Constant:
0:12              0 (const int)
0:13      Sequence
0:13        move second child to first child ( temp uint)
0:13          'r01' ( temp uint)
0:13          imageLoad ( temp uint)
0:13            'g_tBuf1du1' (layout( binding=3 r32ui) uniform uimageBuffer)
0:13            Constant:
0:13              0 (const int)
0:16      move second child to first child ( temp 4-component vector of float)
0:16        Color: direct index for structure ( temp 4-component vector of float)
0:16          'psout' ( temp structure{ temp 4-component vector of float Color})
0:16          Constant:
0:16            0 (const int)
0:16        Constant:
0:16          1.000000
0:16          1.000000
0:16          1.000000
0:16          1.000000
0:17      Branch: Return with expression
0:17        'psout' ( temp structure{ temp 4-component vector of float Color})
0:11  Function Definition: main( ( temp void)
0:11    Function Parameters: 
0:?     Sequence
0:11      Sequence
0:11        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:11          Color: direct index for structure ( temp 4-component vector of float)
0:11            Function Call: @main( ( temp structure{ temp 4-component vector of float Color})
0:11            Constant:
0:11              0 (const int)
0:?   Linker Objects
0:?     'g_tTex1df1' (layout( binding=2 r32f) uniform image1D)
0:?     'g_tBuf1du1' (layout( binding=3 r32ui) uniform uimageBuffer)
0:?     '@entryPointOutput.Color' (layout( location=0) out 4-component vector of float)

Validation failed
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 42

                              Capability Shader
                              Capability Image1D
                              Capability ImageBuffer
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 39
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "main"
                              Name 8  "PS_OUTPUT"
                              MemberName 8(PS_OUTPUT) 0  "Color"
                              Name 10  "@main("
                              Name 13  "r00"
                              Name 16  "g_tTex1df1"
                              Name 23  "r01"
                              Name 26  "g_tBuf1du1"
                              Name 30  "psout"
                              Name 39  "@entryPointOutput.Color"
                              Decorate 16(g_tTex1df1) DescriptorSet 0
                              Decorate 16(g_tTex1df1) Binding 2
                              Decorate 26(g_tBuf1du1) DescriptorSet 0
                              Decorate 26(g_tBuf1du1) Binding 3
                              Decorate 39(@entryPointOutput.Color) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
    8(PS_OUTPUT):             TypeStruct 7(fvec4)
               9:             TypeFunction 8(PS_OUTPUT)
              12:             TypePointer Function 6(float)
              14:             TypeImage 6(float) 1D nonsampled format:R32f
              15:             TypePointer UniformConstant 14
  16(g_tTex1df1):     15(ptr) Variable UniformConstant
              18:             TypeInt 32 1
              19:     18(int) Constant 0
              21:             TypeInt 32 0
              22:             TypePointer Function 21(int)
              24:             TypeImage 21(int) Buffer nonsampled format:R32ui
              25:             TypePointer UniformConstant 24
  26(g_tBuf1du1):     25(ptr) Variable UniformConstant
              29:             TypePointer Function 8(PS_OUTPUT)
              31:    6(float) Constant 1065353216
              32:    7(fvec4) ConstantComposite 31 31 31 31
              33:             TypePointer Function 7(fvec4)
              38:             TypePointer Output 7(fvec4)
39(@entryPointOutput.Color):     38(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
              40:8(PS_OUTPUT) FunctionCall 10(@main()
              41:    7(fvec4) CompositeExtract 40 0
                              Store 39(@entryPointOutput.Color) 41
                              Return
                              FunctionEnd
      10(@main():8(PS_OUTPUT) Function None 9
              11:             Label
         13(r00):     12(ptr) Variable Function
         23(r01):     22(ptr) Variable Function
       30(psout):     29(ptr) Variable Function
              17:          14 Load 16(g_tTex1df1)
              20:    6(float) ImageRead 17 19
                              Store 13(r00) 20
              27:          24 Load 26(g_tBuf1du1)
              28:     21(int) ImageRead 27 19
                              Store 23(r01) 28
              34:     33(ptr) AccessChain 30(psout) 19
                              Store 34 32
              35:8(PS_OUTPUT) Load 30(psout)
                              ReturnValue 35
                              FunctionEnd
