spv.nonSquare.vert
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 90

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 12 22 28 55
                              Source GLSL 140
                              Name 4  "main"
                              Name 9  "a"
                              Name 12  "v3"
                              Name 16  "m23"
                              Name 19  "b"
                              Name 22  "m32"
                              Name 28  "gl_Position"
                              Name 55  "v4"
                              Decorate 12(v3) Location 0
                              Decorate 22(m32) Location 0
                              Decorate 28(gl_Position) BuiltIn Position
                              Decorate 55(v4) Location 1
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypePointer Function 7(fvec2)
              10:             TypeVector 6(float) 3
              11:             TypePointer Input 10(fvec3)
          12(v3):     11(ptr) Variable Input
              14:             TypeMatrix 10(fvec3) 2
              15:             TypePointer Function 14
              20:             TypeMatrix 7(fvec2) 3
              21:             TypePointer Output 20
         22(m32):     21(ptr) Variable Output
              26:             TypeVector 6(float) 4
              27:             TypePointer Output 26(fvec4)
 28(gl_Position):     27(ptr) Variable Output
              31:             TypeMatrix 10(fvec3) 3
              35:    6(float) Constant 0
              40:             TypeMatrix 26(fvec4) 4
              41:    6(float) Constant 1077936128
              42:    6(float) Constant 1086324736
              43:   26(fvec4) ConstantComposite 41 42 35 35
              44:    6(float) Constant 1091567616
              45:    6(float) Constant 1094713344
              46:   26(fvec4) ConstantComposite 44 45 35 35
              47:    6(float) Constant 1097859072
              48:    6(float) Constant 1099956224
              49:   26(fvec4) ConstantComposite 47 48 35 35
              50:    6(float) Constant 1101529088
              51:    6(float) Constant 1103101952
              52:   26(fvec4) ConstantComposite 50 51 35 35
              53:          40 ConstantComposite 43 46 49 52
              54:             TypePointer Input 26(fvec4)
          55(v4):     54(ptr) Variable Input
              59:    6(float) Constant 1112014848
              60:    6(float) Constant 1121714176
              61:    6(float) Constant 1126825984
              62:    6(float) Constant 1130758144
              63:   26(fvec4) ConstantComposite 59 60 61 62
              65:    6(float) Constant 1106247680
              66:    6(float) Constant 1114636288
              67:   26(fvec4) ConstantComposite 65 66 35 35
              69:    6(float) Constant 1101004800
              70:    6(float) Constant 1092616192
              71:    6(float) Constant 1084227584
              72:   26(fvec4) ConstantComposite 69 70 42 71
              74:    7(fvec2) ConstantComposite 70 69
              75:             TypeMatrix 26(fvec4) 2
              76:   26(fvec4) ConstantComposite 41 35 35 35
              77:   26(fvec4) ConstantComposite 35 41 35 35
              78:          75 ConstantComposite 76 77
              79:             TypeMatrix 7(fvec2) 4
              80:    6(float) Constant 1065353216
              81:    6(float) Constant 1073741824
              82:    7(fvec2) ConstantComposite 80 81
              83:    6(float) Constant 1082130432
              84:    7(fvec2) ConstantComposite 41 83
              85:    7(fvec2) ConstantComposite 71 42
              86:    6(float) Constant 1088421888
              87:    6(float) Constant 1090519040
              88:    7(fvec2) ConstantComposite 86 87
              89:          79 ConstantComposite 82 84 85 88
         4(main):           2 Function None 3
               5:             Label
            9(a):      8(ptr) Variable Function
         16(m23):     15(ptr) Variable Function
           19(b):      8(ptr) Variable Function
              13:   10(fvec3) Load 12(v3)
              17:          14 Load 16(m23)
              18:    7(fvec2) VectorTimesMatrix 13 17
                              Store 9(a) 18
              23:          20 Load 22(m32)
              24:   10(fvec3) Load 12(v3)
              25:    7(fvec2) MatrixTimesVector 23 24
                              Store 19(b) 25
              29:          14 Load 16(m23)
              30:          20 Load 22(m32)
              32:          31 MatrixTimesMatrix 29 30
              33:   10(fvec3) Load 12(v3)
              34:   10(fvec3) MatrixTimesVector 32 33
              36:    6(float) CompositeExtract 34 0
              37:    6(float) CompositeExtract 34 1
              38:    6(float) CompositeExtract 34 2
              39:   26(fvec4) CompositeConstruct 36 37 38 35
              56:   26(fvec4) Load 55(v4)
              57:   26(fvec4) MatrixTimesVector 53 56
              58:   26(fvec4) FAdd 39 57
              64:   26(fvec4) FAdd 58 63
              68:   26(fvec4) FAdd 64 67
              73:   26(fvec4) FAdd 68 72
                              Store 28(gl_Position) 73
                              Return
                              FunctionEnd
