spv.for-simple.vert
// 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"
                              Source ESSL 310
                              Name 4  "main"
                              Name 8  "i"
                              Name 19  "j"
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeInt 32 1
               7:             TypePointer Function 6(int)
               9:      6(int) Constant 0
              16:      6(int) Constant 10
              17:             TypeBool
              20:      6(int) Constant 12
              22:      6(int) Constant 1
         4(main):           2 Function None 3
               5:             Label
            8(i):      7(ptr) Variable Function
           19(j):      7(ptr) Variable Function
                              Store 8(i) 9
                              Branch 10
              10:             Label
                              LoopMerge 12 13 None
                              Branch 14
              14:             Label
              15:      6(int) Load 8(i)
              18:    17(bool) SLessThan 15 16
                              BranchConditional 18 11 12
              11:               Label
                                Store 19(j) 20
                                Branch 13
              13:               Label
              21:      6(int)   Load 8(i)
              23:      6(int)   IAdd 21 22
                                Store 8(i) 23
                                Branch 10
              12:             Label
                              Return
                              FunctionEnd
