hlsl.buffer.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:30  Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
0:30    Function Parameters: 
0:30      'input' ( in 4-component vector of float)
0:?     Sequence
0:31      Branch: Return with expression
0:31        add ( temp 4-component vector of float)
0:31          add ( temp 4-component vector of float)
0:31            add ( temp 4-component vector of float)
0:31              add ( temp 4-component vector of float)
0:31                'input' ( in 4-component vector of float)
0:31                v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
0:31                  'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
0:31                  Constant:
0:31                    0 (const uint)
0:31              v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
0:31                'anon@1' (layout( row_major std430) buffer block{layout( row_major std430) buffer 4-component vector of float v2})
0:31                Constant:
0:31                  0 (const uint)
0:31            v3: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
0:31              'anon@2' (layout( set=10 binding=2 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
0:31              Constant:
0:31                0 (const uint)
0:31          v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float)
0:31            'anon@3' (layout( binding=8 row_major std430) buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430) buffer float f7, layout( row_major std430) buffer 3X4 matrix of float m1, layout( column_major std430) buffer 3X4 matrix of float m2, layout( row_major std430) buffer 3X4 matrix of float m3, layout( row_major std430) buffer 3X4 matrix of float m4})
0:31            Constant:
0:31              0 (const uint)
0:30  Function Definition: PixelShaderFunction( ( temp void)
0:30    Function Parameters: 
0:?     Sequence
0:30      move second child to first child ( temp 4-component vector of float)
0:?         'input' ( temp 4-component vector of float)
0:?         'input' (layout( location=0) in 4-component vector of float)
0:30      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:30        Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
0:?           'input' ( temp 4-component vector of float)
0:?   Linker Objects
0:?     'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
0:?     'anon@1' (layout( row_major std430) buffer block{layout( row_major std430) buffer 4-component vector of float v2})
0:?     'anon@2' (layout( set=10 binding=2 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
0:?     'anon@3' (layout( binding=8 row_major std430) buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430) buffer float f7, layout( row_major std430) buffer 3X4 matrix of float m1, layout( column_major std430) buffer 3X4 matrix of float m2, layout( row_major std430) buffer 3X4 matrix of float m3, layout( row_major std430) buffer 3X4 matrix of float m4})
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'input' (layout( location=0) in 4-component vector of float)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:30  Function Definition: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
0:30    Function Parameters: 
0:30      'input' ( in 4-component vector of float)
0:?     Sequence
0:31      Branch: Return with expression
0:31        add ( temp 4-component vector of float)
0:31          add ( temp 4-component vector of float)
0:31            add ( temp 4-component vector of float)
0:31              add ( temp 4-component vector of float)
0:31                'input' ( in 4-component vector of float)
0:31                v1: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
0:31                  'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
0:31                  Constant:
0:31                    0 (const uint)
0:31              v2: direct index for structure (layout( row_major std430) buffer 4-component vector of float)
0:31                'anon@1' (layout( row_major std430) buffer block{layout( row_major std430) buffer 4-component vector of float v2})
0:31                Constant:
0:31                  0 (const uint)
0:31            v3: direct index for structure (layout( row_major std140) uniform 4-component vector of float)
0:31              'anon@2' (layout( set=10 binding=2 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
0:31              Constant:
0:31                0 (const uint)
0:31          v4: direct index for structure (layout( row_major std430 offset=16) buffer 4-component vector of float)
0:31            'anon@3' (layout( binding=8 row_major std430) buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430) buffer float f7, layout( row_major std430) buffer 3X4 matrix of float m1, layout( column_major std430) buffer 3X4 matrix of float m2, layout( row_major std430) buffer 3X4 matrix of float m3, layout( row_major std430) buffer 3X4 matrix of float m4})
0:31            Constant:
0:31              0 (const uint)
0:30  Function Definition: PixelShaderFunction( ( temp void)
0:30    Function Parameters: 
0:?     Sequence
0:30      move second child to first child ( temp 4-component vector of float)
0:?         'input' ( temp 4-component vector of float)
0:?         'input' (layout( location=0) in 4-component vector of float)
0:30      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:30        Function Call: @PixelShaderFunction(vf4; ( temp 4-component vector of float)
0:?           'input' ( temp 4-component vector of float)
0:?   Linker Objects
0:?     'anon@0' (layout( row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v1})
0:?     'anon@1' (layout( row_major std430) buffer block{layout( row_major std430) buffer 4-component vector of float v2})
0:?     'anon@2' (layout( set=10 binding=2 row_major std140) uniform block{layout( row_major std140) uniform 4-component vector of float v3, layout( row_major std140 offset=20) uniform int i3})
0:?     'anon@3' (layout( binding=8 row_major std430) buffer block{layout( row_major std430 offset=16) buffer 4-component vector of float v4, layout( row_major std430 offset=48) buffer int i4, layout( row_major std430 offset=60) buffer float f1, layout( row_major std430 offset=64) buffer float f3, layout( row_major std430 offset=68) buffer float f4, layout( row_major std430 offset=72) buffer float f5, layout( row_major std430) buffer float f6, layout( row_major std430) buffer float f7, layout( row_major std430) buffer 3X4 matrix of float m1, layout( column_major std430) buffer 3X4 matrix of float m2, layout( row_major std430) buffer 3X4 matrix of float m3, layout( row_major std430) buffer 3X4 matrix of float m4})
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'input' (layout( location=0) in 4-component vector of float)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "PixelShaderFunction" 46 49
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "PixelShaderFunction"
                              Name 11  "@PixelShaderFunction(vf4;"
                              Name 10  "input"
                              Name 14  ""
                              MemberName 14 0  "v1"
                              Name 16  ""
                              Name 23  ""
                              MemberName 23 0  "v2"
                              Name 25  ""
                              Name 29  "cbufName"
                              MemberName 29(cbufName) 0  "v3"
                              MemberName 29(cbufName) 1  "i3"
                              Name 31  ""
                              Name 36  "tbufName"
                              MemberName 36(tbufName) 0  "v4"
                              MemberName 36(tbufName) 1  "i4"
                              MemberName 36(tbufName) 2  "f1"
                              MemberName 36(tbufName) 3  "f3"
                              MemberName 36(tbufName) 4  "f4"
                              MemberName 36(tbufName) 5  "f5"
                              MemberName 36(tbufName) 6  "f6"
                              MemberName 36(tbufName) 7  "f7"
                              MemberName 36(tbufName) 8  "m1"
                              MemberName 36(tbufName) 9  "m2"
                              MemberName 36(tbufName) 10  "m3"
                              MemberName 36(tbufName) 11  "m4"
                              Name 38  ""
                              Name 44  "input"
                              Name 46  "input"
                              Name 49  "@entryPointOutput"
                              Name 50  "param"
                              MemberDecorate 14 0 Offset 0
                              Decorate 14 Block
                              Decorate 16 DescriptorSet 0
                              MemberDecorate 23 0 Offset 0
                              Decorate 23 BufferBlock
                              Decorate 25 DescriptorSet 0
                              MemberDecorate 29(cbufName) 0 Offset 0
                              MemberDecorate 29(cbufName) 1 Offset 20
                              Decorate 29(cbufName) Block
                              Decorate 31 DescriptorSet 10
                              Decorate 31 Binding 2
                              MemberDecorate 36(tbufName) 0 Offset 16
                              MemberDecorate 36(tbufName) 1 Offset 48
                              MemberDecorate 36(tbufName) 2 Offset 60
                              MemberDecorate 36(tbufName) 3 Offset 64
                              MemberDecorate 36(tbufName) 4 Offset 68
                              MemberDecorate 36(tbufName) 5 Offset 72
                              MemberDecorate 36(tbufName) 6 Offset 76
                              MemberDecorate 36(tbufName) 7 Offset 80
                              MemberDecorate 36(tbufName) 8 RowMajor
                              MemberDecorate 36(tbufName) 8 Offset 96
                              MemberDecorate 36(tbufName) 8 MatrixStride 16
                              MemberDecorate 36(tbufName) 9 ColMajor
                              MemberDecorate 36(tbufName) 9 Offset 160
                              MemberDecorate 36(tbufName) 9 MatrixStride 16
                              MemberDecorate 36(tbufName) 10 RowMajor
                              MemberDecorate 36(tbufName) 10 Offset 208
                              MemberDecorate 36(tbufName) 10 MatrixStride 16
                              MemberDecorate 36(tbufName) 11 RowMajor
                              MemberDecorate 36(tbufName) 11 Offset 272
                              MemberDecorate 36(tbufName) 11 MatrixStride 16
                              Decorate 36(tbufName) BufferBlock
                              Decorate 38 DescriptorSet 0
                              Decorate 38 Binding 8
                              Decorate 46(input) Location 0
                              Decorate 49(@entryPointOutput) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Function 7(fvec4)
               9:             TypeFunction 7(fvec4) 8(ptr)
              14:             TypeStruct 7(fvec4)
              15:             TypePointer Uniform 14(struct)
              16:     15(ptr) Variable Uniform
              17:             TypeInt 32 1
              18:     17(int) Constant 0
              19:             TypePointer Uniform 7(fvec4)
              23:             TypeStruct 7(fvec4)
              24:             TypePointer Uniform 23(struct)
              25:     24(ptr) Variable Uniform
    29(cbufName):             TypeStruct 7(fvec4) 17(int)
              30:             TypePointer Uniform 29(cbufName)
              31:     30(ptr) Variable Uniform
              35:             TypeMatrix 7(fvec4) 3
    36(tbufName):             TypeStruct 7(fvec4) 17(int) 6(float) 6(float) 6(float) 6(float) 6(float) 6(float) 35 35 35 35
              37:             TypePointer Uniform 36(tbufName)
              38:     37(ptr) Variable Uniform
              45:             TypePointer Input 7(fvec4)
       46(input):     45(ptr) Variable Input
              48:             TypePointer Output 7(fvec4)
49(@entryPointOutput):     48(ptr) Variable Output
4(PixelShaderFunction):           2 Function None 3
               5:             Label
       44(input):      8(ptr) Variable Function
       50(param):      8(ptr) Variable Function
              47:    7(fvec4) Load 46(input)
                              Store 44(input) 47
              51:    7(fvec4) Load 44(input)
                              Store 50(param) 51
              52:    7(fvec4) FunctionCall 11(@PixelShaderFunction(vf4;) 50(param)
                              Store 49(@entryPointOutput) 52
                              Return
                              FunctionEnd
11(@PixelShaderFunction(vf4;):    7(fvec4) Function None 9
       10(input):      8(ptr) FunctionParameter
              12:             Label
              13:    7(fvec4) Load 10(input)
              20:     19(ptr) AccessChain 16 18
              21:    7(fvec4) Load 20
              22:    7(fvec4) FAdd 13 21
              26:     19(ptr) AccessChain 25 18
              27:    7(fvec4) Load 26
              28:    7(fvec4) FAdd 22 27
              32:     19(ptr) AccessChain 31 18
              33:    7(fvec4) Load 32
              34:    7(fvec4) FAdd 28 33
              39:     19(ptr) AccessChain 38 18
              40:    7(fvec4) Load 39
              41:    7(fvec4) FAdd 34 40
                              ReturnValue 41
                              FunctionEnd
