spv.test.vert
WARNING: 0:5: attribute deprecated in version 130; may be removed in future release

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 9 11 15 18 21
                              Source GLSL 140
                              Name 4  "main"
                              Name 9  "uv"
                              Name 11  "uv_in"
                              Name 15  "gl_Position"
                              Name 18  "transform"
                              Name 21  "position"
                              Decorate 15(gl_Position) BuiltIn Position
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypePointer Output 7(fvec2)
           9(uv):      8(ptr) Variable Output
              10:             TypePointer Input 7(fvec2)
       11(uv_in):     10(ptr) Variable Input
              13:             TypeVector 6(float) 4
              14:             TypePointer Output 13(fvec4)
 15(gl_Position):     14(ptr) Variable Output
              16:             TypeMatrix 13(fvec4) 4
              17:             TypePointer Input 16
   18(transform):     17(ptr) Variable Input
              20:             TypePointer Input 13(fvec4)
    21(position):     20(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
              12:    7(fvec2) Load 11(uv_in)
                              Store 9(uv) 12
              19:          16 Load 18(transform)
              22:   13(fvec4) Load 21(position)
              23:   13(fvec4) MatrixTimesVector 19 22
                              Store 15(gl_Position) 23
                              Return
                              FunctionEnd
