Dan Gohman | f17a25c | 2007-07-18 16:29:46 +0000 | [diff] [blame] | 1 | ; RUN: llvm-upgrade < %s | llvm-as | opt -condprop -disable-output |
| 2 | ; PR877 |
| 3 | |
| 4 | target endian = big |
| 5 | target pointersize = 32 |
| 6 | target triple = "powerpc-apple-darwin9.0.0d1" |
| 7 | "struct.kc::impl_Ccode_option" = type { "struct.kc::impl_abstract_phylum" } |
| 8 | "struct.kc::impl_ID" = type { "struct.kc::impl_abstract_phylum", "struct.kc::impl_Ccode_option"*, "struct.kc::impl_casestring__Str"*, int, "struct.kc::impl_casestring__Str"* } |
| 9 | "struct.kc::impl_abstract_phylum" = type { int (...)** } |
| 10 | "struct.kc::impl_casestring__Str" = type { "struct.kc::impl_abstract_phylum", sbyte* } |
| 11 | "struct.kc::impl_elem_patternrepresentation" = type { "struct.kc::impl_abstract_phylum", int, "struct.kc::impl_casestring__Str"*, "struct.kc::impl_ID"* } |
| 12 | "struct.kc::impl_outmostpatterns" = type { "struct.kc::impl_Ccode_option", "struct.kc::impl_elem_patternrepresentation"*, "struct.kc::impl_outmostpatterns"* } |
| 13 | "struct.kc::impl_patternrepresentations" = type { "struct.kc::impl_Ccode_option", "struct.kc::impl_outmostpatterns"*, "struct.kc::impl_patternrepresentations"* } |
| 14 | |
| 15 | implementation ; Functions: |
| 16 | |
| 17 | void %_ZN2kc16compare_patternsEPNS_26impl_patternrepresentationES1_PNS_27impl_patternrepresentationsE() { |
| 18 | entry: |
| 19 | br label %bb1269.outer.outer.outer.outer |
| 20 | |
| 21 | cond_true: ; preds = %cond_true1298 |
| 22 | br label %bb1269.outer69 |
| 23 | |
| 24 | cond_false: ; preds = %cond_true1298 |
| 25 | br bool false, label %cond_next, label %bb51 |
| 26 | |
| 27 | cond_next: ; preds = %cond_false |
| 28 | br bool false, label %bb52, label %bb51 |
| 29 | |
| 30 | bb51: ; preds = %cond_next, %cond_false |
| 31 | br label %bb52 |
| 32 | |
| 33 | bb52: ; preds = %bb51, %cond_next |
| 34 | br bool false, label %cond_false82, label %cond_true55 |
| 35 | |
| 36 | cond_true55: ; preds = %bb52 |
| 37 | br bool false, label %UnifiedReturnBlock, label %cond_true57 |
| 38 | |
| 39 | cond_true57: ; preds = %cond_true55 |
| 40 | br label %UnifiedReturnBlock |
| 41 | |
| 42 | cond_false82: ; preds = %bb52 |
| 43 | br bool false, label %cond_next97, label %bb113 |
| 44 | |
| 45 | cond_next97: ; preds = %cond_false82 |
| 46 | br bool false, label %bb114, label %bb113 |
| 47 | |
| 48 | bb113: ; preds = %cond_next97, %cond_false82 |
| 49 | br label %bb114 |
| 50 | |
| 51 | bb114: ; preds = %bb113, %cond_next97 |
| 52 | br bool false, label %cond_false151, label %cond_true117 |
| 53 | |
| 54 | cond_true117: ; preds = %bb114 |
| 55 | br bool false, label %UnifiedReturnBlock, label %cond_true120 |
| 56 | |
| 57 | cond_true120: ; preds = %cond_true117 |
| 58 | br label %UnifiedReturnBlock |
| 59 | |
| 60 | cond_false151: ; preds = %bb114 |
| 61 | br bool false, label %cond_next166, label %bb182 |
| 62 | |
| 63 | cond_next166: ; preds = %cond_false151 |
| 64 | br bool false, label %bb183, label %bb182 |
| 65 | |
| 66 | bb182: ; preds = %cond_next166, %cond_false151 |
| 67 | br label %bb183 |
| 68 | |
| 69 | bb183: ; preds = %bb182, %cond_next166 |
| 70 | br bool false, label %cond_false256, label %cond_true186 |
| 71 | |
| 72 | cond_true186: ; preds = %bb183 |
| 73 | br bool false, label %cond_true207, label %cond_false214 |
| 74 | |
| 75 | cond_true207: ; preds = %cond_true186 |
| 76 | br label %bb1269.outer38.backedge |
| 77 | |
| 78 | bb1269.outer38.backedge: ; preds = %cond_true545, %cond_true432, %cond_true320, %cond_true207 |
| 79 | br label %bb1269.outer38 |
| 80 | |
| 81 | cond_false214: ; preds = %cond_true186 |
| 82 | br bool false, label %cond_true228, label %cond_false235 |
| 83 | |
| 84 | cond_true228: ; preds = %cond_false214 |
| 85 | br label %bb1269.outer21.backedge |
| 86 | |
| 87 | bb1269.outer21.backedge: ; preds = %cond_true566, %cond_true453, %cond_true341, %cond_true228 |
| 88 | br label %bb1269.outer21 |
| 89 | |
| 90 | cond_false235: ; preds = %cond_false214 |
| 91 | br bool false, label %UnifiedReturnBlock, label %cond_false250 |
| 92 | |
| 93 | cond_false250: ; preds = %cond_false235 |
| 94 | br label %UnifiedUnreachableBlock |
| 95 | |
| 96 | cond_false256: ; preds = %bb183 |
| 97 | br bool false, label %cond_next271, label %bb287 |
| 98 | |
| 99 | cond_next271: ; preds = %cond_false256 |
| 100 | br bool false, label %bb288, label %bb287 |
| 101 | |
| 102 | bb287: ; preds = %cond_next271, %cond_false256 |
| 103 | br label %bb288 |
| 104 | |
| 105 | bb288: ; preds = %bb287, %cond_next271 |
| 106 | br bool false, label %cond_false369, label %cond_true291 |
| 107 | |
| 108 | cond_true291: ; preds = %bb288 |
| 109 | br bool false, label %cond_true320, label %cond_false327 |
| 110 | |
| 111 | cond_true320: ; preds = %cond_true291 |
| 112 | br label %bb1269.outer38.backedge |
| 113 | |
| 114 | cond_false327: ; preds = %cond_true291 |
| 115 | br bool false, label %cond_true341, label %cond_false348 |
| 116 | |
| 117 | cond_true341: ; preds = %cond_false327 |
| 118 | br label %bb1269.outer21.backedge |
| 119 | |
| 120 | cond_false348: ; preds = %cond_false327 |
| 121 | br bool false, label %UnifiedReturnBlock, label %cond_false363 |
| 122 | |
| 123 | cond_false363: ; preds = %cond_false348 |
| 124 | br label %UnifiedUnreachableBlock |
| 125 | |
| 126 | cond_false369: ; preds = %bb288 |
| 127 | br bool false, label %cond_next384, label %bb400 |
| 128 | |
| 129 | cond_next384: ; preds = %cond_false369 |
| 130 | br bool false, label %bb401, label %bb400 |
| 131 | |
| 132 | bb400: ; preds = %cond_next384, %cond_false369 |
| 133 | br label %bb401 |
| 134 | |
| 135 | bb401: ; preds = %bb400, %cond_next384 |
| 136 | br bool false, label %cond_false481, label %cond_true404 |
| 137 | |
| 138 | cond_true404: ; preds = %bb401 |
| 139 | br bool false, label %cond_true432, label %cond_false439 |
| 140 | |
| 141 | cond_true432: ; preds = %cond_true404 |
| 142 | br label %bb1269.outer38.backedge |
| 143 | |
| 144 | cond_false439: ; preds = %cond_true404 |
| 145 | br bool false, label %cond_true453, label %cond_false460 |
| 146 | |
| 147 | cond_true453: ; preds = %cond_false439 |
| 148 | br label %bb1269.outer21.backedge |
| 149 | |
| 150 | cond_false460: ; preds = %cond_false439 |
| 151 | br bool false, label %UnifiedReturnBlock, label %cond_false475 |
| 152 | |
| 153 | cond_false475: ; preds = %cond_false460 |
| 154 | br label %UnifiedUnreachableBlock |
| 155 | |
| 156 | cond_false481: ; preds = %bb401 |
| 157 | br bool false, label %cond_next496, label %bb512 |
| 158 | |
| 159 | cond_next496: ; preds = %cond_false481 |
| 160 | br bool false, label %bb513, label %bb512 |
| 161 | |
| 162 | bb512: ; preds = %cond_next496, %cond_false481 |
| 163 | br label %bb513 |
| 164 | |
| 165 | bb513: ; preds = %bb512, %cond_next496 |
| 166 | br bool false, label %cond_false594, label %cond_true516 |
| 167 | |
| 168 | cond_true516: ; preds = %bb513 |
| 169 | br bool false, label %cond_true545, label %cond_false552 |
| 170 | |
| 171 | cond_true545: ; preds = %cond_true516 |
| 172 | br label %bb1269.outer38.backedge |
| 173 | |
| 174 | cond_false552: ; preds = %cond_true516 |
| 175 | br bool false, label %cond_true566, label %cond_false573 |
| 176 | |
| 177 | cond_true566: ; preds = %cond_false552 |
| 178 | br label %bb1269.outer21.backedge |
| 179 | |
| 180 | cond_false573: ; preds = %cond_false552 |
| 181 | br bool false, label %UnifiedReturnBlock, label %cond_false588 |
| 182 | |
| 183 | cond_false588: ; preds = %cond_false573 |
| 184 | br label %UnifiedUnreachableBlock |
| 185 | |
| 186 | cond_false594: ; preds = %bb513 |
| 187 | br bool false, label %cond_next609, label %bb625 |
| 188 | |
| 189 | cond_next609: ; preds = %cond_false594 |
| 190 | br bool false, label %bb626, label %bb625 |
| 191 | |
| 192 | bb625: ; preds = %cond_next609, %cond_false594 |
| 193 | br label %bb626 |
| 194 | |
| 195 | bb626: ; preds = %bb625, %cond_next609 |
| 196 | br bool false, label %cond_false707, label %cond_true629 |
| 197 | |
| 198 | cond_true629: ; preds = %bb626 |
| 199 | br bool false, label %cond_true658, label %cond_false665 |
| 200 | |
| 201 | cond_true658: ; preds = %cond_true629 |
| 202 | br label %bb1269.outer2.backedge |
| 203 | |
| 204 | bb1269.outer2.backedge: ; preds = %cond_true679, %cond_true658 |
| 205 | br label %bb1269.outer2 |
| 206 | |
| 207 | cond_false665: ; preds = %cond_true629 |
| 208 | br bool false, label %cond_true679, label %cond_false686 |
| 209 | |
| 210 | cond_true679: ; preds = %cond_false665 |
| 211 | br label %bb1269.outer2.backedge |
| 212 | |
| 213 | cond_false686: ; preds = %cond_false665 |
| 214 | br bool false, label %UnifiedReturnBlock, label %cond_false701 |
| 215 | |
| 216 | cond_false701: ; preds = %cond_false686 |
| 217 | br label %UnifiedUnreachableBlock |
| 218 | |
| 219 | cond_false707: ; preds = %bb626 |
| 220 | br bool false, label %cond_next722, label %bb738 |
| 221 | |
| 222 | cond_next722: ; preds = %cond_false707 |
| 223 | br bool false, label %bb739, label %bb738 |
| 224 | |
| 225 | bb738: ; preds = %cond_next722, %cond_false707 |
| 226 | br label %bb739 |
| 227 | |
| 228 | bb739: ; preds = %bb738, %cond_next722 |
| 229 | br bool false, label %cond_false820, label %cond_true742 |
| 230 | |
| 231 | cond_true742: ; preds = %bb739 |
| 232 | br bool false, label %cond_true771, label %cond_false778 |
| 233 | |
| 234 | cond_true771: ; preds = %cond_true742 |
| 235 | br label %bb1269.outer.backedge |
| 236 | |
| 237 | bb1269.outer.backedge: ; preds = %cond_true792, %cond_true771 |
| 238 | br label %bb1269.outer |
| 239 | |
| 240 | cond_false778: ; preds = %cond_true742 |
| 241 | br bool false, label %cond_true792, label %cond_false799 |
| 242 | |
| 243 | cond_true792: ; preds = %cond_false778 |
| 244 | br label %bb1269.outer.backedge |
| 245 | |
| 246 | cond_false799: ; preds = %cond_false778 |
| 247 | br bool false, label %UnifiedReturnBlock, label %cond_false814 |
| 248 | |
| 249 | cond_false814: ; preds = %cond_false799 |
| 250 | br label %UnifiedUnreachableBlock |
| 251 | |
| 252 | cond_false820: ; preds = %bb739 |
| 253 | br bool false, label %cond_next835, label %bb851 |
| 254 | |
| 255 | cond_next835: ; preds = %cond_false820 |
| 256 | br bool false, label %bb852, label %bb851 |
| 257 | |
| 258 | bb851: ; preds = %cond_next835, %cond_false820 |
| 259 | br label %bb852 |
| 260 | |
| 261 | bb852: ; preds = %bb851, %cond_next835 |
| 262 | br bool false, label %cond_false933, label %cond_true855 |
| 263 | |
| 264 | cond_true855: ; preds = %bb852 |
| 265 | br bool false, label %cond_true884, label %cond_false891 |
| 266 | |
| 267 | cond_true884: ; preds = %cond_true855 |
| 268 | br label %bb1269.outer.outer.backedge |
| 269 | |
| 270 | bb1269.outer.outer.backedge: ; preds = %cond_true905, %cond_true884 |
| 271 | br label %bb1269.outer.outer |
| 272 | |
| 273 | cond_false891: ; preds = %cond_true855 |
| 274 | br bool false, label %cond_true905, label %cond_false912 |
| 275 | |
| 276 | cond_true905: ; preds = %cond_false891 |
| 277 | br label %bb1269.outer.outer.backedge |
| 278 | |
| 279 | cond_false912: ; preds = %cond_false891 |
| 280 | br bool false, label %UnifiedReturnBlock, label %cond_false927 |
| 281 | |
| 282 | cond_false927: ; preds = %cond_false912 |
| 283 | br label %UnifiedUnreachableBlock |
| 284 | |
| 285 | cond_false933: ; preds = %bb852 |
| 286 | br bool false, label %cond_next948, label %bb964 |
| 287 | |
| 288 | cond_next948: ; preds = %cond_false933 |
| 289 | br bool false, label %bb965, label %bb964 |
| 290 | |
| 291 | bb964: ; preds = %cond_next948, %cond_false933 |
| 292 | br label %bb965 |
| 293 | |
| 294 | bb965: ; preds = %bb964, %cond_next948 |
| 295 | br bool false, label %cond_false1046, label %cond_true968 |
| 296 | |
| 297 | cond_true968: ; preds = %bb965 |
| 298 | br bool false, label %cond_true997, label %cond_false1004 |
| 299 | |
| 300 | cond_true997: ; preds = %cond_true968 |
| 301 | br label %bb1269.outer.outer.outer.backedge |
| 302 | |
| 303 | bb1269.outer.outer.outer.backedge: ; preds = %cond_true1018, %cond_true997 |
| 304 | br label %bb1269.outer.outer.outer |
| 305 | |
| 306 | cond_false1004: ; preds = %cond_true968 |
| 307 | br bool false, label %cond_true1018, label %cond_false1025 |
| 308 | |
| 309 | cond_true1018: ; preds = %cond_false1004 |
| 310 | br label %bb1269.outer.outer.outer.backedge |
| 311 | |
| 312 | cond_false1025: ; preds = %cond_false1004 |
| 313 | br bool false, label %UnifiedReturnBlock, label %cond_false1040 |
| 314 | |
| 315 | cond_false1040: ; preds = %cond_false1025 |
| 316 | br label %UnifiedUnreachableBlock |
| 317 | |
| 318 | cond_false1046: ; preds = %bb965 |
| 319 | br bool false, label %cond_next1061, label %bb1077 |
| 320 | |
| 321 | cond_next1061: ; preds = %cond_false1046 |
| 322 | br bool false, label %bb1078, label %bb1077 |
| 323 | |
| 324 | bb1077: ; preds = %cond_next1061, %cond_false1046 |
| 325 | br label %bb1078 |
| 326 | |
| 327 | bb1078: ; preds = %bb1077, %cond_next1061 |
| 328 | %tmp1080 = phi bool [ true, %bb1077 ], [ false, %cond_next1061 ] ; <bool> [#uses=1] |
| 329 | br bool %tmp1080, label %cond_false1159, label %cond_true1081 |
| 330 | |
| 331 | cond_true1081: ; preds = %bb1078 |
| 332 | br bool false, label %cond_true1110, label %cond_false1117 |
| 333 | |
| 334 | cond_true1110: ; preds = %cond_true1081 |
| 335 | br label %bb1269.outer.outer.outer.outer.backedge |
| 336 | |
| 337 | bb1269.outer.outer.outer.outer.backedge: ; preds = %cond_true1131, %cond_true1110 |
| 338 | br label %bb1269.outer.outer.outer.outer |
| 339 | |
| 340 | cond_false1117: ; preds = %cond_true1081 |
| 341 | br bool false, label %cond_true1131, label %cond_false1138 |
| 342 | |
| 343 | cond_true1131: ; preds = %cond_false1117 |
| 344 | br label %bb1269.outer.outer.outer.outer.backedge |
| 345 | |
| 346 | cond_false1138: ; preds = %cond_false1117 |
| 347 | br bool false, label %UnifiedReturnBlock, label %cond_false1153 |
| 348 | |
| 349 | cond_false1153: ; preds = %cond_false1138 |
| 350 | br label %UnifiedUnreachableBlock |
| 351 | |
| 352 | cond_false1159: ; preds = %bb1078 |
| 353 | %tmp.i119.lcssa35.lcssa.lcssa.lcssa.lcssa.lcssa = phi "struct.kc::impl_elem_patternrepresentation"* [ null, %bb1078 ] ; <"struct.kc::impl_elem_patternrepresentation"*> [#uses=0] |
| 354 | br bool false, label %UnifiedReturnBlock, label %cond_false1174 |
| 355 | |
| 356 | cond_false1174: ; preds = %cond_false1159 |
| 357 | br bool false, label %UnifiedReturnBlock, label %cond_false1189 |
| 358 | |
| 359 | cond_false1189: ; preds = %cond_false1174 |
| 360 | br bool false, label %UnifiedReturnBlock, label %cond_false1204 |
| 361 | |
| 362 | cond_false1204: ; preds = %cond_false1189 |
| 363 | br bool false, label %UnifiedReturnBlock, label %cond_false1219 |
| 364 | |
| 365 | cond_false1219: ; preds = %cond_false1204 |
| 366 | br bool false, label %UnifiedReturnBlock, label %cond_true1222 |
| 367 | |
| 368 | cond_true1222: ; preds = %cond_false1219 |
| 369 | br label %UnifiedReturnBlock |
| 370 | |
| 371 | bb1269.outer.outer.outer.outer: ; preds = %bb1269.outer.outer.outer.outer.backedge, %entry |
| 372 | br label %bb1269.outer.outer.outer |
| 373 | |
| 374 | bb1269.outer.outer.outer: ; preds = %bb1269.outer.outer.outer.outer, %bb1269.outer.outer.outer.backedge |
| 375 | br label %bb1269.outer.outer |
| 376 | |
| 377 | bb1269.outer.outer: ; preds = %bb1269.outer.outer.outer, %bb1269.outer.outer.backedge |
| 378 | br label %bb1269.outer |
| 379 | |
| 380 | bb1269.outer: ; preds = %bb1269.outer.outer, %bb1269.outer.backedge |
| 381 | br label %bb1269.outer2 |
| 382 | |
| 383 | bb1269.outer2: ; preds = %bb1269.outer, %bb1269.outer2.backedge |
| 384 | br label %bb1269.outer21 |
| 385 | |
| 386 | bb1269.outer21: ; preds = %bb1269.outer2, %bb1269.outer21.backedge |
| 387 | br label %bb1269.outer38 |
| 388 | |
| 389 | bb1269.outer38: ; preds = %bb1269.outer21, %bb1269.outer38.backedge |
| 390 | br label %bb1269.outer54 |
| 391 | |
| 392 | bb1269.outer54: ; preds = %bb1269.outer38 |
| 393 | br label %bb1269.outer69 |
| 394 | |
| 395 | bb1269.outer69: ; preds = %bb1269.outer54, %cond_true |
| 396 | br label %bb1269 |
| 397 | |
| 398 | bb1269: ; preds = %bb1269.outer69 |
| 399 | br bool false, label %cond_next1281, label %bb1294 |
| 400 | |
| 401 | cond_next1281: ; preds = %bb1269 |
| 402 | br bool false, label %cond_true1298, label %bb1294 |
| 403 | |
| 404 | bb1294: ; preds = %cond_next1281, %bb1269 |
| 405 | br bool false, label %cond_true1331, label %cond_next1313 |
| 406 | |
| 407 | cond_true1298: ; preds = %cond_next1281 |
| 408 | br bool false, label %cond_false, label %cond_true |
| 409 | |
| 410 | cond_next1313: ; preds = %bb1294 |
| 411 | br bool false, label %cond_true1331, label %cond_next1355 |
| 412 | |
| 413 | cond_true1331: ; preds = %cond_next1313, %bb1294 |
| 414 | br bool false, label %cond_false1346, label %cond_true1342 |
| 415 | |
| 416 | cond_true1342: ; preds = %cond_true1331 |
| 417 | br label %cond_next1350 |
| 418 | |
| 419 | cond_false1346: ; preds = %cond_true1331 |
| 420 | br label %cond_next1350 |
| 421 | |
| 422 | cond_next1350: ; preds = %cond_false1346, %cond_true1342 |
| 423 | br label %bb.i |
| 424 | |
| 425 | bb.i: ; preds = %bb.i, %cond_next1350 |
| 426 | br bool false, label %_ZN2kc18impl_abstract_list8freelistEv.exit, label %bb.i |
| 427 | |
| 428 | _ZN2kc18impl_abstract_list8freelistEv.exit: ; preds = %bb.i |
| 429 | br label %cond_next1355 |
| 430 | |
| 431 | cond_next1355: ; preds = %_ZN2kc18impl_abstract_list8freelistEv.exit, %cond_next1313 |
| 432 | br bool false, label %cond_next1363, label %bb1388 |
| 433 | |
| 434 | cond_next1363: ; preds = %cond_next1355 |
| 435 | br bool false, label %UnifiedReturnBlock, label %cond_true1366 |
| 436 | |
| 437 | cond_true1366: ; preds = %cond_next1363 |
| 438 | br label %UnifiedReturnBlock |
| 439 | |
| 440 | bb1388: ; preds = %cond_next1355 |
| 441 | br bool false, label %UnifiedReturnBlock, label %bb1414.preheader |
| 442 | |
| 443 | bb1414.preheader: ; preds = %bb1388 |
| 444 | br label %bb1414 |
| 445 | |
| 446 | bb1414: ; preds = %cond_true1426, %bb1414.preheader |
| 447 | br bool false, label %cond_true1426, label %bb1429 |
| 448 | |
| 449 | cond_true1426: ; preds = %bb1414 |
| 450 | br label %bb1414 |
| 451 | |
| 452 | bb1429: ; preds = %bb1414 |
| 453 | br bool false, label %cond_true1431, label %UnifiedReturnBlock |
| 454 | |
| 455 | cond_true1431: ; preds = %bb1429 |
| 456 | br bool false, label %UnifiedReturnBlock, label %cond_true1434 |
| 457 | |
| 458 | cond_true1434: ; preds = %cond_true1431 |
| 459 | br label %UnifiedReturnBlock |
| 460 | |
| 461 | UnifiedUnreachableBlock: ; preds = %cond_false1153, %cond_false1040, %cond_false927, %cond_false814, %cond_false701, %cond_false588, %cond_false475, %cond_false363, %cond_false250 |
| 462 | unreachable |
| 463 | |
| 464 | UnifiedReturnBlock: ; preds = %cond_true1434, %cond_true1431, %bb1429, %bb1388, %cond_true1366, %cond_next1363, %cond_true1222, %cond_false1219, %cond_false1204, %cond_false1189, %cond_false1174, %cond_false1159, %cond_false1138, %cond_false1025, %cond_false912, %cond_false799, %cond_false686, %cond_false573, %cond_false460, %cond_false348, %cond_false235, %cond_true120, %cond_true117, %cond_true57, %cond_true55 |
| 465 | ret void |
| 466 | } |