spv.controlFlowAttributes.frag
WARNING: 0:27: 'unroll' : expected no arguments 
WARNING: 0:28: 'dont_unroll' : expected no arguments 
WARNING: 0:29: 'dependency_infinite' : expected no arguments 
WARNING: 0:30: 'dependency_length' : expected a single integer argument 
WARNING: 0:31: '' : attribute with arguments not recognized, skipping 
WARNING: 0:32: '' : attribute with arguments not recognized, skipping 
WARNING: 0:33: '' : attribute with arguments not recognized, skipping 

Validation failed
// Module Version 10000
// Generated by (magic number): 8000b
// Id's are bound by 123

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main"
                              ExecutionMode 4 OriginUpperLeft
                              Source GLSL 450
                              SourceExtension  "GL_EXT_control_flow_attributes"
                              Name 4  "main"
                              Name 6  "f0("
                              Name 8  "f1("
                              Name 23  "i"
                              Name 41  "i"
                              Name 52  "cond"
                              Name 65  "i"
                              Name 84  "i"
               2:             TypeVoid
               3:             TypeFunction 2
              19:             TypeBool
              20:    19(bool) ConstantTrue
              21:             TypeInt 32 1
              22:             TypePointer Function 21(int)
              24:     21(int) Constant 0
              31:     21(int) Constant 8
              34:     21(int) Constant 1
              51:             TypePointer Private 19(bool)
        52(cond):     51(ptr) Variable Private
              59:    19(bool) ConstantFalse
              60:     21(int) Constant 3
         4(main):           2 Function None 3
               5:             Label
           23(i):     22(ptr) Variable Function
           41(i):     22(ptr) Variable Function
           65(i):     22(ptr) Variable Function
           84(i):     22(ptr) Variable Function
                              Store 23(i) 24
                              Branch 25
              25:             Label
                              LoopMerge 27 28 Unroll 
                              Branch 29
              29:             Label
              30:     21(int) Load 23(i)
              32:    19(bool) SLessThan 30 31
                              BranchConditional 32 26 27
              26:               Label
                                Branch 28
              28:               Label
              33:     21(int)   Load 23(i)
              35:     21(int)   IAdd 33 34
                                Store 23(i) 35
                                Branch 25
              27:             Label
              36:           2 FunctionCall 6(f0()
                              Branch 37
              37:             Label
                              LoopMerge 39 40 DependencyInfinite 
                              Branch 38
              38:             Label
                              Branch 40
              40:             Label
                              BranchConditional 20 37 39
              39:             Label
                              Store 41(i) 24
                              Branch 42
              42:             Label
                              LoopMerge 44 45 DependencyLength  4
                              Branch 46
              46:             Label
              47:     21(int) Load 41(i)
              48:    19(bool) SLessThan 47 31
                              BranchConditional 48 43 44
              43:               Label
                                Branch 45
              45:               Label
              49:     21(int)   Load 41(i)
              50:     21(int)   IAdd 49 34
                                Store 41(i) 50
                                Branch 42
              44:             Label
              53:    19(bool) Load 52(cond)
                              SelectionMerge 55 Flatten 
                              BranchConditional 53 54 55
              54:               Label
                                Branch 55
              55:             Label
              56:    19(bool) Load 52(cond)
                              SelectionMerge 58 DontFlatten 
                              BranchConditional 56 57 58
              57:               Label
                                Store 52(cond) 59
                                Branch 58
              58:             Label
                              SelectionMerge 62 DontFlatten 
                              Switch 60 62 
                                     case 3: 61
              61:               Label
                                Branch 62
              62:             Label
                              Store 65(i) 24
                              Branch 66
              66:             Label
                              LoopMerge 68 69 None
                              Branch 70
              70:             Label
              71:     21(int) Load 65(i)
              72:    19(bool) SLessThan 71 31
                              BranchConditional 72 67 68
              67:               Label
                                Branch 69
              69:               Label
              73:     21(int)   Load 65(i)
              74:     21(int)   IAdd 73 34
                                Store 65(i) 74
                                Branch 66
              68:             Label
                              Branch 75
              75:             Label
                              LoopMerge 77 78 None
                              Branch 79
              79:             Label
                              BranchConditional 20 76 77
              76:               Label
                                Branch 78
              78:               Label
                                Branch 75
              77:             Label
                              Branch 80
              80:             Label
                              LoopMerge 82 83 None
                              Branch 81
              81:             Label
                              Branch 83
              83:             Label
                              BranchConditional 20 80 82
              82:             Label
                              Store 84(i) 24
                              Branch 85
              85:             Label
                              LoopMerge 87 88 None
                              Branch 89
              89:             Label
              90:     21(int) Load 84(i)
              91:    19(bool) SLessThan 90 31
                              BranchConditional 91 86 87
              86:               Label
                                Branch 88
              88:               Label
              92:     21(int)   Load 84(i)
              93:     21(int)   IAdd 92 34
                                Store 84(i) 93
                                Branch 85
              87:             Label
              94:    19(bool) Load 52(cond)
                              SelectionMerge 96 None
                              BranchConditional 94 95 96
              95:               Label
                                Branch 96
              96:             Label
              97:    19(bool) Load 52(cond)
                              SelectionMerge 99 None
                              BranchConditional 97 98 99
              98:               Label
                                Store 52(cond) 59
                                Branch 99
              99:             Label
                              SelectionMerge 101 None
                              Switch 60 101 
                                     case 3: 100
             100:               Label
                                Branch 101
             101:             Label
                              Branch 104
             104:             Label
                              LoopMerge 106 107 Unroll DontUnroll DependencyLength  2
                              Branch 108
             108:             Label
             109:    19(bool) Load 52(cond)
                              BranchConditional 109 105 106
             105:               Label
                                Branch 107
             107:               Label
                                Branch 104
             106:             Label
                              SelectionMerge 111 DontFlatten 
                              Switch 60 111 
                                     case 3: 110
             110:               Label
                                Branch 111
             111:             Label
             114:    19(bool) Load 52(cond)
                              SelectionMerge 116 Flatten 
                              BranchConditional 114 115 116
             115:               Label
                                Branch 116
             116:             Label
                              Branch 117
             117:             Label
                              LoopMerge 119 120 DependencyInfinite 
                              Branch 121
             121:             Label
             122:    19(bool) Load 52(cond)
                              BranchConditional 122 118 119
             118:               Label
                                Branch 120
             120:               Label
                                Branch 117
             119:             Label
                              Return
                              FunctionEnd
          6(f0():           2 Function None 3
               7:             Label
                              Branch 10
              10:             Label
                              LoopMerge 12 13 DontUnroll 
                              Branch 11
              11:             Label
                              Branch 13
              13:             Label
                              Branch 10
              12:             Label
                              Unreachable
                              FunctionEnd
          8(f1():           2 Function None 3
               9:             Label
                              Branch 14
              14:             Label
                              LoopMerge 16 17 DontUnroll 
                              Branch 18
              18:             Label
                              BranchConditional 20 15 16
              15:               Label
                                Branch 17
              17:               Label
                                Branch 14
              16:             Label
                              Return
                              FunctionEnd
