Home | History | Annotate | Download | only in ObjCARC
      1 ; RUN: opt -objc-arc -S < %s
      2 ; rdar://12277446
      3 ; rdar://12480535
      4 
      5 ; The total number of paths grows exponentially with the number of branches, and a
      6 ; computation of this number can overflow any reasonable fixed-sized
      7 ; integer. This can occur in both the addition phase when we are adding up the
      8 ; total bottomup/topdown paths and when we multiply them together at the end.
      9 
     10 target datalayout = "e-p:32:32:32-i1:8:32-i8:8:32-i16:16:32-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:32:64-v128:32:128-a0:0:32-n32-S32"
     11 target triple = "thumbv7-apple-ios5.0.0"
     12 
     13 %struct.NSConstantString.11.33.55.77.99.121.143.332.1130.1340.2768 = type { i32*, i32, i8*, i32 }
     14 
     15 @_unnamed_cfstring_591 = external constant %struct.NSConstantString.11.33.55.77.99.121.143.332.1130.1340.2768, section "__DATA,__cfstring"
     16 
     17 declare i8* @objc_retain(i8*) nonlazybind
     18 declare i8* @objc_retainAutoreleasedReturnValue(i8*) nonlazybind
     19 declare void @objc_release(i8*) nonlazybind
     20 declare i8* @returner()
     21 
     22 define hidden void @test1() {
     23 entry:
     24   br i1 undef, label %msgSend.nullinit, label %msgSend.call
     25 
     26 msgSend.call:                                     ; preds = %entry
     27   br label %msgSend.cont
     28 
     29 msgSend.nullinit:                                 ; preds = %entry
     30   br label %msgSend.cont
     31 
     32 msgSend.cont:                                     ; preds = %msgSend.nullinit, %msgSend.call
     33   %0 = bitcast %struct.NSConstantString.11.33.55.77.99.121.143.332.1130.1340.2768* @_unnamed_cfstring_591 to i8*
     34   %1 = call i8* @objc_retain(i8* %0) nounwind
     35   br i1 undef, label %msgSend.nullinit33, label %msgSend.call32
     36 
     37 msgSend.call32:                                   ; preds = %if.end10
     38   br label %msgSend.cont34
     39 
     40 msgSend.nullinit33:                               ; preds = %if.end10
     41   br label %msgSend.cont34
     42 
     43 msgSend.cont34:                                   ; preds = %msgSend.nullinit33, %msgSend.call32
     44   br i1 undef, label %msgSend.nullinit38, label %msgSend.call37
     45 
     46 msgSend.call37:                                   ; preds = %msgSend.cont34
     47   br label %msgSend.cont39
     48 
     49 msgSend.nullinit38:                               ; preds = %msgSend.cont34
     50   br label %msgSend.cont39
     51 
     52 msgSend.cont39:                                   ; preds = %msgSend.nullinit38, %msgSend.call37
     53   br i1 undef, label %msgSend.nullinit49, label %msgSend.call48
     54 
     55 msgSend.call48:                                   ; preds = %msgSend.cont39
     56   br label %msgSend.cont50
     57 
     58 msgSend.nullinit49:                               ; preds = %msgSend.cont39
     59   br label %msgSend.cont50
     60 
     61 msgSend.cont50:                                   ; preds = %msgSend.nullinit49, %msgSend.call48
     62   br i1 undef, label %msgSend.nullinit61, label %msgSend.call60
     63 
     64 msgSend.call60:                                   ; preds = %msgSend.cont50
     65   br label %msgSend.cont62
     66 
     67 msgSend.nullinit61:                               ; preds = %msgSend.cont50
     68   br label %msgSend.cont62
     69 
     70 msgSend.cont62:                                   ; preds = %msgSend.nullinit61, %msgSend.call60
     71   br i1 undef, label %msgSend.nullinit67, label %msgSend.call66
     72 
     73 msgSend.call66:                                   ; preds = %msgSend.cont62
     74   br label %msgSend.cont68
     75 
     76 msgSend.nullinit67:                               ; preds = %msgSend.cont62
     77   br label %msgSend.cont68
     78 
     79 msgSend.cont68:                                   ; preds = %msgSend.nullinit67, %msgSend.call66
     80   br i1 undef, label %msgSend.nullinit84, label %msgSend.call83
     81 
     82 msgSend.call83:                                   ; preds = %msgSend.cont68
     83   br label %msgSend.cont85
     84 
     85 msgSend.nullinit84:                               ; preds = %msgSend.cont68
     86   br label %msgSend.cont85
     87 
     88 msgSend.cont85:                                   ; preds = %msgSend.nullinit84, %msgSend.call83
     89   br i1 undef, label %msgSend.nullinit90, label %msgSend.call89
     90 
     91 msgSend.call89:                                   ; preds = %msgSend.cont85
     92   br label %msgSend.cont91
     93 
     94 msgSend.nullinit90:                               ; preds = %msgSend.cont85
     95   br label %msgSend.cont91
     96 
     97 msgSend.cont91:                                   ; preds = %msgSend.nullinit90, %msgSend.call89
     98   br i1 undef, label %msgSend.nullinit104, label %msgSend.call103
     99 
    100 msgSend.call103:                                  ; preds = %msgSend.cont91
    101   br label %msgSend.cont105
    102 
    103 msgSend.nullinit104:                              ; preds = %msgSend.cont91
    104   br label %msgSend.cont105
    105 
    106 msgSend.cont105:                                  ; preds = %msgSend.nullinit104, %msgSend.call103
    107   br i1 undef, label %land.lhs.true, label %if.end123
    108 
    109 land.lhs.true:                                    ; preds = %msgSend.cont105
    110   br i1 undef, label %if.then117, label %if.end123
    111 
    112 if.then117:                                       ; preds = %land.lhs.true
    113   br label %if.end123
    114 
    115 if.end123:                                        ; preds = %if.then117, %land.lhs.true, %msgSend.cont105
    116   br i1 undef, label %msgSend.nullinit132, label %msgSend.call131
    117 
    118 msgSend.call131:                                  ; preds = %if.end123
    119   br label %msgSend.cont133
    120 
    121 msgSend.nullinit132:                              ; preds = %if.end123
    122   br label %msgSend.cont133
    123 
    124 msgSend.cont133:                                  ; preds = %msgSend.nullinit132, %msgSend.call131
    125   br i1 undef, label %msgSend.nullinit139, label %msgSend.call138
    126 
    127 msgSend.call138:                                  ; preds = %msgSend.cont133
    128   br label %msgSend.cont140
    129 
    130 msgSend.nullinit139:                              ; preds = %msgSend.cont133
    131   br label %msgSend.cont140
    132 
    133 msgSend.cont140:                                  ; preds = %msgSend.nullinit139, %msgSend.call138
    134   br i1 undef, label %if.then151, label %if.end157
    135 
    136 if.then151:                                       ; preds = %msgSend.cont140
    137   br label %if.end157
    138 
    139 if.end157:                                        ; preds = %if.then151, %msgSend.cont140
    140   br i1 undef, label %msgSend.nullinit164, label %msgSend.call163
    141 
    142 msgSend.call163:                                  ; preds = %if.end157
    143   br label %msgSend.cont165
    144 
    145 msgSend.nullinit164:                              ; preds = %if.end157
    146   br label %msgSend.cont165
    147 
    148 msgSend.cont165:                                  ; preds = %msgSend.nullinit164, %msgSend.call163
    149   br i1 undef, label %msgSend.nullinit176, label %msgSend.call175
    150 
    151 msgSend.call175:                                  ; preds = %msgSend.cont165
    152   br label %msgSend.cont177
    153 
    154 msgSend.nullinit176:                              ; preds = %msgSend.cont165
    155   br label %msgSend.cont177
    156 
    157 msgSend.cont177:                                  ; preds = %msgSend.nullinit176, %msgSend.call175
    158   br i1 undef, label %land.lhs.true181, label %if.end202
    159 
    160 land.lhs.true181:                                 ; preds = %msgSend.cont177
    161   br i1 undef, label %if.then187, label %if.end202
    162 
    163 if.then187:                                       ; preds = %land.lhs.true181
    164   br i1 undef, label %msgSend.nullinit199, label %msgSend.call198
    165 
    166 msgSend.call198:                                  ; preds = %if.then187
    167   br label %msgSend.cont200
    168 
    169 msgSend.nullinit199:                              ; preds = %if.then187
    170   br label %msgSend.cont200
    171 
    172 msgSend.cont200:                                  ; preds = %msgSend.nullinit199, %msgSend.call198
    173   br label %if.end202
    174 
    175 if.end202:                                        ; preds = %msgSend.cont200, %land.lhs.true181, %msgSend.cont177
    176   br i1 undef, label %msgSend.nullinit236, label %msgSend.call235
    177 
    178 msgSend.call235:                                  ; preds = %if.end202
    179   br label %msgSend.cont237
    180 
    181 msgSend.nullinit236:                              ; preds = %if.end202
    182   br label %msgSend.cont237
    183 
    184 msgSend.cont237:                                  ; preds = %msgSend.nullinit236, %msgSend.call235
    185   br i1 undef, label %msgSend.nullinit254, label %msgSend.call253
    186 
    187 msgSend.call253:                                  ; preds = %msgSend.cont237
    188   br label %msgSend.cont255
    189 
    190 msgSend.nullinit254:                              ; preds = %msgSend.cont237
    191   br label %msgSend.cont255
    192 
    193 msgSend.cont255:                                  ; preds = %msgSend.nullinit254, %msgSend.call253
    194   br i1 undef, label %msgSend.nullinit269, label %msgSend.call268
    195 
    196 msgSend.call268:                                  ; preds = %msgSend.cont255
    197   br label %msgSend.cont270
    198 
    199 msgSend.nullinit269:                              ; preds = %msgSend.cont255
    200   br label %msgSend.cont270
    201 
    202 msgSend.cont270:                                  ; preds = %msgSend.nullinit269, %msgSend.call268
    203   br i1 undef, label %msgSend.nullinit281, label %msgSend.call280
    204 
    205 msgSend.call280:                                  ; preds = %msgSend.cont270
    206   br label %msgSend.cont282
    207 
    208 msgSend.nullinit281:                              ; preds = %msgSend.cont270
    209   br label %msgSend.cont282
    210 
    211 msgSend.cont282:                                  ; preds = %msgSend.nullinit281, %msgSend.call280
    212   br i1 undef, label %msgSend.nullinit287, label %msgSend.call286
    213 
    214 msgSend.call286:                                  ; preds = %msgSend.cont282
    215   br label %msgSend.cont288
    216 
    217 msgSend.nullinit287:                              ; preds = %msgSend.cont282
    218   br label %msgSend.cont288
    219 
    220 msgSend.cont288:                                  ; preds = %msgSend.nullinit287, %msgSend.call286
    221   br i1 undef, label %msgSend.nullinit303, label %msgSend.call302
    222 
    223 msgSend.call302:                                  ; preds = %msgSend.cont288
    224   br label %msgSend.cont304
    225 
    226 msgSend.nullinit303:                              ; preds = %msgSend.cont288
    227   br label %msgSend.cont304
    228 
    229 msgSend.cont304:                                  ; preds = %msgSend.nullinit303, %msgSend.call302
    230   br i1 undef, label %msgSend.nullinit344, label %msgSend.call343
    231 
    232 msgSend.call343:                                  ; preds = %msgSend.cont304
    233   br label %msgSend.cont345
    234 
    235 msgSend.nullinit344:                              ; preds = %msgSend.cont304
    236   br label %msgSend.cont345
    237 
    238 msgSend.cont345:                                  ; preds = %msgSend.nullinit344, %msgSend.call343
    239   br i1 undef, label %msgSend.nullinit350, label %msgSend.call349
    240 
    241 msgSend.call349:                                  ; preds = %msgSend.cont345
    242   br label %msgSend.cont351
    243 
    244 msgSend.nullinit350:                              ; preds = %msgSend.cont345
    245   br label %msgSend.cont351
    246 
    247 msgSend.cont351:                                  ; preds = %msgSend.nullinit350, %msgSend.call349
    248   br i1 undef, label %msgSend.nullinit366, label %msgSend.call365
    249 
    250 msgSend.call365:                                  ; preds = %msgSend.cont351
    251   br label %msgSend.cont367
    252 
    253 msgSend.nullinit366:                              ; preds = %msgSend.cont351
    254   br label %msgSend.cont367
    255 
    256 msgSend.cont367:                                  ; preds = %msgSend.nullinit366, %msgSend.call365
    257   br i1 undef, label %msgSend.nullinit376, label %msgSend.call375
    258 
    259 msgSend.call375:                                  ; preds = %msgSend.cont367
    260   br label %msgSend.cont377
    261 
    262 msgSend.nullinit376:                              ; preds = %msgSend.cont367
    263   br label %msgSend.cont377
    264 
    265 msgSend.cont377:                                  ; preds = %msgSend.nullinit376, %msgSend.call375
    266   br i1 undef, label %if.then384, label %if.else401
    267 
    268 if.then384:                                       ; preds = %msgSend.cont377
    269   br i1 undef, label %msgSend.nullinit392, label %msgSend.call391
    270 
    271 msgSend.call391:                                  ; preds = %if.then384
    272   br label %msgSend.cont393
    273 
    274 msgSend.nullinit392:                              ; preds = %if.then384
    275   br label %msgSend.cont393
    276 
    277 msgSend.cont393:                                  ; preds = %msgSend.nullinit392, %msgSend.call391
    278   br label %if.end418
    279 
    280 if.else401:                                       ; preds = %msgSend.cont377
    281   br i1 undef, label %msgSend.nullinit409, label %msgSend.call408
    282 
    283 msgSend.call408:                                  ; preds = %if.else401
    284   br label %msgSend.cont410
    285 
    286 msgSend.nullinit409:                              ; preds = %if.else401
    287   br label %msgSend.cont410
    288 
    289 msgSend.cont410:                                  ; preds = %msgSend.nullinit409, %msgSend.call408
    290   br label %if.end418
    291 
    292 if.end418:                                        ; preds = %msgSend.cont410, %msgSend.cont393
    293   br i1 undef, label %msgSend.nullinit470, label %msgSend.call469
    294 
    295 msgSend.call469:                                  ; preds = %if.end418
    296   br label %msgSend.cont471
    297 
    298 msgSend.nullinit470:                              ; preds = %if.end418
    299   br label %msgSend.cont471
    300 
    301 msgSend.cont471:                                  ; preds = %msgSend.nullinit470, %msgSend.call469
    302   br i1 undef, label %msgSend.nullinit484, label %msgSend.call483
    303 
    304 msgSend.call483:                                  ; preds = %msgSend.cont471
    305   br label %msgSend.cont485
    306 
    307 msgSend.nullinit484:                              ; preds = %msgSend.cont471
    308   br label %msgSend.cont485
    309 
    310 msgSend.cont485:                                  ; preds = %msgSend.nullinit484, %msgSend.call483
    311   br i1 undef, label %msgSend.nullinit500, label %msgSend.call499
    312 
    313 msgSend.call499:                                  ; preds = %msgSend.cont485
    314   br label %msgSend.cont501
    315 
    316 msgSend.nullinit500:                              ; preds = %msgSend.cont485
    317   br label %msgSend.cont501
    318 
    319 msgSend.cont501:                                  ; preds = %msgSend.nullinit500, %msgSend.call499
    320   br i1 undef, label %msgSend.nullinit506, label %msgSend.call505
    321 
    322 msgSend.call505:                                  ; preds = %msgSend.cont501
    323   br label %msgSend.cont507
    324 
    325 msgSend.nullinit506:                              ; preds = %msgSend.cont501
    326   br label %msgSend.cont507
    327 
    328 msgSend.cont507:                                  ; preds = %msgSend.nullinit506, %msgSend.call505
    329   call void @objc_release(i8* %0) nounwind, !clang.imprecise_release !0
    330   ret void
    331 }
    332 
    333 ; Function Attrs: optsize ssp uwtable
    334 define void @test2() unnamed_addr align 2 {
    335 bb:
    336   br i1 undef, label %bb3, label %bb2
    337 
    338 bb2:                                              ; preds = %bb
    339   br label %bb3
    340 
    341 bb3:                                              ; preds = %bb2, %bb
    342   br i1 undef, label %bb5, label %bb4
    343 
    344 bb4:                                              ; preds = %bb3
    345   br label %bb5
    346 
    347 bb5:                                              ; preds = %bb4, %bb3
    348   br i1 undef, label %bb7, label %bb6
    349 
    350 bb6:                                              ; preds = %bb5
    351   br label %bb7
    352 
    353 bb7:                                              ; preds = %bb6, %bb5
    354   br i1 undef, label %bb9, label %bb8
    355 
    356 bb8:                                              ; preds = %bb7
    357   unreachable
    358 
    359 bb9:                                              ; preds = %bb7
    360   br i1 undef, label %bb11, label %bb10
    361 
    362 bb10:                                             ; preds = %bb9
    363   br label %bb11
    364 
    365 bb11:                                             ; preds = %bb10, %bb9
    366   br i1 undef, label %bb13, label %bb12
    367 
    368 bb12:                                             ; preds = %bb11
    369   br label %bb13
    370 
    371 bb13:                                             ; preds = %bb12, %bb11
    372   br i1 undef, label %bb15, label %bb14
    373 
    374 bb14:                                             ; preds = %bb13
    375   br label %bb15
    376 
    377 bb15:                                             ; preds = %bb14, %bb13
    378   br i1 undef, label %bb17, label %bb16
    379 
    380 bb16:                                             ; preds = %bb15
    381   br label %bb17
    382 
    383 bb17:                                             ; preds = %bb16, %bb15
    384   br i1 undef, label %bb19, label %bb18
    385 
    386 bb18:                                             ; preds = %bb17
    387   br label %bb19
    388 
    389 bb19:                                             ; preds = %bb18, %bb17
    390   br i1 undef, label %bb222, label %bb20
    391 
    392 bb20:                                             ; preds = %bb19
    393   br i1 undef, label %bb222, label %bb21
    394 
    395 bb21:                                             ; preds = %bb20
    396   br i1 undef, label %bb22, label %bb30
    397 
    398 bb22:                                             ; preds = %bb21
    399   br i1 undef, label %bb23, label %bb32
    400 
    401 bb23:                                             ; preds = %bb22
    402   br i1 undef, label %bb24, label %bb34
    403 
    404 bb24:                                             ; preds = %bb23
    405   br i1 undef, label %bb26, label %bb25
    406 
    407 bb25:                                             ; preds = %bb24
    408   br label %bb27
    409 
    410 bb26:                                             ; preds = %bb24
    411   br label %bb27
    412 
    413 bb27:                                             ; preds = %bb26, %bb25
    414   br i1 undef, label %bb28, label %bb42
    415 
    416 bb28:                                             ; preds = %bb27
    417   br i1 undef, label %bb36, label %bb29
    418 
    419 bb29:                                             ; preds = %bb28
    420   br label %bb36
    421 
    422 bb30:                                             ; preds = %bb210, %bb207, %bb203, %bb199, %bb182, %bb176, %bb174, %bb171, %bb136, %bb132, %bb21
    423   br label %bb213
    424 
    425 bb32:                                             ; preds = %bb22
    426   unreachable
    427 
    428 bb34:                                             ; preds = %bb23
    429   unreachable
    430 
    431 bb36:                                             ; preds = %bb29, %bb28
    432   br i1 undef, label %bb38, label %bb37
    433 
    434 bb37:                                             ; preds = %bb36
    435   br label %bb39
    436 
    437 bb38:                                             ; preds = %bb36
    438   br label %bb39
    439 
    440 bb39:                                             ; preds = %bb38, %bb37
    441   br i1 undef, label %bb41, label %bb40
    442 
    443 bb40:                                             ; preds = %bb39
    444   unreachable
    445 
    446 bb41:                                             ; preds = %bb39
    447   br label %bb42
    448 
    449 bb42:                                             ; preds = %bb41, %bb27
    450   br i1 undef, label %bb43, label %bb214
    451 
    452 bb43:                                             ; preds = %bb42
    453   br i1 undef, label %bb47, label %bb45
    454 
    455 bb45:                                             ; preds = %bb130, %bb128, %bb126, %bb124, %bb122, %bb120, %bb118, %bb116, %bb114, %bb112, %bb110, %bb108, %bb105, %bb102, %bb100, %bb96, %bb94, %bb90, %bb88, %bb84, %bb82, %bb78, %bb76, %bb72, %bb70, %bb66, %bb64, %bb60, %bb58, %bb54, %bb51, %bb43
    456   unreachable
    457 
    458 bb47:                                             ; preds = %bb43
    459   br i1 undef, label %bb48, label %bb106
    460 
    461 bb48:                                             ; preds = %bb47
    462   br i1 undef, label %bb50, label %bb49
    463 
    464 bb49:                                             ; preds = %bb48
    465   br label %bb51
    466 
    467 bb50:                                             ; preds = %bb48
    468   br label %bb51
    469 
    470 bb51:                                             ; preds = %bb50, %bb49
    471   br i1 undef, label %bb53, label %bb45
    472 
    473 bb53:                                             ; preds = %bb51
    474   br i1 undef, label %bb54, label %bb134
    475 
    476 bb54:                                             ; preds = %bb53
    477   br i1 undef, label %bb55, label %bb45
    478 
    479 bb55:                                             ; preds = %bb54
    480   br i1 undef, label %bb57, label %bb56
    481 
    482 bb56:                                             ; preds = %bb55
    483   br label %bb58
    484 
    485 bb57:                                             ; preds = %bb55
    486   br label %bb58
    487 
    488 bb58:                                             ; preds = %bb57, %bb56
    489   br i1 undef, label %bb60, label %bb45
    490 
    491 bb60:                                             ; preds = %bb58
    492   br i1 undef, label %bb61, label %bb45
    493 
    494 bb61:                                             ; preds = %bb60
    495   br i1 undef, label %bb63, label %bb62
    496 
    497 bb62:                                             ; preds = %bb61
    498   br label %bb64
    499 
    500 bb63:                                             ; preds = %bb61
    501   br label %bb64
    502 
    503 bb64:                                             ; preds = %bb63, %bb62
    504   br i1 undef, label %bb66, label %bb45
    505 
    506 bb66:                                             ; preds = %bb64
    507   br i1 undef, label %bb67, label %bb45
    508 
    509 bb67:                                             ; preds = %bb66
    510   br i1 undef, label %bb69, label %bb68
    511 
    512 bb68:                                             ; preds = %bb67
    513   br label %bb70
    514 
    515 bb69:                                             ; preds = %bb67
    516   br label %bb70
    517 
    518 bb70:                                             ; preds = %bb69, %bb68
    519   br i1 undef, label %bb72, label %bb45
    520 
    521 bb72:                                             ; preds = %bb70
    522   br i1 undef, label %bb73, label %bb45
    523 
    524 bb73:                                             ; preds = %bb72
    525   br i1 undef, label %bb75, label %bb74
    526 
    527 bb74:                                             ; preds = %bb73
    528   br label %bb76
    529 
    530 bb75:                                             ; preds = %bb73
    531   br label %bb76
    532 
    533 bb76:                                             ; preds = %bb75, %bb74
    534   br i1 undef, label %bb78, label %bb45
    535 
    536 bb78:                                             ; preds = %bb76
    537   br i1 undef, label %bb79, label %bb45
    538 
    539 bb79:                                             ; preds = %bb78
    540   br i1 undef, label %bb81, label %bb80
    541 
    542 bb80:                                             ; preds = %bb79
    543   br label %bb82
    544 
    545 bb81:                                             ; preds = %bb79
    546   br label %bb82
    547 
    548 bb82:                                             ; preds = %bb81, %bb80
    549   br i1 undef, label %bb84, label %bb45
    550 
    551 bb84:                                             ; preds = %bb82
    552   br i1 undef, label %bb85, label %bb45
    553 
    554 bb85:                                             ; preds = %bb84
    555   br i1 undef, label %bb87, label %bb86
    556 
    557 bb86:                                             ; preds = %bb85
    558   br label %bb88
    559 
    560 bb87:                                             ; preds = %bb85
    561   br label %bb88
    562 
    563 bb88:                                             ; preds = %bb87, %bb86
    564   br i1 undef, label %bb90, label %bb45
    565 
    566 bb90:                                             ; preds = %bb88
    567   br i1 undef, label %bb91, label %bb45
    568 
    569 bb91:                                             ; preds = %bb90
    570   br i1 undef, label %bb93, label %bb92
    571 
    572 bb92:                                             ; preds = %bb91
    573   br label %bb94
    574 
    575 bb93:                                             ; preds = %bb91
    576   br label %bb94
    577 
    578 bb94:                                             ; preds = %bb93, %bb92
    579   br i1 undef, label %bb96, label %bb45
    580 
    581 bb96:                                             ; preds = %bb94
    582   br i1 undef, label %bb97, label %bb45
    583 
    584 bb97:                                             ; preds = %bb96
    585   br i1 undef, label %bb99, label %bb98
    586 
    587 bb98:                                             ; preds = %bb97
    588   br label %bb100
    589 
    590 bb99:                                             ; preds = %bb97
    591   br label %bb100
    592 
    593 bb100:                                            ; preds = %bb99, %bb98
    594   br i1 undef, label %bb102, label %bb45
    595 
    596 bb102:                                            ; preds = %bb100
    597   br i1 undef, label %bb104, label %bb45
    598 
    599 bb104:                                            ; preds = %bb102
    600   br i1 undef, label %bb108, label %bb105
    601 
    602 bb105:                                            ; preds = %bb104
    603   br i1 undef, label %bb108, label %bb45
    604 
    605 bb106:                                            ; preds = %bb47
    606   unreachable
    607 
    608 bb108:                                            ; preds = %bb105, %bb104
    609   br i1 undef, label %bb110, label %bb45
    610 
    611 bb110:                                            ; preds = %bb108
    612   br i1 undef, label %bb112, label %bb45
    613 
    614 bb112:                                            ; preds = %bb110
    615   br i1 undef, label %bb114, label %bb45
    616 
    617 bb114:                                            ; preds = %bb112
    618   br i1 undef, label %bb116, label %bb45
    619 
    620 bb116:                                            ; preds = %bb114
    621   br i1 undef, label %bb118, label %bb45
    622 
    623 bb118:                                            ; preds = %bb116
    624   br i1 undef, label %bb120, label %bb45
    625 
    626 bb120:                                            ; preds = %bb118
    627   br i1 undef, label %bb122, label %bb45
    628 
    629 bb122:                                            ; preds = %bb120
    630   br i1 undef, label %bb124, label %bb45
    631 
    632 bb124:                                            ; preds = %bb122
    633   br i1 undef, label %bb126, label %bb45
    634 
    635 bb126:                                            ; preds = %bb124
    636   br i1 undef, label %bb128, label %bb45
    637 
    638 bb128:                                            ; preds = %bb126
    639   br i1 undef, label %bb130, label %bb45
    640 
    641 bb130:                                            ; preds = %bb128
    642   br i1 undef, label %bb132, label %bb45
    643 
    644 bb132:                                            ; preds = %bb130
    645   br i1 undef, label %bb135, label %bb30
    646 
    647 bb134:                                            ; preds = %bb53
    648   unreachable
    649 
    650 bb135:                                            ; preds = %bb132
    651   br i1 undef, label %bb139, label %bb136
    652 
    653 bb136:                                            ; preds = %bb135
    654   br i1 undef, label %bb138, label %bb30
    655 
    656 bb138:                                            ; preds = %bb136
    657   br label %bb139
    658 
    659 bb139:                                            ; preds = %bb138, %bb135
    660   br i1 undef, label %bb140, label %bb141
    661 
    662 bb140:                                            ; preds = %bb139
    663   unreachable
    664 
    665 bb141:                                            ; preds = %bb139
    666   br i1 undef, label %bb142, label %bb215
    667 
    668 bb142:                                            ; preds = %bb141
    669   br i1 undef, label %bb144, label %bb143
    670 
    671 bb143:                                            ; preds = %bb142
    672   br label %bb145
    673 
    674 bb144:                                            ; preds = %bb142
    675   br label %bb145
    676 
    677 bb145:                                            ; preds = %bb144, %bb143
    678   br i1 undef, label %bb146, label %bb151
    679 
    680 bb146:                                            ; preds = %bb145
    681   br i1 undef, label %bb148, label %bb153
    682 
    683 bb148:                                            ; preds = %bb146
    684   br i1 undef, label %bb155, label %bb149
    685 
    686 bb149:                                            ; preds = %bb148
    687   br i1 undef, label %bb150, label %bb153
    688 
    689 bb150:                                            ; preds = %bb149
    690   br label %bb155
    691 
    692 bb151:                                            ; preds = %bb145
    693   unreachable
    694 
    695 bb153:                                            ; preds = %bb158, %bb149, %bb146
    696   unreachable
    697 
    698 bb155:                                            ; preds = %bb150, %bb148
    699   br i1 undef, label %bb157, label %bb156
    700 
    701 bb156:                                            ; preds = %bb155
    702   br label %bb158
    703 
    704 bb157:                                            ; preds = %bb155
    705   br label %bb158
    706 
    707 bb158:                                            ; preds = %bb157, %bb156
    708   br i1 undef, label %bb160, label %bb153
    709 
    710 bb160:                                            ; preds = %bb158
    711   br i1 undef, label %bb162, label %bb161
    712 
    713 bb161:                                            ; preds = %bb160
    714   br label %bb163
    715 
    716 bb162:                                            ; preds = %bb160
    717   br label %bb163
    718 
    719 bb163:                                            ; preds = %bb162, %bb161
    720   br i1 undef, label %bb165, label %bb164
    721 
    722 bb164:                                            ; preds = %bb163
    723   br label %bb165
    724 
    725 bb165:                                            ; preds = %bb164, %bb163
    726   br i1 undef, label %bb170, label %bb166
    727 
    728 bb166:                                            ; preds = %bb165
    729   br i1 undef, label %bb167, label %bb168
    730 
    731 bb167:                                            ; preds = %bb166
    732   unreachable
    733 
    734 bb168:                                            ; preds = %bb166
    735   unreachable
    736 
    737 bb170:                                            ; preds = %bb165
    738   br i1 undef, label %bb215, label %bb171
    739 
    740 bb171:                                            ; preds = %bb170
    741   br i1 undef, label %bb173, label %bb30
    742 
    743 bb173:                                            ; preds = %bb171
    744   br i1 undef, label %bb174, label %bb215
    745 
    746 bb174:                                            ; preds = %bb173
    747   br i1 undef, label %bb176, label %bb30
    748 
    749 bb176:                                            ; preds = %bb174
    750   br i1 undef, label %bb178, label %bb30
    751 
    752 bb178:                                            ; preds = %bb176
    753   br i1 undef, label %bb179, label %bb193
    754 
    755 bb179:                                            ; preds = %bb178
    756   br i1 undef, label %bb181, label %bb180
    757 
    758 bb180:                                            ; preds = %bb179
    759   br label %bb182
    760 
    761 bb181:                                            ; preds = %bb179
    762   br label %bb182
    763 
    764 bb182:                                            ; preds = %bb181, %bb180
    765   br i1 undef, label %bb184, label %bb30
    766 
    767 bb184:                                            ; preds = %bb182
    768   %tmp185 = call i8* @returner()
    769   br i1 undef, label %bb186, label %bb195
    770 
    771 bb186:                                            ; preds = %bb184
    772   %tmp188 = call i8* @objc_retainAutoreleasedReturnValue(i8* %tmp185)
    773   %tmp189 = call i8* @objc_retain(i8* %tmp188)
    774   call void @objc_release(i8* %tmp189), !clang.imprecise_release !0
    775   br i1 undef, label %bb197, label %bb190
    776 
    777 bb190:                                            ; preds = %bb186
    778   br i1 undef, label %bb192, label %bb195
    779 
    780 bb192:                                            ; preds = %bb190
    781   br i1 undef, label %bb197, label %bb195
    782 
    783 bb193:                                            ; preds = %bb178
    784   br label %bb213
    785 
    786 bb195:                                            ; preds = %bb192, %bb190, %bb184
    787   unreachable
    788 
    789 bb197:                                            ; preds = %bb192, %bb186
    790   br i1 undef, label %bb198, label %bb215
    791 
    792 bb198:                                            ; preds = %bb197
    793   br i1 undef, label %bb202, label %bb199
    794 
    795 bb199:                                            ; preds = %bb198
    796   br i1 undef, label %bb201, label %bb30
    797 
    798 bb201:                                            ; preds = %bb199
    799   br label %bb202
    800 
    801 bb202:                                            ; preds = %bb201, %bb198
    802   br i1 undef, label %bb206, label %bb203
    803 
    804 bb203:                                            ; preds = %bb202
    805   br i1 undef, label %bb205, label %bb30
    806 
    807 bb205:                                            ; preds = %bb203
    808   br label %bb206
    809 
    810 bb206:                                            ; preds = %bb205, %bb202
    811   br i1 undef, label %bb210, label %bb207
    812 
    813 bb207:                                            ; preds = %bb206
    814   br i1 undef, label %bb209, label %bb30
    815 
    816 bb209:                                            ; preds = %bb207
    817   br label %bb210
    818 
    819 bb210:                                            ; preds = %bb209, %bb206
    820   br i1 undef, label %bb212, label %bb30
    821 
    822 bb212:                                            ; preds = %bb210
    823   unreachable
    824 
    825 bb213:                                            ; preds = %bb193, %bb30
    826   resume { i8*, i32 } undef
    827 
    828 bb214:                                            ; preds = %bb42
    829   br label %bb219
    830 
    831 bb215:                                            ; preds = %bb197, %bb173, %bb170, %bb141
    832   br i1 undef, label %bb217, label %bb216
    833 
    834 bb216:                                            ; preds = %bb215
    835   br label %bb217
    836 
    837 bb217:                                            ; preds = %bb216, %bb215
    838   br i1 undef, label %bb219, label %bb218
    839 
    840 bb218:                                            ; preds = %bb217
    841   br label %bb219
    842 
    843 bb219:                                            ; preds = %bb218, %bb217, %bb214
    844   br i1 undef, label %bb221, label %bb220
    845 
    846 bb220:                                            ; preds = %bb219
    847   unreachable
    848 
    849 bb221:                                            ; preds = %bb219
    850   unreachable
    851 
    852 bb222:                                            ; preds = %bb20, %bb19
    853   ret void
    854 }
    855 
    856 
    857 !0 = metadata !{}
    858