1spv.controlFlowAttributes.frag 2WARNING: 0:27: 'unroll' : expected no arguments 3WARNING: 0:28: 'dont_unroll' : expected no arguments 4WARNING: 0:29: 'dependency_infinite' : expected no arguments 5WARNING: 0:30: 'dependency_length' : expected a single integer argument 6WARNING: 0:31: '' : attribute with arguments not recognized, skipping 7WARNING: 0:32: '' : attribute with arguments not recognized, skipping 8WARNING: 0:33: '' : attribute with arguments not recognized, skipping 9 10Validation failed 11// Module Version 10000 12// Generated by (magic number): 8000a 13// Id's are bound by 123 14 15 Capability Shader 16 1: ExtInstImport "GLSL.std.450" 17 MemoryModel Logical GLSL450 18 EntryPoint Fragment 4 "main" 19 ExecutionMode 4 OriginUpperLeft 20 Source GLSL 450 21 SourceExtension "GL_EXT_control_flow_attributes" 22 Name 4 "main" 23 Name 6 "f0(" 24 Name 8 "f1(" 25 Name 23 "i" 26 Name 41 "i" 27 Name 52 "cond" 28 Name 65 "i" 29 Name 84 "i" 30 2: TypeVoid 31 3: TypeFunction 2 32 19: TypeBool 33 20: 19(bool) ConstantTrue 34 21: TypeInt 32 1 35 22: TypePointer Function 21(int) 36 24: 21(int) Constant 0 37 31: 21(int) Constant 8 38 34: 21(int) Constant 1 39 51: TypePointer Private 19(bool) 40 52(cond): 51(ptr) Variable Private 41 59: 19(bool) ConstantFalse 42 60: 21(int) Constant 3 43 4(main): 2 Function None 3 44 5: Label 45 23(i): 22(ptr) Variable Function 46 41(i): 22(ptr) Variable Function 47 65(i): 22(ptr) Variable Function 48 84(i): 22(ptr) Variable Function 49 Store 23(i) 24 50 Branch 25 51 25: Label 52 LoopMerge 27 28 Unroll 53 Branch 29 54 29: Label 55 30: 21(int) Load 23(i) 56 32: 19(bool) SLessThan 30 31 57 BranchConditional 32 26 27 58 26: Label 59 Branch 28 60 28: Label 61 33: 21(int) Load 23(i) 62 35: 21(int) IAdd 33 34 63 Store 23(i) 35 64 Branch 25 65 27: Label 66 36: 2 FunctionCall 6(f0() 67 Branch 37 68 37: Label 69 LoopMerge 39 40 DependencyInfinite 70 Branch 38 71 38: Label 72 Branch 40 73 40: Label 74 BranchConditional 20 37 39 75 39: Label 76 Store 41(i) 24 77 Branch 42 78 42: Label 79 LoopMerge 44 45 DependencyLength 4 80 Branch 46 81 46: Label 82 47: 21(int) Load 41(i) 83 48: 19(bool) SLessThan 47 31 84 BranchConditional 48 43 44 85 43: Label 86 Branch 45 87 45: Label 88 49: 21(int) Load 41(i) 89 50: 21(int) IAdd 49 34 90 Store 41(i) 50 91 Branch 42 92 44: Label 93 53: 19(bool) Load 52(cond) 94 SelectionMerge 55 Flatten 95 BranchConditional 53 54 55 96 54: Label 97 Branch 55 98 55: Label 99 56: 19(bool) Load 52(cond) 100 SelectionMerge 58 DontFlatten 101 BranchConditional 56 57 58 102 57: Label 103 Store 52(cond) 59 104 Branch 58 105 58: Label 106 SelectionMerge 62 DontFlatten 107 Switch 60 62 108 case 3: 61 109 61: Label 110 Branch 62 111 62: Label 112 Store 65(i) 24 113 Branch 66 114 66: Label 115 LoopMerge 68 69 None 116 Branch 70 117 70: Label 118 71: 21(int) Load 65(i) 119 72: 19(bool) SLessThan 71 31 120 BranchConditional 72 67 68 121 67: Label 122 Branch 69 123 69: Label 124 73: 21(int) Load 65(i) 125 74: 21(int) IAdd 73 34 126 Store 65(i) 74 127 Branch 66 128 68: Label 129 Branch 75 130 75: Label 131 LoopMerge 77 78 None 132 Branch 79 133 79: Label 134 BranchConditional 20 76 77 135 76: Label 136 Branch 78 137 78: Label 138 Branch 75 139 77: Label 140 Branch 80 141 80: Label 142 LoopMerge 82 83 None 143 Branch 81 144 81: Label 145 Branch 83 146 83: Label 147 BranchConditional 20 80 82 148 82: Label 149 Store 84(i) 24 150 Branch 85 151 85: Label 152 LoopMerge 87 88 None 153 Branch 89 154 89: Label 155 90: 21(int) Load 84(i) 156 91: 19(bool) SLessThan 90 31 157 BranchConditional 91 86 87 158 86: Label 159 Branch 88 160 88: Label 161 92: 21(int) Load 84(i) 162 93: 21(int) IAdd 92 34 163 Store 84(i) 93 164 Branch 85 165 87: Label 166 94: 19(bool) Load 52(cond) 167 SelectionMerge 96 None 168 BranchConditional 94 95 96 169 95: Label 170 Branch 96 171 96: Label 172 97: 19(bool) Load 52(cond) 173 SelectionMerge 99 None 174 BranchConditional 97 98 99 175 98: Label 176 Store 52(cond) 59 177 Branch 99 178 99: Label 179 SelectionMerge 101 None 180 Switch 60 101 181 case 3: 100 182 100: Label 183 Branch 101 184 101: Label 185 Branch 104 186 104: Label 187 LoopMerge 106 107 Unroll DontUnroll DependencyLength 2 188 Branch 108 189 108: Label 190 109: 19(bool) Load 52(cond) 191 BranchConditional 109 105 106 192 105: Label 193 Branch 107 194 107: Label 195 Branch 104 196 106: Label 197 SelectionMerge 111 DontFlatten 198 Switch 60 111 199 case 3: 110 200 110: Label 201 Branch 111 202 111: Label 203 114: 19(bool) Load 52(cond) 204 SelectionMerge 116 Flatten 205 BranchConditional 114 115 116 206 115: Label 207 Branch 116 208 116: Label 209 Branch 117 210 117: Label 211 LoopMerge 119 120 DependencyInfinite 212 Branch 121 213 121: Label 214 122: 19(bool) Load 52(cond) 215 BranchConditional 122 118 119 216 118: Label 217 Branch 120 218 120: Label 219 Branch 117 220 119: Label 221 Return 222 FunctionEnd 223 6(f0(): 2 Function None 3 224 7: Label 225 Branch 10 226 10: Label 227 LoopMerge 12 13 DontUnroll 228 Branch 11 229 11: Label 230 Branch 13 231 13: Label 232 Branch 10 233 12: Label 234 Unreachable 235 FunctionEnd 236 8(f1(): 2 Function None 3 237 9: Label 238 Branch 14 239 14: Label 240 LoopMerge 16 17 DontUnroll 241 Branch 18 242 18: Label 243 BranchConditional 20 15 16 244 15: Label 245 Branch 17 246 17: Label 247 Branch 14 248 16: Label 249 Return 250 FunctionEnd 251