spv.for-notest.vert
Warning, version 450 is not yet complete; most version-specific features are present, but some are missing.


Linked vertex stage:


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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main" 15
                              Source GLSL 450
                              Name 4  "main"
                              Name 8  "i"
                              Name 15  "r"
                              Decorate 15(r) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypePointer Function 6(int)
               9:      6(int) Constant 0
              14:             TypePointer Output 6(int)
           15(r):     14(ptr) Variable Output
              18:      6(int) Constant 1
         4(main):           2 Function None 3
               5:             Label
            8(i):      7(ptr) Variable Function
                              Store 8(i) 9
                              Branch 10
              10:             Label
                              LoopMerge 12 13 None
                              Branch 11
              11:             Label
              16:      6(int) Load 8(i)
                              Store 15(r) 16
                              Branch 13
              13:             Label
              17:      6(int) Load 8(i)
              19:      6(int) IAdd 17 18
                              Store 8(i) 19
                              Branch 10
              12:             Label
                              Return
                              FunctionEnd
