spv.while-continue-break.vert

Linked vertex stage:


// Module Version 99
// Generated by (magic number): 51a00bb
// Id's are bound by 43

                              Source ESSL 300
                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Vertex 4  "main"
                              Name 4  "main"
                              Name 9  "i"
                              Name 18  "A"
                              Name 26  "B"
                              Name 28  "C"
                              Name 38  "D"
                              Name 41  "gl_VertexID"
                              Name 42  "gl_InstanceID"
                              Decorate 41(gl_VertexID) BuiltIn VertexId
                              Decorate 41(gl_VertexID) NoStaticUse
                              Decorate 42(gl_InstanceID) BuiltIn InstanceId
                              Decorate 42(gl_InstanceID) NoStaticUse
               2:             TypeVoid
               3:             TypeFunction 2
               7:             TypeInt 32 1
               8:             TypePointer Function 7(int)
              10:      7(int) Constant 0
              15:      7(int) Constant 10
              16:             TypeBool
              19:      7(int) Constant 1
              21:      7(int) Constant 2
              30:      7(int) Constant 5
              39:      7(int) Constant 3
              40:             TypePointer Input 7(int)
 41(gl_VertexID):     40(ptr) Variable Input
42(gl_InstanceID):     40(ptr) Variable Input
         4(main):           2 Function None 3
               5:             Label
            9(i):      8(ptr) Variable Function
           18(A):      8(ptr) Variable Function
           26(B):      8(ptr) Variable Function
           28(C):      8(ptr) Variable Function
           38(D):      8(ptr) Variable Function
                              Store 9(i) 10
                              Branch 11
              11:             Label
              14:      7(int) Load 9(i)
              17:    16(bool) SLessThan 14 15
                              LoopMerge 12 None
                              BranchConditional 17 13 12
              13:               Label
                                Store 18(A) 19
              20:      7(int)   Load 9(i)
              22:      7(int)   SMod 20 21
              23:    16(bool)   IEqual 22 10
                                SelectionMerge 25 None
                                BranchConditional 23 24 25
              24:                 Label
                                  Store 26(B) 21
                                  Branch 11
              27:                 Label
                                  Store 28(C) 21
                                  Branch 25
              25:               Label
              29:      7(int)   Load 9(i)
              31:      7(int)   SMod 29 30
              32:    16(bool)   IEqual 31 10
                                SelectionMerge 34 None
                                BranchConditional 32 33 34
              33:                 Label
                                  Store 26(B) 21
                                  Branch 12
              35:                 Label
                                  Store 28(C) 21
                                  Branch 34
              34:               Label
              36:      7(int)   Load 9(i)
              37:      7(int)   IAdd 36 19
                                Store 9(i) 37
                                Branch 11
              12:             Label
                              Store 38(D) 39
                              Branch 6
               6:             Label
                              Return
                              FunctionEnd
