hlsl.structin.vert
Shader version: 450
0:? Sequence
0:8  Function Definition: main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4; (temp structure Position{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:8    Function Parameters: 
0:8      'd' (layout(location=0 ) in 4-component vector of float)
0:8      'vi' (in structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:8      'e' (layout(location=5 ) in 4-component vector of float)
0:?     Sequence
0:11      move second child to first child (temp 4-component vector of float)
0:11        b: direct index for structure (temp 4-component vector of float)
0:11          'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:11          Constant:
0:11            2 (const int)
0:11        add (temp 4-component vector of float)
0:11          add (temp 4-component vector of float)
0:11            add (temp 4-component vector of float)
0:11              add (temp 4-component vector of float)
0:?                 'm[1]' (layout(location=2 ) in 4-component vector of float)
0:?                 'm[0]' (layout(location=1 ) in 4-component vector of float)
0:11              Construct vec4 (temp 4-component vector of float)
0:11                Convert uint to float (temp float)
0:11                  direct index (temp uint)
0:?                     'coord' (layout(location=3 ) in 2-component vector of uint)
0:11                    Constant:
0:11                      0 (const int)
0:11            'd' (layout(location=0 ) in 4-component vector of float)
0:11          'e' (layout(location=5 ) in 4-component vector of float)
0:13      Sequence
0:13        Sequence
0:13          move second child to first child (temp 4-component vector of float)
0:?             'm[0]' (layout(location=0 ) out 4-component vector of float)
0:13            direct index (temp 4-component vector of float)
0:13              m: direct index for structure (temp 2-element array of 4-component vector of float)
0:13                'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13                Constant:
0:13                  0 (const int)
0:13              Constant:
0:13                0 (const int)
0:13          move second child to first child (temp 4-component vector of float)
0:?             'm[1]' (layout(location=1 ) out 4-component vector of float)
0:13            direct index (temp 4-component vector of float)
0:13              m: direct index for structure (temp 2-element array of 4-component vector of float)
0:13                'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13                Constant:
0:13                  0 (const int)
0:13              Constant:
0:13                1 (const int)
0:13          move second child to first child (temp 2-component vector of uint)
0:?             'coord' (layout(location=2 ) out 2-component vector of uint)
0:13            coord: direct index for structure (temp 2-component vector of uint)
0:13              'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13              Constant:
0:13                1 (const int)
0:13          move second child to first child (temp 4-component vector of float)
0:?             'b' (layout(location=3 ) smooth out 4-component vector of float)
0:13            b: direct index for structure (temp 4-component vector of float)
0:13              'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13              Constant:
0:13                2 (const int)
0:13        Branch: Return
0:?   Linker Objects
0:?     'm[0]' (layout(location=0 ) out 4-component vector of float)
0:?     'm[1]' (layout(location=1 ) out 4-component vector of float)
0:?     'coord' (layout(location=2 ) out 2-component vector of uint)
0:?     'b' (layout(location=3 ) smooth out 4-component vector of float)
0:?     'd' (layout(location=0 ) in 4-component vector of float)
0:?     'm[0]' (layout(location=1 ) in 4-component vector of float)
0:?     'm[1]' (layout(location=2 ) in 4-component vector of float)
0:?     'coord' (layout(location=3 ) in 2-component vector of uint)
0:?     'b' (layout(location=4 ) in 4-component vector of float)
0:?     'e' (layout(location=5 ) in 4-component vector of float)
0:?     'm[0]' (layout(location=0 ) out 4-component vector of float)
0:?     'm[1]' (layout(location=1 ) out 4-component vector of float)
0:?     'm[0]' (layout(location=1 ) in 4-component vector of float)
0:?     'm[1]' (layout(location=2 ) in 4-component vector of float)


Linked vertex stage:


Shader version: 450
0:? Sequence
0:8  Function Definition: main(vf4;struct-VI-vf4[2]-vu2-vf41;vf4; (temp structure Position{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:8    Function Parameters: 
0:8      'd' (layout(location=0 ) in 4-component vector of float)
0:8      'vi' (in structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:8      'e' (layout(location=5 ) in 4-component vector of float)
0:?     Sequence
0:11      move second child to first child (temp 4-component vector of float)
0:11        b: direct index for structure (temp 4-component vector of float)
0:11          'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:11          Constant:
0:11            2 (const int)
0:11        add (temp 4-component vector of float)
0:11          add (temp 4-component vector of float)
0:11            add (temp 4-component vector of float)
0:11              add (temp 4-component vector of float)
0:?                 'm[1]' (layout(location=2 ) in 4-component vector of float)
0:?                 'm[0]' (layout(location=1 ) in 4-component vector of float)
0:11              Construct vec4 (temp 4-component vector of float)
0:11                Convert uint to float (temp float)
0:11                  direct index (temp uint)
0:?                     'coord' (layout(location=3 ) in 2-component vector of uint)
0:11                    Constant:
0:11                      0 (const int)
0:11            'd' (layout(location=0 ) in 4-component vector of float)
0:11          'e' (layout(location=5 ) in 4-component vector of float)
0:13      Sequence
0:13        Sequence
0:13          move second child to first child (temp 4-component vector of float)
0:?             'm[0]' (layout(location=0 ) out 4-component vector of float)
0:13            direct index (temp 4-component vector of float)
0:13              m: direct index for structure (temp 2-element array of 4-component vector of float)
0:13                'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13                Constant:
0:13                  0 (const int)
0:13              Constant:
0:13                0 (const int)
0:13          move second child to first child (temp 4-component vector of float)
0:?             'm[1]' (layout(location=1 ) out 4-component vector of float)
0:13            direct index (temp 4-component vector of float)
0:13              m: direct index for structure (temp 2-element array of 4-component vector of float)
0:13                'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13                Constant:
0:13                  0 (const int)
0:13              Constant:
0:13                1 (const int)
0:13          move second child to first child (temp 2-component vector of uint)
0:?             'coord' (layout(location=2 ) out 2-component vector of uint)
0:13            coord: direct index for structure (temp 2-component vector of uint)
0:13              'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13              Constant:
0:13                1 (const int)
0:13          move second child to first child (temp 4-component vector of float)
0:?             'b' (layout(location=3 ) smooth out 4-component vector of float)
0:13            b: direct index for structure (temp 4-component vector of float)
0:13              'local' (temp structure{temp 2-element array of 4-component vector of float m, temp 2-component vector of uint coord, temp 4-component vector of float b})
0:13              Constant:
0:13                2 (const int)
0:13        Branch: Return
0:?   Linker Objects
0:?     'm[0]' (layout(location=0 ) out 4-component vector of float)
0:?     'm[1]' (layout(location=1 ) out 4-component vector of float)
0:?     'coord' (layout(location=2 ) out 2-component vector of uint)
0:?     'b' (layout(location=3 ) smooth out 4-component vector of float)
0:?     'd' (layout(location=0 ) in 4-component vector of float)
0:?     'm[0]' (layout(location=1 ) in 4-component vector of float)
0:?     'm[1]' (layout(location=2 ) in 4-component vector of float)
0:?     'coord' (layout(location=3 ) in 2-component vector of uint)
0:?     'b' (layout(location=4 ) in 4-component vector of float)
0:?     'e' (layout(location=5 ) in 4-component vector of float)
0:?     'm[0]' (layout(location=0 ) out 4-component vector of float)
0:?     'm[1]' (layout(location=1 ) out 4-component vector of float)
0:?     'm[0]' (layout(location=1 ) in 4-component vector of float)
0:?     'm[1]' (layout(location=2 ) in 4-component vector of float)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 18 20 24 32 35 41 45 50 54 58
                              Name 4  "main"
                              Name 12  "VI"
                              MemberName 12(VI) 0  "m"
                              MemberName 12(VI) 1  "coord"
                              MemberName 12(VI) 2  "b"
                              Name 14  "local"
                              Name 18  "m[1]"
                              Name 20  "m[0]"
                              Name 24  "coord"
                              Name 32  "d"
                              Name 35  "e"
                              Name 41  "m[0]"
                              Name 45  "m[1]"
                              Name 50  "coord"
                              Name 54  "b"
                              Name 58  "b"
                              Decorate 18(m[1]) Location 2
                              Decorate 20(m[0]) Location 1
                              Decorate 24(coord) Location 3
                              Decorate 32(d) Location 0
                              Decorate 35(e) Location 5
                              Decorate 41(m[0]) Location 0
                              Decorate 45(m[1]) Location 1
                              Decorate 50(coord) Location 2
                              Decorate 54(b) Location 3
                              Decorate 58(b) Location 4
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypeInt 32 0
               9:      8(int) Constant 2
              10:             TypeArray 7(fvec4) 9
              11:             TypeVector 8(int) 2
          12(VI):             TypeStruct 10 11(ivec2) 7(fvec4)
              13:             TypePointer Function 12(VI)
              15:             TypeInt 32 1
              16:     15(int) Constant 2
              17:             TypePointer Input 7(fvec4)
        18(m[1]):     17(ptr) Variable Input
        20(m[0]):     17(ptr) Variable Input
              23:             TypePointer Input 11(ivec2)
       24(coord):     23(ptr) Variable Input
              25:      8(int) Constant 0
              26:             TypePointer Input 8(int)
           32(d):     17(ptr) Variable Input
           35(e):     17(ptr) Variable Input
              38:             TypePointer Function 7(fvec4)
              40:             TypePointer Output 7(fvec4)
        41(m[0]):     40(ptr) Variable Output
              42:     15(int) Constant 0
        45(m[1]):     40(ptr) Variable Output
              46:     15(int) Constant 1
              49:             TypePointer Output 11(ivec2)
       50(coord):     49(ptr) Variable Output
              51:             TypePointer Function 11(ivec2)
           54(b):     40(ptr) Variable Output
           58(b):     17(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
       14(local):     13(ptr) Variable Function
              19:    7(fvec4) Load 18(m[1])
              21:    7(fvec4) Load 20(m[0])
              22:    7(fvec4) FAdd 19 21
              27:     26(ptr) AccessChain 24(coord) 25
              28:      8(int) Load 27
              29:    6(float) ConvertUToF 28
              30:    7(fvec4) CompositeConstruct 29 29 29 29
              31:    7(fvec4) FAdd 22 30
              33:    7(fvec4) Load 32(d)
              34:    7(fvec4) FAdd 31 33
              36:    7(fvec4) Load 35(e)
              37:    7(fvec4) FAdd 34 36
              39:     38(ptr) AccessChain 14(local) 16
                              Store 39 37
              43:     38(ptr) AccessChain 14(local) 42 42
              44:    7(fvec4) Load 43
                              Store 41(m[0]) 44
              47:     38(ptr) AccessChain 14(local) 42 46
              48:    7(fvec4) Load 47
                              Store 45(m[1]) 48
              52:     51(ptr) AccessChain 14(local) 46
              53:   11(ivec2) Load 52
                              Store 50(coord) 53
              55:     38(ptr) AccessChain 14(local) 16
              56:    7(fvec4) Load 55
                              Store 54(b) 56
                              Return
                              FunctionEnd
