hlsl.array.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:7  Sequence
0:7    move second child to first child ( temp 4-component vector of float)
0:7      'C' ( global 4-component vector of float)
0:7      Constant:
0:7        1.000000
0:7        2.000000
0:7        3.000000
0:7        4.000000
0:11  Sequence
0:11    move second child to first child ( temp 2-element array of 4-component vector of float)
0:11      'c2' ( global 2-element array of 4-component vector of float)
0:11      Construct vec4 ( temp 2-element array of 4-component vector of float)
0:11        'C' ( global 4-component vector of float)
0:11        Constant:
0:11          1.000000
0:11          2.000000
0:11          3.000000
0:11          4.000000
0:14  Function Definition: @PixelShaderFunction(i1;vf4[3]; ( temp 4-component vector of float)
0:14    Function Parameters: 
0:14      'i' ( in int)
0:14      'input' ( in 3-element array of 4-component vector of float)
0:?     Sequence
0:15      Sequence
0:15        move second child to first child ( temp 10-element array of 4-component vector of float)
0:15          'b' ( temp 10-element array of 4-component vector of float)
0:15          Construct vec4 ( temp 10-element array of 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:16      Sequence
0:16        move second child to first child ( temp 4-component vector of float)
0:16          'tmp' ( temp 4-component vector of float)
0:16          add ( temp 4-component vector of float)
0:16            add ( temp 4-component vector of float)
0:16              add ( temp 4-component vector of float)
0:16                add ( temp 4-component vector of float)
0:16                  'C' ( global 4-component vector of float)
0:16                  direct index ( temp 4-component vector of float)
0:16                    a1: direct index for structure ( uniform 1-element array of 4-component vector of float)
0:16                      'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:16                      Constant:
0:16                        2 (const uint)
0:16                    Constant:
0:16                      0 (const int)
0:16                Constant:
0:16                  1.000000
0:16                  2.000000
0:16                  3.000000
0:16                  4.000000
0:16              indirect index ( temp 4-component vector of float)
0:16                a2: direct index for structure ( uniform 2-element array of 4-component vector of float)
0:16                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:16                  Constant:
0:16                    3 (const uint)
0:16                'i' ( in int)
0:16            indirect index ( temp 4-component vector of float)
0:16              'c2' ( global 2-element array of 4-component vector of float)
0:16              'i' ( in int)
0:17      Branch: Return with expression
0:17        add ( temp 4-component vector of float)
0:17          add ( temp 4-component vector of float)
0:17            add ( temp 4-component vector of float)
0:17              add ( temp 4-component vector of float)
0:17                add ( temp 4-component vector of float)
0:17                  add ( temp 4-component vector of float)
0:17                    add ( temp 4-component vector of float)
0:17                      direct index ( temp 4-component vector of float)
0:17                        a: direct index for structure ( uniform 4-element array of 4-component vector of float)
0:17                          'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:17                          Constant:
0:17                            0 (const uint)
0:17                        Constant:
0:17                          1 (const int)
0:17                      indirect index ( temp 4-component vector of float)
0:17                        a: direct index for structure ( uniform 4-element array of 4-component vector of float)
0:17                          'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:17                          Constant:
0:17                            0 (const uint)
0:17                        'i' ( in int)
0:17                    direct index ( temp 4-component vector of float)
0:17                      'input' ( in 3-element array of 4-component vector of float)
0:17                      Constant:
0:17                        2 (const int)
0:17                  indirect index ( temp 4-component vector of float)
0:17                    'input' ( in 3-element array of 4-component vector of float)
0:17                    'i' ( in int)
0:17                direct index ( temp 4-component vector of float)
0:17                  'b' ( temp 10-element array of 4-component vector of float)
0:17                  Constant:
0:17                    5 (const int)
0:17              indirect index ( temp 4-component vector of float)
0:17                'b' ( temp 10-element array of 4-component vector of float)
0:17                'i' ( in int)
0:17            indirect index ( temp 4-component vector of float)
0:17              m: direct index for structure ( temp 7-element array of 4-component vector of float)
0:17                indirect index ( temp structure{ temp 7-element array of 4-component vector of float m})
0:17                  s: direct index for structure ( uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m})
0:17                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:17                    Constant:
0:17                      1 (const uint)
0:17                  'i' ( in int)
0:17                Constant:
0:17                  0 (const int)
0:17              'i' ( in int)
0:17          'tmp' ( temp 4-component vector of float)
0:14  Function Definition: PixelShaderFunction( ( temp void)
0:14    Function Parameters: 
0:?     Sequence
0:14      move second child to first child ( temp int)
0:?         'i' ( temp int)
0:?         'i' (layout( location=0) flat in int)
0:14      move second child to first child ( temp 3-element array of 4-component vector of float)
0:?         'input' ( temp 3-element array of 4-component vector of float)
0:?         'input' (layout( location=1) in 3-element array of 4-component vector of float)
0:14      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:14        Function Call: @PixelShaderFunction(i1;vf4[3]; ( temp 4-component vector of float)
0:?           'i' ( temp int)
0:?           'input' ( temp 3-element array of 4-component vector of float)
0:?   Linker Objects
0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:?     'C' ( global 4-component vector of float)
0:?     'c1' ( const 1-element array of 4-component vector of float)
0:?       1.000000
0:?       2.000000
0:?       3.000000
0:?       4.000000
0:?     'c2' ( global 2-element array of 4-component vector of float)
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'i' (layout( location=0) flat in int)
0:?     'input' (layout( location=1) in 3-element array of 4-component vector of float)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:7  Sequence
0:7    move second child to first child ( temp 4-component vector of float)
0:7      'C' ( global 4-component vector of float)
0:7      Constant:
0:7        1.000000
0:7        2.000000
0:7        3.000000
0:7        4.000000
0:11  Sequence
0:11    move second child to first child ( temp 2-element array of 4-component vector of float)
0:11      'c2' ( global 2-element array of 4-component vector of float)
0:11      Construct vec4 ( temp 2-element array of 4-component vector of float)
0:11        'C' ( global 4-component vector of float)
0:11        Constant:
0:11          1.000000
0:11          2.000000
0:11          3.000000
0:11          4.000000
0:14  Function Definition: @PixelShaderFunction(i1;vf4[3]; ( temp 4-component vector of float)
0:14    Function Parameters: 
0:14      'i' ( in int)
0:14      'input' ( in 3-element array of 4-component vector of float)
0:?     Sequence
0:15      Sequence
0:15        move second child to first child ( temp 10-element array of 4-component vector of float)
0:15          'b' ( temp 10-element array of 4-component vector of float)
0:15          Construct vec4 ( temp 10-element array of 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:15            'C' ( global 4-component vector of float)
0:16      Sequence
0:16        move second child to first child ( temp 4-component vector of float)
0:16          'tmp' ( temp 4-component vector of float)
0:16          add ( temp 4-component vector of float)
0:16            add ( temp 4-component vector of float)
0:16              add ( temp 4-component vector of float)
0:16                add ( temp 4-component vector of float)
0:16                  'C' ( global 4-component vector of float)
0:16                  direct index ( temp 4-component vector of float)
0:16                    a1: direct index for structure ( uniform 1-element array of 4-component vector of float)
0:16                      'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:16                      Constant:
0:16                        2 (const uint)
0:16                    Constant:
0:16                      0 (const int)
0:16                Constant:
0:16                  1.000000
0:16                  2.000000
0:16                  3.000000
0:16                  4.000000
0:16              indirect index ( temp 4-component vector of float)
0:16                a2: direct index for structure ( uniform 2-element array of 4-component vector of float)
0:16                  'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:16                  Constant:
0:16                    3 (const uint)
0:16                'i' ( in int)
0:16            indirect index ( temp 4-component vector of float)
0:16              'c2' ( global 2-element array of 4-component vector of float)
0:16              'i' ( in int)
0:17      Branch: Return with expression
0:17        add ( temp 4-component vector of float)
0:17          add ( temp 4-component vector of float)
0:17            add ( temp 4-component vector of float)
0:17              add ( temp 4-component vector of float)
0:17                add ( temp 4-component vector of float)
0:17                  add ( temp 4-component vector of float)
0:17                    add ( temp 4-component vector of float)
0:17                      direct index ( temp 4-component vector of float)
0:17                        a: direct index for structure ( uniform 4-element array of 4-component vector of float)
0:17                          'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:17                          Constant:
0:17                            0 (const uint)
0:17                        Constant:
0:17                          1 (const int)
0:17                      indirect index ( temp 4-component vector of float)
0:17                        a: direct index for structure ( uniform 4-element array of 4-component vector of float)
0:17                          'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:17                          Constant:
0:17                            0 (const uint)
0:17                        'i' ( in int)
0:17                    direct index ( temp 4-component vector of float)
0:17                      'input' ( in 3-element array of 4-component vector of float)
0:17                      Constant:
0:17                        2 (const int)
0:17                  indirect index ( temp 4-component vector of float)
0:17                    'input' ( in 3-element array of 4-component vector of float)
0:17                    'i' ( in int)
0:17                direct index ( temp 4-component vector of float)
0:17                  'b' ( temp 10-element array of 4-component vector of float)
0:17                  Constant:
0:17                    5 (const int)
0:17              indirect index ( temp 4-component vector of float)
0:17                'b' ( temp 10-element array of 4-component vector of float)
0:17                'i' ( in int)
0:17            indirect index ( temp 4-component vector of float)
0:17              m: direct index for structure ( temp 7-element array of 4-component vector of float)
0:17                indirect index ( temp structure{ temp 7-element array of 4-component vector of float m})
0:17                  s: direct index for structure ( uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m})
0:17                    'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:17                    Constant:
0:17                      1 (const uint)
0:17                  'i' ( in int)
0:17                Constant:
0:17                  0 (const int)
0:17              'i' ( in int)
0:17          'tmp' ( temp 4-component vector of float)
0:14  Function Definition: PixelShaderFunction( ( temp void)
0:14    Function Parameters: 
0:?     Sequence
0:14      move second child to first child ( temp int)
0:?         'i' ( temp int)
0:?         'i' (layout( location=0) flat in int)
0:14      move second child to first child ( temp 3-element array of 4-component vector of float)
0:?         'input' ( temp 3-element array of 4-component vector of float)
0:?         'input' (layout( location=1) in 3-element array of 4-component vector of float)
0:14      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:14        Function Call: @PixelShaderFunction(i1;vf4[3]; ( temp 4-component vector of float)
0:?           'i' ( temp int)
0:?           'input' ( temp 3-element array of 4-component vector of float)
0:?   Linker Objects
0:?     'anon@0' (layout( row_major std140) uniform block{ uniform 4-element array of 4-component vector of float a,  uniform 11-element array of structure{ temp 7-element array of 4-component vector of float m} s,  uniform 1-element array of 4-component vector of float a1,  uniform 2-element array of 4-component vector of float a2})
0:?     'C' ( global 4-component vector of float)
0:?     'c1' ( const 1-element array of 4-component vector of float)
0:?       1.000000
0:?       2.000000
0:?       3.000000
0:?       4.000000
0:?     'c2' ( global 2-element array of 4-component vector of float)
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'i' (layout( location=0) flat in int)
0:?     'input' (layout( location=1) in 3-element array of 4-component vector of float)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "PixelShaderFunction" 112 116 119
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "PixelShaderFunction"
                              Name 17  "@PixelShaderFunction(i1;vf4[3];"
                              Name 15  "i"
                              Name 16  "input"
                              Name 20  "C"
                              Name 29  "c2"
                              Name 35  "b"
                              Name 48  "tmp"
                              Name 54  ""
                              MemberName 54 0  "m"
                              Name 60  "$Global"
                              MemberName 60($Global) 0  "a"
                              MemberName 60($Global) 1  "s"
                              MemberName 60($Global) 2  "a1"
                              MemberName 60($Global) 3  "a2"
                              Name 62  ""
                              Name 110  "i"
                              Name 112  "i"
                              Name 114  "input"
                              Name 116  "input"
                              Name 119  "@entryPointOutput"
                              Name 120  "param"
                              Name 122  "param"
                              Decorate 51 ArrayStride 16
                              Decorate 53 ArrayStride 16
                              MemberDecorate 54 0 Offset 0
                              Decorate 56 ArrayStride 112
                              Decorate 58 ArrayStride 16
                              Decorate 59 ArrayStride 16
                              MemberDecorate 60($Global) 0 Offset 0
                              MemberDecorate 60($Global) 1 Offset 64
                              MemberDecorate 60($Global) 2 Offset 1296
                              MemberDecorate 60($Global) 3 Offset 1312
                              Decorate 60($Global) Block
                              Decorate 62 DescriptorSet 0
                              Decorate 62 Binding 0
                              Decorate 112(i) Flat
                              Decorate 112(i) Location 0
                              Decorate 116(input) Location 1
                              Decorate 119(@entryPointOutput) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypePointer Function 6(int)
               8:             TypeFloat 32
               9:             TypeVector 8(float) 4
              10:             TypeInt 32 0
              11:     10(int) Constant 3
              12:             TypeArray 9(fvec4) 11
              13:             TypePointer Function 12
              14:             TypeFunction 9(fvec4) 7(ptr) 13(ptr)
              19:             TypePointer Private 9(fvec4)
           20(C):     19(ptr) Variable Private
              21:    8(float) Constant 1065353216
              22:    8(float) Constant 1073741824
              23:    8(float) Constant 1077936128
              24:    8(float) Constant 1082130432
              25:    9(fvec4) ConstantComposite 21 22 23 24
              26:     10(int) Constant 2
              27:             TypeArray 9(fvec4) 26
              28:             TypePointer Private 27
          29(c2):     28(ptr) Variable Private
              32:     10(int) Constant 10
              33:             TypeArray 9(fvec4) 32
              34:             TypePointer Function 33
              47:             TypePointer Function 9(fvec4)
              50:     10(int) Constant 4
              51:             TypeArray 9(fvec4) 50
              52:     10(int) Constant 7
              53:             TypeArray 9(fvec4) 52
              54:             TypeStruct 53
              55:     10(int) Constant 11
              56:             TypeArray 54(struct) 55
              57:     10(int) Constant 1
              58:             TypeArray 9(fvec4) 57
              59:             TypeArray 9(fvec4) 26
     60($Global):             TypeStruct 51 56 58 59
              61:             TypePointer Uniform 60($Global)
              62:     61(ptr) Variable Uniform
              63:      6(int) Constant 2
              64:      6(int) Constant 0
              65:             TypePointer Uniform 9(fvec4)
              70:      6(int) Constant 3
              79:      6(int) Constant 1
              93:      6(int) Constant 5
             111:             TypePointer Input 6(int)
          112(i):    111(ptr) Variable Input
             115:             TypePointer Input 12
      116(input):    115(ptr) Variable Input
             118:             TypePointer Output 9(fvec4)
119(@entryPointOutput):    118(ptr) Variable Output
             125:          58 ConstantComposite 25
4(PixelShaderFunction):           2 Function None 3
               5:             Label
          110(i):      7(ptr) Variable Function
      114(input):     13(ptr) Variable Function
      120(param):      7(ptr) Variable Function
      122(param):     13(ptr) Variable Function
                              Store 20(C) 25
              30:    9(fvec4) Load 20(C)
              31:          27 CompositeConstruct 30 25
                              Store 29(c2) 31
             113:      6(int) Load 112(i)
                              Store 110(i) 113
             117:          12 Load 116(input)
                              Store 114(input) 117
             121:      6(int) Load 110(i)
                              Store 120(param) 121
             123:          12 Load 114(input)
                              Store 122(param) 123
             124:    9(fvec4) FunctionCall 17(@PixelShaderFunction(i1;vf4[3];) 120(param) 122(param)
                              Store 119(@entryPointOutput) 124
                              Return
                              FunctionEnd
17(@PixelShaderFunction(i1;vf4[3];):    9(fvec4) Function None 14
           15(i):      7(ptr) FunctionParameter
       16(input):     13(ptr) FunctionParameter
              18:             Label
           35(b):     34(ptr) Variable Function
         48(tmp):     47(ptr) Variable Function
              36:    9(fvec4) Load 20(C)
              37:    9(fvec4) Load 20(C)
              38:    9(fvec4) Load 20(C)
              39:    9(fvec4) Load 20(C)
              40:    9(fvec4) Load 20(C)
              41:    9(fvec4) Load 20(C)
              42:    9(fvec4) Load 20(C)
              43:    9(fvec4) Load 20(C)
              44:    9(fvec4) Load 20(C)
              45:    9(fvec4) Load 20(C)
              46:          33 CompositeConstruct 36 37 38 39 40 41 42 43 44 45
                              Store 35(b) 46
              49:    9(fvec4) Load 20(C)
              66:     65(ptr) AccessChain 62 63 64
              67:    9(fvec4) Load 66
              68:    9(fvec4) FAdd 49 67
              69:    9(fvec4) FAdd 68 25
              71:      6(int) Load 15(i)
              72:     65(ptr) AccessChain 62 70 71
              73:    9(fvec4) Load 72
              74:    9(fvec4) FAdd 69 73
              75:      6(int) Load 15(i)
              76:     19(ptr) AccessChain 29(c2) 75
              77:    9(fvec4) Load 76
              78:    9(fvec4) FAdd 74 77
                              Store 48(tmp) 78
              80:     65(ptr) AccessChain 62 64 79
              81:    9(fvec4) Load 80
              82:      6(int) Load 15(i)
              83:     65(ptr) AccessChain 62 64 82
              84:    9(fvec4) Load 83
              85:    9(fvec4) FAdd 81 84
              86:     47(ptr) AccessChain 16(input) 63
              87:    9(fvec4) Load 86
              88:    9(fvec4) FAdd 85 87
              89:      6(int) Load 15(i)
              90:     47(ptr) AccessChain 16(input) 89
              91:    9(fvec4) Load 90
              92:    9(fvec4) FAdd 88 91
              94:     47(ptr) AccessChain 35(b) 93
              95:    9(fvec4) Load 94
              96:    9(fvec4) FAdd 92 95
              97:      6(int) Load 15(i)
              98:     47(ptr) AccessChain 35(b) 97
              99:    9(fvec4) Load 98
             100:    9(fvec4) FAdd 96 99
             101:      6(int) Load 15(i)
             102:      6(int) Load 15(i)
             103:     65(ptr) AccessChain 62 79 101 64 102
             104:    9(fvec4) Load 103
             105:    9(fvec4) FAdd 100 104
             106:    9(fvec4) Load 48(tmp)
             107:    9(fvec4) FAdd 105 106
                              ReturnValue 107
                              FunctionEnd
