1 ; RUN: opt -objc-arc -S < %s
7 ; The total number of paths grows exponentially with the number of branches, and a
8 ; computation of this number can overflow any reasonable fixed-sized
9 ; integer. This can occur in both the addition phase when we are adding up the
10 ; total bottomup/topdown paths and when we multiply them together at the end.
12 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"
13 target triple = "thumbv7-apple-ios5.0.0"
15 %struct.NSConstantString = type { i32*, i32, i8*, i32 }
16 %struct.CGPoint = type { float, float }
18 @_unnamed_cfstring = external constant %struct.NSConstantString, section "__DATA,__cfstring"
19 @_unnamed_cfstring_2 = external constant %struct.NSConstantString, section "__DATA,__cfstring"
21 declare i8* @llvm.objc.retain(i8*) nonlazybind
22 declare i8* @llvm.objc.retainAutoreleasedReturnValue(i8*) nonlazybind
23 declare void @llvm.objc.release(i8*) nonlazybind
24 declare i8* @returner()
25 declare i8* @objc_msgSend(i8*, i8*, ...) nonlazybind
26 declare void @NSLog(i8*, ...)
27 declare void @objc_msgSend_stret(i8*, i8*, ...)
28 declare i32 @__gxx_personality_sj0(...)
29 declare i32 @__objc_personality_v0(...)
32 define hidden void @test1() personality i8* bitcast (i32 (...)* @__gxx_personality_sj0 to i8*) {
34 br i1 undef, label %msgSend.nullinit, label %msgSend.call
36 msgSend.call: ; preds = %entry
37 br label %msgSend.cont
39 msgSend.nullinit: ; preds = %entry
40 br label %msgSend.cont
42 msgSend.cont: ; preds = %msgSend.nullinit, %msgSend.call
43 %0 = bitcast %struct.NSConstantString* @_unnamed_cfstring to i8*
44 %1 = call i8* @llvm.objc.retain(i8* %0) nounwind
45 br i1 undef, label %msgSend.nullinit33, label %msgSend.call32
47 msgSend.call32: ; preds = %if.end10
48 br label %msgSend.cont34
50 msgSend.nullinit33: ; preds = %if.end10
51 br label %msgSend.cont34
53 msgSend.cont34: ; preds = %msgSend.nullinit33, %msgSend.call32
54 br i1 undef, label %msgSend.nullinit38, label %msgSend.call37
56 msgSend.call37: ; preds = %msgSend.cont34
57 br label %msgSend.cont39
59 msgSend.nullinit38: ; preds = %msgSend.cont34
60 br label %msgSend.cont39
62 msgSend.cont39: ; preds = %msgSend.nullinit38, %msgSend.call37
63 br i1 undef, label %msgSend.nullinit49, label %msgSend.call48
65 msgSend.call48: ; preds = %msgSend.cont39
66 br label %msgSend.cont50
68 msgSend.nullinit49: ; preds = %msgSend.cont39
69 br label %msgSend.cont50
71 msgSend.cont50: ; preds = %msgSend.nullinit49, %msgSend.call48
72 br i1 undef, label %msgSend.nullinit61, label %msgSend.call60
74 msgSend.call60: ; preds = %msgSend.cont50
75 br label %msgSend.cont62
77 msgSend.nullinit61: ; preds = %msgSend.cont50
78 br label %msgSend.cont62
80 msgSend.cont62: ; preds = %msgSend.nullinit61, %msgSend.call60
81 br i1 undef, label %msgSend.nullinit67, label %msgSend.call66
83 msgSend.call66: ; preds = %msgSend.cont62
84 br label %msgSend.cont68
86 msgSend.nullinit67: ; preds = %msgSend.cont62
87 br label %msgSend.cont68
89 msgSend.cont68: ; preds = %msgSend.nullinit67, %msgSend.call66
90 br i1 undef, label %msgSend.nullinit84, label %msgSend.call83
92 msgSend.call83: ; preds = %msgSend.cont68
93 br label %msgSend.cont85
95 msgSend.nullinit84: ; preds = %msgSend.cont68
96 br label %msgSend.cont85
98 msgSend.cont85: ; preds = %msgSend.nullinit84, %msgSend.call83
99 br i1 undef, label %msgSend.nullinit90, label %msgSend.call89
101 msgSend.call89: ; preds = %msgSend.cont85
102 br label %msgSend.cont91
104 msgSend.nullinit90: ; preds = %msgSend.cont85
105 br label %msgSend.cont91
107 msgSend.cont91: ; preds = %msgSend.nullinit90, %msgSend.call89
108 br i1 undef, label %msgSend.nullinit104, label %msgSend.call103
110 msgSend.call103: ; preds = %msgSend.cont91
111 br label %msgSend.cont105
113 msgSend.nullinit104: ; preds = %msgSend.cont91
114 br label %msgSend.cont105
116 msgSend.cont105: ; preds = %msgSend.nullinit104, %msgSend.call103
117 br i1 undef, label %land.lhs.true, label %if.end123
119 land.lhs.true: ; preds = %msgSend.cont105
120 br i1 undef, label %if.then117, label %if.end123
122 if.then117: ; preds = %land.lhs.true
125 if.end123: ; preds = %if.then117, %land.lhs.true, %msgSend.cont105
126 br i1 undef, label %msgSend.nullinit132, label %msgSend.call131
128 msgSend.call131: ; preds = %if.end123
129 br label %msgSend.cont133
131 msgSend.nullinit132: ; preds = %if.end123
132 br label %msgSend.cont133
134 msgSend.cont133: ; preds = %msgSend.nullinit132, %msgSend.call131
135 br i1 undef, label %msgSend.nullinit139, label %msgSend.call138
137 msgSend.call138: ; preds = %msgSend.cont133
138 br label %msgSend.cont140
140 msgSend.nullinit139: ; preds = %msgSend.cont133
141 br label %msgSend.cont140
143 msgSend.cont140: ; preds = %msgSend.nullinit139, %msgSend.call138
144 br i1 undef, label %if.then151, label %if.end157
146 if.then151: ; preds = %msgSend.cont140
149 if.end157: ; preds = %if.then151, %msgSend.cont140
150 br i1 undef, label %msgSend.nullinit164, label %msgSend.call163
152 msgSend.call163: ; preds = %if.end157
153 br label %msgSend.cont165
155 msgSend.nullinit164: ; preds = %if.end157
156 br label %msgSend.cont165
158 msgSend.cont165: ; preds = %msgSend.nullinit164, %msgSend.call163
159 br i1 undef, label %msgSend.nullinit176, label %msgSend.call175
161 msgSend.call175: ; preds = %msgSend.cont165
162 br label %msgSend.cont177
164 msgSend.nullinit176: ; preds = %msgSend.cont165
165 br label %msgSend.cont177
167 msgSend.cont177: ; preds = %msgSend.nullinit176, %msgSend.call175
168 br i1 undef, label %land.lhs.true181, label %if.end202
170 land.lhs.true181: ; preds = %msgSend.cont177
171 br i1 undef, label %if.then187, label %if.end202
173 if.then187: ; preds = %land.lhs.true181
174 br i1 undef, label %msgSend.nullinit199, label %msgSend.call198
176 msgSend.call198: ; preds = %if.then187
177 br label %msgSend.cont200
179 msgSend.nullinit199: ; preds = %if.then187
180 br label %msgSend.cont200
182 msgSend.cont200: ; preds = %msgSend.nullinit199, %msgSend.call198
185 if.end202: ; preds = %msgSend.cont200, %land.lhs.true181, %msgSend.cont177
186 br i1 undef, label %msgSend.nullinit236, label %msgSend.call235
188 msgSend.call235: ; preds = %if.end202
189 br label %msgSend.cont237
191 msgSend.nullinit236: ; preds = %if.end202
192 br label %msgSend.cont237
194 msgSend.cont237: ; preds = %msgSend.nullinit236, %msgSend.call235
195 br i1 undef, label %msgSend.nullinit254, label %msgSend.call253
197 msgSend.call253: ; preds = %msgSend.cont237
198 br label %msgSend.cont255
200 msgSend.nullinit254: ; preds = %msgSend.cont237
201 br label %msgSend.cont255
203 msgSend.cont255: ; preds = %msgSend.nullinit254, %msgSend.call253
204 br i1 undef, label %msgSend.nullinit269, label %msgSend.call268
206 msgSend.call268: ; preds = %msgSend.cont255
207 br label %msgSend.cont270
209 msgSend.nullinit269: ; preds = %msgSend.cont255
210 br label %msgSend.cont270
212 msgSend.cont270: ; preds = %msgSend.nullinit269, %msgSend.call268
213 br i1 undef, label %msgSend.nullinit281, label %msgSend.call280
215 msgSend.call280: ; preds = %msgSend.cont270
216 br label %msgSend.cont282
218 msgSend.nullinit281: ; preds = %msgSend.cont270
219 br label %msgSend.cont282
221 msgSend.cont282: ; preds = %msgSend.nullinit281, %msgSend.call280
222 br i1 undef, label %msgSend.nullinit287, label %msgSend.call286
224 msgSend.call286: ; preds = %msgSend.cont282
225 br label %msgSend.cont288
227 msgSend.nullinit287: ; preds = %msgSend.cont282
228 br label %msgSend.cont288
230 msgSend.cont288: ; preds = %msgSend.nullinit287, %msgSend.call286
231 br i1 undef, label %msgSend.nullinit303, label %msgSend.call302
233 msgSend.call302: ; preds = %msgSend.cont288
234 br label %msgSend.cont304
236 msgSend.nullinit303: ; preds = %msgSend.cont288
237 br label %msgSend.cont304
239 msgSend.cont304: ; preds = %msgSend.nullinit303, %msgSend.call302
240 br i1 undef, label %msgSend.nullinit344, label %msgSend.call343
242 msgSend.call343: ; preds = %msgSend.cont304
243 br label %msgSend.cont345
245 msgSend.nullinit344: ; preds = %msgSend.cont304
246 br label %msgSend.cont345
248 msgSend.cont345: ; preds = %msgSend.nullinit344, %msgSend.call343
249 br i1 undef, label %msgSend.nullinit350, label %msgSend.call349
251 msgSend.call349: ; preds = %msgSend.cont345
252 br label %msgSend.cont351
254 msgSend.nullinit350: ; preds = %msgSend.cont345
255 br label %msgSend.cont351
257 msgSend.cont351: ; preds = %msgSend.nullinit350, %msgSend.call349
258 br i1 undef, label %msgSend.nullinit366, label %msgSend.call365
260 msgSend.call365: ; preds = %msgSend.cont351
261 br label %msgSend.cont367
263 msgSend.nullinit366: ; preds = %msgSend.cont351
264 br label %msgSend.cont367
266 msgSend.cont367: ; preds = %msgSend.nullinit366, %msgSend.call365
267 br i1 undef, label %msgSend.nullinit376, label %msgSend.call375
269 msgSend.call375: ; preds = %msgSend.cont367
270 br label %msgSend.cont377
272 msgSend.nullinit376: ; preds = %msgSend.cont367
273 br label %msgSend.cont377
275 msgSend.cont377: ; preds = %msgSend.nullinit376, %msgSend.call375
276 br i1 undef, label %if.then384, label %if.else401
278 if.then384: ; preds = %msgSend.cont377
279 br i1 undef, label %msgSend.nullinit392, label %msgSend.call391
281 msgSend.call391: ; preds = %if.then384
282 br label %msgSend.cont393
284 msgSend.nullinit392: ; preds = %if.then384
285 br label %msgSend.cont393
287 msgSend.cont393: ; preds = %msgSend.nullinit392, %msgSend.call391
290 if.else401: ; preds = %msgSend.cont377
291 br i1 undef, label %msgSend.nullinit409, label %msgSend.call408
293 msgSend.call408: ; preds = %if.else401
294 br label %msgSend.cont410
296 msgSend.nullinit409: ; preds = %if.else401
297 br label %msgSend.cont410
299 msgSend.cont410: ; preds = %msgSend.nullinit409, %msgSend.call408
302 if.end418: ; preds = %msgSend.cont410, %msgSend.cont393
303 br i1 undef, label %msgSend.nullinit470, label %msgSend.call469
305 msgSend.call469: ; preds = %if.end418
306 br label %msgSend.cont471
308 msgSend.nullinit470: ; preds = %if.end418
309 br label %msgSend.cont471
311 msgSend.cont471: ; preds = %msgSend.nullinit470, %msgSend.call469
312 br i1 undef, label %msgSend.nullinit484, label %msgSend.call483
314 msgSend.call483: ; preds = %msgSend.cont471
315 br label %msgSend.cont485
317 msgSend.nullinit484: ; preds = %msgSend.cont471
318 br label %msgSend.cont485
320 msgSend.cont485: ; preds = %msgSend.nullinit484, %msgSend.call483
321 br i1 undef, label %msgSend.nullinit500, label %msgSend.call499
323 msgSend.call499: ; preds = %msgSend.cont485
324 br label %msgSend.cont501
326 msgSend.nullinit500: ; preds = %msgSend.cont485
327 br label %msgSend.cont501
329 msgSend.cont501: ; preds = %msgSend.nullinit500, %msgSend.call499
330 br i1 undef, label %msgSend.nullinit506, label %msgSend.call505
332 msgSend.call505: ; preds = %msgSend.cont501
333 br label %msgSend.cont507
335 msgSend.nullinit506: ; preds = %msgSend.cont501
336 br label %msgSend.cont507
338 msgSend.cont507: ; preds = %msgSend.nullinit506, %msgSend.call505
339 call void @llvm.objc.release(i8* %0) nounwind, !clang.imprecise_release !0
343 ; Function Attrs: optsize ssp uwtable
344 define void @test2() unnamed_addr align 2 personality i8* bitcast (i32 (...)* @__gxx_personality_sj0 to i8*) {
346 br i1 undef, label %bb3, label %bb2
351 bb3: ; preds = %bb2, %bb
352 br i1 undef, label %bb5, label %bb4
357 bb5: ; preds = %bb4, %bb3
358 br i1 undef, label %bb7, label %bb6
363 bb7: ; preds = %bb6, %bb5
364 br i1 undef, label %bb9, label %bb8
370 br i1 undef, label %bb11, label %bb10
375 bb11: ; preds = %bb10, %bb9
376 br i1 undef, label %bb13, label %bb12
378 bb12: ; preds = %bb11
381 bb13: ; preds = %bb12, %bb11
382 br i1 undef, label %bb15, label %bb14
384 bb14: ; preds = %bb13
387 bb15: ; preds = %bb14, %bb13
388 br i1 undef, label %bb17, label %bb16
390 bb16: ; preds = %bb15
393 bb17: ; preds = %bb16, %bb15
394 br i1 undef, label %bb19, label %bb18
396 bb18: ; preds = %bb17
399 bb19: ; preds = %bb18, %bb17
400 br i1 undef, label %bb222, label %bb20
402 bb20: ; preds = %bb19
403 br i1 undef, label %bb222, label %bb21
405 bb21: ; preds = %bb20
406 br i1 undef, label %bb22, label %bb30
408 bb22: ; preds = %bb21
409 br i1 undef, label %bb23, label %bb32
411 bb23: ; preds = %bb22
412 br i1 undef, label %bb24, label %bb34
414 bb24: ; preds = %bb23
415 br i1 undef, label %bb26, label %bb25
417 bb25: ; preds = %bb24
420 bb26: ; preds = %bb24
423 bb27: ; preds = %bb26, %bb25
424 br i1 undef, label %bb28, label %bb42
426 bb28: ; preds = %bb27
427 br i1 undef, label %bb36, label %bb29
429 bb29: ; preds = %bb28
432 bb30: ; preds = %bb210, %bb207, %bb203, %bb199, %bb182, %bb176, %bb174, %bb171, %bb136, %bb132, %bb21
435 bb32: ; preds = %bb22
438 bb34: ; preds = %bb23
441 bb36: ; preds = %bb29, %bb28
442 br i1 undef, label %bb38, label %bb37
444 bb37: ; preds = %bb36
447 bb38: ; preds = %bb36
450 bb39: ; preds = %bb38, %bb37
451 br i1 undef, label %bb41, label %bb40
453 bb40: ; preds = %bb39
456 bb41: ; preds = %bb39
459 bb42: ; preds = %bb41, %bb27
460 br i1 undef, label %bb43, label %bb214
462 bb43: ; preds = %bb42
463 br i1 undef, label %bb47, label %bb45
465 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
468 bb47: ; preds = %bb43
469 br i1 undef, label %bb48, label %bb106
471 bb48: ; preds = %bb47
472 br i1 undef, label %bb50, label %bb49
474 bb49: ; preds = %bb48
477 bb50: ; preds = %bb48
480 bb51: ; preds = %bb50, %bb49
481 br i1 undef, label %bb53, label %bb45
483 bb53: ; preds = %bb51
484 br i1 undef, label %bb54, label %bb134
486 bb54: ; preds = %bb53
487 br i1 undef, label %bb55, label %bb45
489 bb55: ; preds = %bb54
490 br i1 undef, label %bb57, label %bb56
492 bb56: ; preds = %bb55
495 bb57: ; preds = %bb55
498 bb58: ; preds = %bb57, %bb56
499 br i1 undef, label %bb60, label %bb45
501 bb60: ; preds = %bb58
502 br i1 undef, label %bb61, label %bb45
504 bb61: ; preds = %bb60
505 br i1 undef, label %bb63, label %bb62
507 bb62: ; preds = %bb61
510 bb63: ; preds = %bb61
513 bb64: ; preds = %bb63, %bb62
514 br i1 undef, label %bb66, label %bb45
516 bb66: ; preds = %bb64
517 br i1 undef, label %bb67, label %bb45
519 bb67: ; preds = %bb66
520 br i1 undef, label %bb69, label %bb68
522 bb68: ; preds = %bb67
525 bb69: ; preds = %bb67
528 bb70: ; preds = %bb69, %bb68
529 br i1 undef, label %bb72, label %bb45
531 bb72: ; preds = %bb70
532 br i1 undef, label %bb73, label %bb45
534 bb73: ; preds = %bb72
535 br i1 undef, label %bb75, label %bb74
537 bb74: ; preds = %bb73
540 bb75: ; preds = %bb73
543 bb76: ; preds = %bb75, %bb74
544 br i1 undef, label %bb78, label %bb45
546 bb78: ; preds = %bb76
547 br i1 undef, label %bb79, label %bb45
549 bb79: ; preds = %bb78
550 br i1 undef, label %bb81, label %bb80
552 bb80: ; preds = %bb79
555 bb81: ; preds = %bb79
558 bb82: ; preds = %bb81, %bb80
559 br i1 undef, label %bb84, label %bb45
561 bb84: ; preds = %bb82
562 br i1 undef, label %bb85, label %bb45
564 bb85: ; preds = %bb84
565 br i1 undef, label %bb87, label %bb86
567 bb86: ; preds = %bb85
570 bb87: ; preds = %bb85
573 bb88: ; preds = %bb87, %bb86
574 br i1 undef, label %bb90, label %bb45
576 bb90: ; preds = %bb88
577 br i1 undef, label %bb91, label %bb45
579 bb91: ; preds = %bb90
580 br i1 undef, label %bb93, label %bb92
582 bb92: ; preds = %bb91
585 bb93: ; preds = %bb91
588 bb94: ; preds = %bb93, %bb92
589 br i1 undef, label %bb96, label %bb45
591 bb96: ; preds = %bb94
592 br i1 undef, label %bb97, label %bb45
594 bb97: ; preds = %bb96
595 br i1 undef, label %bb99, label %bb98
597 bb98: ; preds = %bb97
600 bb99: ; preds = %bb97
603 bb100: ; preds = %bb99, %bb98
604 br i1 undef, label %bb102, label %bb45
606 bb102: ; preds = %bb100
607 br i1 undef, label %bb104, label %bb45
609 bb104: ; preds = %bb102
610 br i1 undef, label %bb108, label %bb105
612 bb105: ; preds = %bb104
613 br i1 undef, label %bb108, label %bb45
615 bb106: ; preds = %bb47
618 bb108: ; preds = %bb105, %bb104
619 br i1 undef, label %bb110, label %bb45
621 bb110: ; preds = %bb108
622 br i1 undef, label %bb112, label %bb45
624 bb112: ; preds = %bb110
625 br i1 undef, label %bb114, label %bb45
627 bb114: ; preds = %bb112
628 br i1 undef, label %bb116, label %bb45
630 bb116: ; preds = %bb114
631 br i1 undef, label %bb118, label %bb45
633 bb118: ; preds = %bb116
634 br i1 undef, label %bb120, label %bb45
636 bb120: ; preds = %bb118
637 br i1 undef, label %bb122, label %bb45
639 bb122: ; preds = %bb120
640 br i1 undef, label %bb124, label %bb45
642 bb124: ; preds = %bb122
643 br i1 undef, label %bb126, label %bb45
645 bb126: ; preds = %bb124
646 br i1 undef, label %bb128, label %bb45
648 bb128: ; preds = %bb126
649 br i1 undef, label %bb130, label %bb45
651 bb130: ; preds = %bb128
652 br i1 undef, label %bb132, label %bb45
654 bb132: ; preds = %bb130
655 br i1 undef, label %bb135, label %bb30
657 bb134: ; preds = %bb53
660 bb135: ; preds = %bb132
661 br i1 undef, label %bb139, label %bb136
663 bb136: ; preds = %bb135
664 br i1 undef, label %bb138, label %bb30
666 bb138: ; preds = %bb136
669 bb139: ; preds = %bb138, %bb135
670 br i1 undef, label %bb140, label %bb141
672 bb140: ; preds = %bb139
675 bb141: ; preds = %bb139
676 br i1 undef, label %bb142, label %bb215
678 bb142: ; preds = %bb141
679 br i1 undef, label %bb144, label %bb143
681 bb143: ; preds = %bb142
684 bb144: ; preds = %bb142
687 bb145: ; preds = %bb144, %bb143
688 br i1 undef, label %bb146, label %bb151
690 bb146: ; preds = %bb145
691 br i1 undef, label %bb148, label %bb153
693 bb148: ; preds = %bb146
694 br i1 undef, label %bb155, label %bb149
696 bb149: ; preds = %bb148
697 br i1 undef, label %bb150, label %bb153
699 bb150: ; preds = %bb149
702 bb151: ; preds = %bb145
705 bb153: ; preds = %bb158, %bb149, %bb146
708 bb155: ; preds = %bb150, %bb148
709 br i1 undef, label %bb157, label %bb156
711 bb156: ; preds = %bb155
714 bb157: ; preds = %bb155
717 bb158: ; preds = %bb157, %bb156
718 br i1 undef, label %bb160, label %bb153
720 bb160: ; preds = %bb158
721 br i1 undef, label %bb162, label %bb161
723 bb161: ; preds = %bb160
726 bb162: ; preds = %bb160
729 bb163: ; preds = %bb162, %bb161
730 br i1 undef, label %bb165, label %bb164
732 bb164: ; preds = %bb163
735 bb165: ; preds = %bb164, %bb163
736 br i1 undef, label %bb170, label %bb166
738 bb166: ; preds = %bb165
739 br i1 undef, label %bb167, label %bb168
741 bb167: ; preds = %bb166
744 bb168: ; preds = %bb166
747 bb170: ; preds = %bb165
748 br i1 undef, label %bb215, label %bb171
750 bb171: ; preds = %bb170
751 br i1 undef, label %bb173, label %bb30
753 bb173: ; preds = %bb171
754 br i1 undef, label %bb174, label %bb215
756 bb174: ; preds = %bb173
757 br i1 undef, label %bb176, label %bb30
759 bb176: ; preds = %bb174
760 br i1 undef, label %bb178, label %bb30
762 bb178: ; preds = %bb176
763 br i1 undef, label %bb179, label %bb193
765 bb179: ; preds = %bb178
766 br i1 undef, label %bb181, label %bb180
768 bb180: ; preds = %bb179
771 bb181: ; preds = %bb179
774 bb182: ; preds = %bb181, %bb180
775 br i1 undef, label %bb184, label %bb30
777 bb184: ; preds = %bb182
778 %tmp185 = call i8* @returner()
779 br i1 undef, label %bb186, label %bb195
781 bb186: ; preds = %bb184
782 %tmp188 = call i8* @llvm.objc.retainAutoreleasedReturnValue(i8* %tmp185)
783 %tmp189 = call i8* @llvm.objc.retain(i8* %tmp188)
784 call void @llvm.objc.release(i8* %tmp189), !clang.imprecise_release !0
785 br i1 undef, label %bb197, label %bb190
787 bb190: ; preds = %bb186
788 br i1 undef, label %bb192, label %bb195
790 bb192: ; preds = %bb190
791 br i1 undef, label %bb197, label %bb195
793 bb193: ; preds = %bb178
796 bb195: ; preds = %bb192, %bb190, %bb184
799 bb197: ; preds = %bb192, %bb186
800 br i1 undef, label %bb198, label %bb215
802 bb198: ; preds = %bb197
803 br i1 undef, label %bb202, label %bb199
805 bb199: ; preds = %bb198
806 br i1 undef, label %bb201, label %bb30
808 bb201: ; preds = %bb199
811 bb202: ; preds = %bb201, %bb198
812 br i1 undef, label %bb206, label %bb203
814 bb203: ; preds = %bb202
815 br i1 undef, label %bb205, label %bb30
817 bb205: ; preds = %bb203
820 bb206: ; preds = %bb205, %bb202
821 br i1 undef, label %bb210, label %bb207
823 bb207: ; preds = %bb206
824 br i1 undef, label %bb209, label %bb30
826 bb209: ; preds = %bb207
829 bb210: ; preds = %bb209, %bb206
830 br i1 undef, label %bb212, label %bb30
832 bb212: ; preds = %bb210
835 bb213: ; preds = %bb193, %bb30
836 resume { i8*, i32 } undef
838 bb214: ; preds = %bb42
841 bb215: ; preds = %bb197, %bb173, %bb170, %bb141
842 br i1 undef, label %bb217, label %bb216
844 bb216: ; preds = %bb215
847 bb217: ; preds = %bb216, %bb215
848 br i1 undef, label %bb219, label %bb218
850 bb218: ; preds = %bb217
853 bb219: ; preds = %bb218, %bb217, %bb214
854 br i1 undef, label %bb221, label %bb220
856 bb220: ; preds = %bb219
859 bb221: ; preds = %bb219
862 bb222: ; preds = %bb20, %bb19
866 ; Function Attrs: ssp
867 define void @test3() #1 personality i8* bitcast (i32 (...)* @__gxx_personality_sj0 to i8*) {
869 %call2 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
870 to label %invoke.cont unwind label %lpad
872 invoke.cont: ; preds = %entry
873 %call5 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*)*)(i8* undef, i8* undef)
874 to label %invoke.cont4 unwind label %lpad3
876 invoke.cont4: ; preds = %invoke.cont
877 br i1 undef, label %land.end, label %land.rhs
879 land.rhs: ; preds = %invoke.cont4
880 %call7 = invoke i32 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i32 (i8*, i8*)*)(i8* undef, i8* undef)
881 to label %land.end unwind label %lpad3
883 land.end: ; preds = %land.rhs, %invoke.cont4
884 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
885 to label %invoke.cont.i unwind label %lpad.i
887 invoke.cont.i: ; preds = %land.end
888 br i1 undef, label %invoke.cont8, label %if.then.i
890 if.then.i: ; preds = %invoke.cont.i
891 br label %invoke.cont8
893 lpad.i: ; preds = %land.end
894 %tmp13 = landingpad { i8*, i32 }
898 invoke.cont8: ; preds = %if.then.i, %invoke.cont.i
899 %call18 = invoke i8* (i8*, i8*, i8*, ...) bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*, ...)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef)
900 to label %invoke.cont17 unwind label %lpad16
902 invoke.cont17: ; preds = %invoke.cont8
903 %call22 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
904 to label %invoke.cont21 unwind label %lpad20
906 invoke.cont21: ; preds = %invoke.cont17
907 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
908 to label %invoke.cont.i1980 unwind label %lpad.i1982
910 invoke.cont.i1980: ; preds = %invoke.cont21
911 br i1 undef, label %invoke.cont24, label %if.then.i1981
913 if.then.i1981: ; preds = %invoke.cont.i1980
914 br label %invoke.cont24
916 lpad.i1982: ; preds = %invoke.cont21
917 %tmp28 = landingpad { i8*, i32 }
921 invoke.cont24: ; preds = %if.then.i1981, %invoke.cont.i1980
922 %call37 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*)*)(i8* undef, i8* undef)
923 to label %invoke.cont36 unwind label %lpad35
925 invoke.cont36: ; preds = %invoke.cont24
926 br i1 undef, label %land.end43, label %land.rhs39
928 land.rhs39: ; preds = %invoke.cont36
929 %call41 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
930 to label %land.end43 unwind label %lpad35
932 land.end43: ; preds = %land.rhs39, %invoke.cont36
933 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
934 to label %invoke.cont.i1986 unwind label %lpad.i1988
936 invoke.cont.i1986: ; preds = %land.end43
937 br i1 undef, label %invoke.cont44, label %if.then.i1987
939 if.then.i1987: ; preds = %invoke.cont.i1986
940 br label %invoke.cont44
942 lpad.i1988: ; preds = %land.end43
943 %tmp42 = landingpad { i8*, i32 }
947 invoke.cont44: ; preds = %if.then.i1987, %invoke.cont.i1986
948 %call53 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
949 to label %invoke.cont52 unwind label %lpad51
951 invoke.cont52: ; preds = %invoke.cont44
952 br i1 undef, label %land.end70, label %land.rhs58
954 land.rhs58: ; preds = %invoke.cont52
955 %call63 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 42)
956 to label %invoke.cont62 unwind label %lpad61
958 invoke.cont62: ; preds = %land.rhs58
959 %call68 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef)
960 to label %land.end70 unwind label %lpad66.body.thread
962 land.end70: ; preds = %invoke.cont62, %invoke.cont52
963 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
964 to label %invoke.cont.i1992 unwind label %lpad66.body
966 invoke.cont.i1992: ; preds = %land.end70
967 br i1 undef, label %invoke.cont71, label %if.then.i1993
969 if.then.i1993: ; preds = %invoke.cont.i1992
970 br label %invoke.cont71
972 invoke.cont71: ; preds = %if.then.i1993, %invoke.cont.i1992
973 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
974 to label %invoke.cont.i1998 unwind label %lpad.i2000
976 invoke.cont.i1998: ; preds = %invoke.cont71
977 br i1 undef, label %invoke.cont91, label %if.then.i1999
979 if.then.i1999: ; preds = %invoke.cont.i1998
980 br label %invoke.cont91
982 lpad.i2000: ; preds = %invoke.cont71
983 %tmp74 = landingpad { i8*, i32 }
985 br label %ehcleanup102
987 invoke.cont91: ; preds = %if.then.i1999, %invoke.cont.i1998
988 %call96 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
989 to label %invoke.cont95 unwind label %lpad94
991 invoke.cont95: ; preds = %invoke.cont91
992 %call98 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* %call96)
993 to label %invoke.cont97 unwind label %lpad94
995 invoke.cont97: ; preds = %invoke.cont95
996 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
997 to label %invoke.cont.i2004 unwind label %lpad.i2006
999 invoke.cont.i2004: ; preds = %invoke.cont97
1000 br i1 undef, label %invoke.cont100, label %if.then.i2005
1002 if.then.i2005: ; preds = %invoke.cont.i2004
1003 br label %invoke.cont100
1005 lpad.i2006: ; preds = %invoke.cont97
1006 %tmp82 = landingpad { i8*, i32 }
1010 invoke.cont100: ; preds = %if.then.i2005, %invoke.cont.i2004
1011 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1012 to label %invoke.cont110 unwind label %lpad109
1014 invoke.cont110: ; preds = %invoke.cont100
1015 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1016 to label %invoke.cont.i2010 unwind label %lpad.i2012
1018 invoke.cont.i2010: ; preds = %invoke.cont110
1019 br i1 undef, label %invoke.cont117, label %if.then.i2011
1021 if.then.i2011: ; preds = %invoke.cont.i2010
1022 br label %invoke.cont117
1024 lpad.i2012: ; preds = %invoke.cont110
1025 %tmp98 = landingpad { i8*, i32 }
1029 invoke.cont117: ; preds = %if.then.i2011, %invoke.cont.i2010
1030 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1031 to label %invoke.cont.i2022 unwind label %lpad156.body
1033 lpad: ; preds = %entry
1034 %tmp118 = landingpad { i8*, i32 }
1038 lpad3: ; preds = %land.rhs, %invoke.cont
1039 %tmp119 = landingpad { i8*, i32 }
1043 ehcleanup: ; preds = %lpad3, %lpad
1046 lpad16: ; preds = %invoke.cont8
1047 %tmp121 = landingpad { i8*, i32 }
1049 br label %ehcleanup26
1051 lpad20: ; preds = %invoke.cont17
1052 %tmp122 = landingpad { i8*, i32 }
1054 br label %ehcleanup26
1056 ehcleanup26: ; preds = %lpad20, %lpad16
1059 lpad35: ; preds = %land.rhs39, %invoke.cont24
1060 %tmp124 = landingpad { i8*, i32 }
1064 lpad51: ; preds = %invoke.cont44
1065 %tmp125 = landingpad { i8*, i32 }
1069 lpad61: ; preds = %land.rhs58
1070 %tmp127 = landingpad { i8*, i32 }
1074 lpad66.body.thread: ; preds = %invoke.cont62
1075 %tmp128 = landingpad { i8*, i32 }
1079 lpad66.body: ; preds = %land.end70
1080 %tmp129 = landingpad { i8*, i32 }
1084 lpad94: ; preds = %invoke.cont95, %invoke.cont91
1085 %tmp133 = landingpad { i8*, i32 }
1087 br label %ehcleanup102
1089 ehcleanup102: ; preds = %lpad94, %lpad.i2000
1092 lpad109: ; preds = %invoke.cont100
1093 %tmp134 = landingpad { i8*, i32 }
1097 invoke.cont.i2022: ; preds = %invoke.cont117
1098 br i1 undef, label %invoke.cont157, label %if.then.i2023
1100 if.then.i2023: ; preds = %invoke.cont.i2022
1101 br label %invoke.cont157
1103 invoke.cont157: ; preds = %if.then.i2023, %invoke.cont.i2022
1104 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1105 to label %invoke.cont.i2028 unwind label %lpad164.body
1107 invoke.cont.i2028: ; preds = %invoke.cont157
1108 br i1 undef, label %invoke.cont165, label %if.then.i2029
1110 if.then.i2029: ; preds = %invoke.cont.i2028
1111 br label %invoke.cont165
1113 invoke.cont165: ; preds = %if.then.i2029, %invoke.cont.i2028
1114 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, void (i8*, i8*)*)*)(i8* undef, i8* undef, void (i8*, i8*)* undef)
1115 to label %invoke.cont184 unwind label %lpad183
1117 invoke.cont184: ; preds = %invoke.cont165
1118 %call186 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1119 to label %invoke.cont185 unwind label %lpad183
1121 invoke.cont185: ; preds = %invoke.cont184
1122 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1123 to label %invoke.cont.i2034 unwind label %lpad.i2036
1125 invoke.cont.i2034: ; preds = %invoke.cont185
1126 br i1 undef, label %invoke.cont190, label %if.then.i2035
1128 if.then.i2035: ; preds = %invoke.cont.i2034
1129 br label %invoke.cont190
1131 lpad.i2036: ; preds = %invoke.cont185
1132 %tmp168 = landingpad { i8*, i32 }
1134 br label %lpad183.body
1136 invoke.cont190: ; preds = %if.then.i2035, %invoke.cont.i2034
1137 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1138 to label %invoke.cont197 unwind label %lpad196
1140 invoke.cont197: ; preds = %invoke.cont190
1141 %call202 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1142 to label %invoke.cont201 unwind label %lpad200
1144 invoke.cont201: ; preds = %invoke.cont197
1145 %call205 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1146 to label %invoke.cont204 unwind label %lpad203
1148 invoke.cont204: ; preds = %invoke.cont201
1149 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1150 to label %invoke.cont.i2040 unwind label %lpad.i2042
1152 invoke.cont.i2040: ; preds = %invoke.cont204
1153 br i1 undef, label %invoke.cont207, label %if.then.i2041
1155 if.then.i2041: ; preds = %invoke.cont.i2040
1156 br label %invoke.cont207
1158 lpad.i2042: ; preds = %invoke.cont204
1159 %tmp181 = landingpad { i8*, i32 }
1163 invoke.cont207: ; preds = %if.then.i2041, %invoke.cont.i2040
1164 %call209 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1165 to label %invoke.cont208 unwind label %lpad203
1167 invoke.cont208: ; preds = %invoke.cont207
1168 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1169 to label %invoke.cont.i2046 unwind label %lpad212.body
1171 invoke.cont.i2046: ; preds = %invoke.cont208
1172 br i1 undef, label %invoke.cont213, label %if.then.i2047
1174 if.then.i2047: ; preds = %invoke.cont.i2046
1175 br label %invoke.cont213
1177 invoke.cont213: ; preds = %if.then.i2047, %invoke.cont.i2046
1178 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1179 to label %invoke.cont221 unwind label %lpad220
1181 invoke.cont221: ; preds = %invoke.cont213
1182 %call229 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1183 to label %invoke.cont228 unwind label %lpad227
1185 invoke.cont228: ; preds = %invoke.cont221
1186 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1187 to label %invoke.cont.i2052 unwind label %lpad.i2054
1189 invoke.cont.i2052: ; preds = %invoke.cont228
1190 br i1 undef, label %invoke.cont231, label %if.then.i2053
1192 if.then.i2053: ; preds = %invoke.cont.i2052
1193 br label %invoke.cont231
1195 lpad.i2054: ; preds = %invoke.cont228
1196 %tmp198 = landingpad { i8*, i32 }
1200 invoke.cont231: ; preds = %if.then.i2053, %invoke.cont.i2052
1201 %call233 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1202 to label %invoke.cont232 unwind label %lpad227
1204 invoke.cont232: ; preds = %invoke.cont231
1205 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1206 to label %invoke.cont.i2058 unwind label %lpad236.body
1208 invoke.cont.i2058: ; preds = %invoke.cont232
1209 br i1 undef, label %invoke.cont237, label %if.then.i2059
1211 if.then.i2059: ; preds = %invoke.cont.i2058
1212 br label %invoke.cont237
1214 invoke.cont237: ; preds = %if.then.i2059, %invoke.cont.i2058
1215 %call246 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1216 to label %invoke.cont245 unwind label %lpad244
1218 invoke.cont245: ; preds = %invoke.cont237
1219 %call248 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 13)
1220 to label %invoke.cont247 unwind label %lpad244
1222 invoke.cont247: ; preds = %invoke.cont245
1223 %call251 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 2)
1224 to label %invoke.cont250 unwind label %lpad249
1226 invoke.cont250: ; preds = %invoke.cont247
1227 %call254 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 7)
1228 to label %invoke.cont253 unwind label %lpad252
1230 invoke.cont253: ; preds = %invoke.cont250
1231 %call257 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8**, i32)*)(i8* undef, i8* undef, i8** undef, i32 3)
1232 to label %invoke.cont256 unwind label %lpad255
1234 invoke.cont256: ; preds = %invoke.cont253
1235 %call260 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* undef)
1236 to label %invoke.cont259 unwind label %lpad258
1238 invoke.cont259: ; preds = %invoke.cont256
1239 %call267 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1240 to label %invoke.cont266 unwind label %lpad265
1242 invoke.cont266: ; preds = %invoke.cont259
1243 %call275 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef)
1244 to label %invoke.cont274 unwind label %lpad273
1246 invoke.cont274: ; preds = %invoke.cont266
1247 %call279 = invoke i32 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i32 (i8*, i8*)*)(i8* undef, i8* undef)
1248 to label %invoke.cont278 unwind label %lpad277
1250 invoke.cont278: ; preds = %invoke.cont274
1251 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1252 to label %invoke.cont.i2064 unwind label %lpad.i2066
1254 invoke.cont.i2064: ; preds = %invoke.cont278
1255 br i1 undef, label %invoke.cont281, label %if.then.i2065
1257 if.then.i2065: ; preds = %invoke.cont.i2064
1258 br label %invoke.cont281
1260 lpad.i2066: ; preds = %invoke.cont278
1261 %tmp253 = landingpad { i8*, i32 }
1265 invoke.cont281: ; preds = %if.then.i2065, %invoke.cont.i2064
1266 %call291 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1267 to label %invoke.cont290 unwind label %lpad289
1269 invoke.cont290: ; preds = %invoke.cont281
1270 %call303 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 8)
1271 to label %invoke.cont302 unwind label %lpad301
1273 invoke.cont302: ; preds = %invoke.cont290
1274 %call310 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, double)*)(i8* undef, i8* undef, double 5.000000e-01)
1275 to label %invoke.cont309 unwind label %lpad308
1277 invoke.cont309: ; preds = %invoke.cont302
1278 %call313 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 42)
1279 to label %invoke.cont312 unwind label %lpad311
1281 invoke.cont312: ; preds = %invoke.cont309
1282 %call316 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8**, i8**, i32)*)(i8* undef, i8* undef, i8** undef, i8** undef, i32 2)
1283 to label %invoke.cont315 unwind label %lpad314
1285 invoke.cont315: ; preds = %invoke.cont312
1286 %call322 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef)
1287 to label %invoke.cont321 unwind label %lpad320
1289 invoke.cont321: ; preds = %invoke.cont315
1290 br i1 undef, label %land.end344, label %land.rhs335
1292 land.rhs335: ; preds = %invoke.cont321
1293 %call342 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1294 to label %land.end344 unwind label %lpad340.body.thread
1296 land.end344: ; preds = %land.rhs335, %invoke.cont321
1297 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1298 to label %invoke.cont.i2070 unwind label %lpad340.body
1300 invoke.cont.i2070: ; preds = %land.end344
1301 br i1 undef, label %invoke.cont345, label %if.then.i2071
1303 if.then.i2071: ; preds = %invoke.cont.i2070
1304 br label %invoke.cont345
1306 invoke.cont345: ; preds = %if.then.i2071, %invoke.cont.i2070
1307 %call362 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef)
1308 to label %invoke.cont361 unwind label %lpad360
1310 invoke.cont361: ; preds = %invoke.cont345
1311 %call365 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1312 to label %invoke.cont364 unwind label %lpad363
1314 invoke.cont364: ; preds = %invoke.cont361
1315 %call371 = invoke i32 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i32 (i8*, i8*)*)(i8* undef, i8* undef)
1316 to label %invoke.cont370 unwind label %lpad369
1318 invoke.cont370: ; preds = %invoke.cont364
1319 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1320 to label %invoke.cont.i2076 unwind label %lpad.i2078
1322 invoke.cont.i2076: ; preds = %invoke.cont370
1323 br i1 undef, label %invoke.cont373, label %if.then.i2077
1325 if.then.i2077: ; preds = %invoke.cont.i2076
1326 br label %invoke.cont373
1328 lpad.i2078: ; preds = %invoke.cont370
1329 %tmp340 = landingpad { i8*, i32 }
1333 invoke.cont373: ; preds = %if.then.i2077, %invoke.cont.i2076
1334 %call377 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32, i8*)*)(i8* undef, i8* undef, i32 42, i8* undef)
1335 to label %invoke.cont376 unwind label %lpad363
1337 invoke.cont376: ; preds = %invoke.cont373
1338 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i32)*)(i8* undef, i8* undef, i8* undef, i32 5)
1339 to label %invoke.cont382 unwind label %lpad381
1341 invoke.cont382: ; preds = %invoke.cont376
1342 %call384 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1343 to label %invoke.cont383 unwind label %lpad381
1345 invoke.cont383: ; preds = %invoke.cont382
1346 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1347 to label %invoke.cont.i2082 unwind label %lpad.i2084
1349 invoke.cont.i2082: ; preds = %invoke.cont383
1350 br i1 undef, label %invoke.cont392, label %if.then.i2083
1352 if.then.i2083: ; preds = %invoke.cont.i2082
1353 br label %invoke.cont392
1355 lpad.i2084: ; preds = %invoke.cont383
1356 %tmp360 = landingpad { i8*, i32 }
1360 invoke.cont392: ; preds = %if.then.i2083, %invoke.cont.i2082
1361 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i32)*)(i8* undef, i8* undef, i8* undef, i32 -2)
1362 to label %invoke.cont395 unwind label %lpad381
1364 invoke.cont395: ; preds = %invoke.cont392
1365 %call397 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1366 to label %invoke.cont396 unwind label %lpad381
1368 invoke.cont396: ; preds = %invoke.cont395
1369 %call400 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1370 to label %invoke.cont399 unwind label %lpad398
1372 invoke.cont399: ; preds = %invoke.cont396
1373 %call403 = invoke i32 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i32 (i8*, i8*)*)(i8* undef, i8* undef)
1374 to label %invoke.cont402 unwind label %lpad401
1376 invoke.cont402: ; preds = %invoke.cont399
1377 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1378 to label %invoke.cont.i2088 unwind label %lpad.i2090
1380 invoke.cont.i2088: ; preds = %invoke.cont402
1381 br i1 undef, label %invoke.cont405, label %if.then.i2089
1383 if.then.i2089: ; preds = %invoke.cont.i2088
1384 br label %invoke.cont405
1386 lpad.i2090: ; preds = %invoke.cont402
1387 %tmp370 = landingpad { i8*, i32 }
1391 invoke.cont405: ; preds = %if.then.i2089, %invoke.cont.i2088
1392 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i32)*)(i8* undef, i8* undef, i8* undef, i32 -1)
1393 to label %invoke.cont408 unwind label %lpad381
1395 invoke.cont408: ; preds = %invoke.cont405
1396 %call410 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1397 to label %invoke.cont409 unwind label %lpad381
1399 invoke.cont409: ; preds = %invoke.cont408
1400 %call413 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1401 to label %invoke.cont412 unwind label %lpad411
1403 invoke.cont412: ; preds = %invoke.cont409
1404 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1405 to label %invoke.cont.i2094 unwind label %lpad.i2096
1407 invoke.cont.i2094: ; preds = %invoke.cont412
1408 br i1 undef, label %invoke.cont418, label %if.then.i2095
1410 if.then.i2095: ; preds = %invoke.cont.i2094
1411 br label %invoke.cont418
1413 lpad.i2096: ; preds = %invoke.cont412
1414 %tmp380 = landingpad { i8*, i32 }
1418 invoke.cont418: ; preds = %if.then.i2095, %invoke.cont.i2094
1419 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i32)*)(i8* undef, i8* undef, i8* undef, i32 0)
1420 to label %invoke.cont422 unwind label %lpad381
1422 invoke.cont422: ; preds = %invoke.cont418
1423 %call424 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1424 to label %invoke.cont423 unwind label %lpad381
1426 invoke.cont423: ; preds = %invoke.cont422
1427 %call427 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1428 to label %invoke.cont426 unwind label %lpad425
1430 invoke.cont426: ; preds = %invoke.cont423
1431 %call430 = invoke i32 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i32 (i8*, i8*)*)(i8* undef, i8* undef)
1432 to label %invoke.cont429 unwind label %lpad428
1434 invoke.cont429: ; preds = %invoke.cont426
1435 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1436 to label %invoke.cont.i2100 unwind label %lpad.i2102
1438 invoke.cont.i2100: ; preds = %invoke.cont429
1439 br i1 undef, label %invoke.cont432, label %if.then.i2101
1441 if.then.i2101: ; preds = %invoke.cont.i2100
1442 br label %invoke.cont432
1444 lpad.i2102: ; preds = %invoke.cont429
1445 %tmp390 = landingpad { i8*, i32 }
1449 invoke.cont432: ; preds = %if.then.i2101, %invoke.cont.i2100
1450 %call436 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 0)
1451 to label %invoke.cont435 unwind label %lpad381
1453 invoke.cont435: ; preds = %invoke.cont432
1454 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1455 to label %invoke.cont.i2106 unwind label %lpad.i2108
1457 invoke.cont.i2106: ; preds = %invoke.cont435
1458 %call444 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 5)
1459 to label %invoke.cont443 unwind label %lpad381
1461 lpad.i2108: ; preds = %invoke.cont435
1462 %tmp396 = landingpad { i8*, i32 }
1466 invoke.cont443: ; preds = %invoke.cont.i2106
1467 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1468 to label %invoke.cont.i2112 unwind label %lpad.i2114
1470 invoke.cont.i2112: ; preds = %invoke.cont443
1471 br i1 undef, label %invoke.cont449, label %if.then.i2113
1473 if.then.i2113: ; preds = %invoke.cont.i2112
1474 br label %invoke.cont449
1476 lpad.i2114: ; preds = %invoke.cont443
1477 %tmp402 = landingpad { i8*, i32 }
1481 invoke.cont449: ; preds = %if.then.i2113, %invoke.cont.i2112
1482 %call453 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 -2)
1483 to label %invoke.cont452 unwind label %lpad381
1485 invoke.cont452: ; preds = %invoke.cont449
1486 %call456 = invoke i32 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i32 (i8*, i8*)*)(i8* undef, i8* undef)
1487 to label %invoke.cont455 unwind label %lpad454
1489 invoke.cont455: ; preds = %invoke.cont452
1490 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1491 to label %invoke.cont.i2118 unwind label %lpad.i2120
1493 invoke.cont.i2118: ; preds = %invoke.cont455
1494 br i1 undef, label %invoke.cont458, label %if.then.i2119
1496 if.then.i2119: ; preds = %invoke.cont.i2118
1497 br label %invoke.cont458
1499 lpad.i2120: ; preds = %invoke.cont455
1500 %tmp408 = landingpad { i8*, i32 }
1504 invoke.cont458: ; preds = %if.then.i2119, %invoke.cont.i2118
1505 %call461 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 -1)
1506 to label %invoke.cont460 unwind label %lpad381
1508 invoke.cont460: ; preds = %invoke.cont458
1509 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1510 to label %invoke.cont.i2124 unwind label %lpad.i2126
1512 invoke.cont.i2124: ; preds = %invoke.cont460
1513 br i1 undef, label %invoke.cont466, label %if.then.i2125
1515 if.then.i2125: ; preds = %invoke.cont.i2124
1516 br label %invoke.cont466
1518 lpad.i2126: ; preds = %invoke.cont460
1519 %tmp414 = landingpad { i8*, i32 }
1521 br label %ehcleanup477
1523 invoke.cont466: ; preds = %if.then.i2125, %invoke.cont.i2124
1524 %call470 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 0)
1525 to label %invoke.cont469 unwind label %lpad381
1527 invoke.cont469: ; preds = %invoke.cont466
1528 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1529 to label %invoke.cont.i2130 unwind label %lpad.i2132
1531 invoke.cont.i2130: ; preds = %invoke.cont469
1532 br i1 undef, label %invoke.cont475, label %if.then.i2131
1534 if.then.i2131: ; preds = %invoke.cont.i2130
1535 br label %invoke.cont475
1537 lpad.i2132: ; preds = %invoke.cont469
1538 %tmp420 = landingpad { i8*, i32 }
1540 br label %ehcleanup477
1542 invoke.cont475: ; preds = %if.then.i2131, %invoke.cont.i2130
1543 %call491 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 1)
1544 to label %invoke.cont490 unwind label %lpad489
1546 invoke.cont490: ; preds = %invoke.cont475
1547 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1548 to label %invoke.cont499 unwind label %lpad498
1550 invoke.cont499: ; preds = %invoke.cont490
1551 %call504 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1552 to label %invoke.cont503 unwind label %lpad489
1554 invoke.cont503: ; preds = %invoke.cont499
1555 %call507 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* undef, i8* undef, i32 3)
1556 to label %invoke.cont506 unwind label %lpad505
1558 invoke.cont506: ; preds = %invoke.cont503
1559 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1560 to label %invoke.cont509 unwind label %lpad508
1562 invoke.cont509: ; preds = %invoke.cont506
1563 %call513 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1564 to label %invoke.cont512 unwind label %lpad489
1566 invoke.cont512: ; preds = %invoke.cont509
1567 br i1 undef, label %msgSend.null-receiver, label %msgSend.call
1569 msgSend.call: ; preds = %invoke.cont512
1570 invoke void bitcast (void (i8*, i8*, ...)* @objc_msgSend_stret to void (%struct.CGPoint*, i8*, i8*)*)(%struct.CGPoint* sret(%struct.CGPoint) undef, i8* undef, i8* undef)
1571 to label %msgSend.cont unwind label %lpad514
1573 msgSend.null-receiver: ; preds = %invoke.cont512
1574 br label %msgSend.cont
1576 msgSend.cont: ; preds = %msgSend.null-receiver, %msgSend.call
1577 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1578 to label %invoke.cont.i2136 unwind label %lpad.i2138
1580 invoke.cont.i2136: ; preds = %msgSend.cont
1581 br i1 undef, label %invoke.cont521, label %if.then.i2137
1583 if.then.i2137: ; preds = %invoke.cont.i2136
1584 br label %invoke.cont521
1586 lpad.i2138: ; preds = %msgSend.cont
1587 %tmp468 = landingpad { i8*, i32 }
1591 invoke.cont521: ; preds = %if.then.i2137, %invoke.cont.i2136
1592 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef)
1593 to label %invoke.cont528 unwind label %lpad527
1595 invoke.cont528: ; preds = %invoke.cont521
1596 %call532 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1597 to label %invoke.cont531 unwind label %lpad489
1599 invoke.cont531: ; preds = %invoke.cont528
1600 %call535 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1601 to label %invoke.cont534 unwind label %lpad533
1603 invoke.cont534: ; preds = %invoke.cont531
1604 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1605 to label %invoke.cont.i2142 unwind label %lpad.i2144
1607 invoke.cont.i2142: ; preds = %invoke.cont534
1608 br i1 undef, label %invoke.cont540, label %if.then.i2143
1610 if.then.i2143: ; preds = %invoke.cont.i2142
1611 br label %invoke.cont540
1613 lpad.i2144: ; preds = %invoke.cont534
1614 %tmp486 = landingpad { i8*, i32 }
1618 invoke.cont540: ; preds = %if.then.i2143, %invoke.cont.i2142
1619 %call544 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i32)*)(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef, i32 3)
1620 to label %invoke.cont543 unwind label %lpad489
1622 invoke.cont543: ; preds = %invoke.cont540
1623 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* undef)
1624 to label %invoke.cont546 unwind label %lpad545
1626 invoke.cont546: ; preds = %invoke.cont543
1627 %call549 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1628 to label %invoke.cont548 unwind label %lpad489
1630 invoke.cont548: ; preds = %invoke.cont546
1631 %call555 = invoke signext i8 bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8 (i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1632 to label %invoke.cont554 unwind label %lpad553
1634 invoke.cont554: ; preds = %invoke.cont548
1635 %tmp499 = call i8* @llvm.objc.retain(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*)) #3
1636 invoke void (i8*, ...) @NSLog(i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i8* %tmp499, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1637 to label %invoke.cont.i2148 unwind label %lpad.i2150
1639 invoke.cont.i2148: ; preds = %invoke.cont554
1640 call void @llvm.objc.release(i8* %tmp499) #3, !clang.imprecise_release !0
1641 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1642 to label %invoke.cont566 unwind label %lpad565
1644 lpad.i2150: ; preds = %invoke.cont554
1645 %tmp500 = landingpad { i8*, i32 }
1647 call void @llvm.objc.release(i8* %tmp499) #3, !clang.imprecise_release !0
1650 invoke.cont566: ; preds = %invoke.cont.i2148
1651 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*, i8*, i8*)*)(i8* undef, i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*))
1652 to label %invoke.cont572 unwind label %lpad571
1654 invoke.cont572: ; preds = %invoke.cont566
1655 %call582 = invoke i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*)*)(i8* undef, i8* undef)
1656 to label %invoke.cont581 unwind label %lpad580
1658 invoke.cont581: ; preds = %invoke.cont572
1661 lpad156.body: ; preds = %invoke.cont117
1662 %tmp1157 = landingpad { i8*, i32 }
1666 lpad164.body: ; preds = %invoke.cont157
1667 %tmp1158 = landingpad { i8*, i32 }
1671 lpad183: ; preds = %invoke.cont184, %invoke.cont165
1672 %tmp1159 = landingpad { i8*, i32 }
1674 br label %lpad183.body
1676 lpad183.body: ; preds = %lpad183, %lpad.i2036
1679 lpad196: ; preds = %invoke.cont190
1680 %tmp1160 = landingpad { i8*, i32 }
1684 lpad200: ; preds = %invoke.cont197
1685 %tmp1161 = landingpad { i8*, i32 }
1689 lpad203: ; preds = %invoke.cont207, %invoke.cont201
1690 %tmp1162 = landingpad { i8*, i32 }
1694 lpad212.body: ; preds = %invoke.cont208
1695 %tmp1163 = landingpad { i8*, i32 }
1699 lpad220: ; preds = %invoke.cont213
1700 %tmp1164 = landingpad { i8*, i32 }
1704 lpad227: ; preds = %invoke.cont231, %invoke.cont221
1705 %tmp1166 = landingpad { i8*, i32 }
1707 br label %ehcleanup239
1709 lpad236.body: ; preds = %invoke.cont232
1710 %tmp1167 = landingpad { i8*, i32 }
1712 br label %ehcleanup239
1714 ehcleanup239: ; preds = %lpad236.body, %lpad227
1717 lpad244: ; preds = %invoke.cont245, %invoke.cont237
1718 %tmp1168 = landingpad { i8*, i32 }
1722 lpad249: ; preds = %invoke.cont247
1723 %tmp1169 = landingpad { i8*, i32 }
1727 lpad252: ; preds = %invoke.cont250
1728 %tmp1170 = landingpad { i8*, i32 }
1730 br label %ehcleanup263
1732 lpad255: ; preds = %invoke.cont253
1733 %tmp1171 = landingpad { i8*, i32 }
1735 br label %ehcleanup263
1737 lpad258: ; preds = %invoke.cont256
1738 %tmp1172 = landingpad { i8*, i32 }
1742 ehcleanup263: ; preds = %lpad255, %lpad252
1745 lpad265: ; preds = %invoke.cont259
1746 %tmp1173 = landingpad { i8*, i32 }
1750 lpad273: ; preds = %invoke.cont266
1751 %tmp1175 = landingpad { i8*, i32 }
1755 lpad277: ; preds = %invoke.cont274
1756 %tmp1176 = landingpad { i8*, i32 }
1760 lpad289: ; preds = %invoke.cont281
1761 %tmp1177 = landingpad { i8*, i32 }
1765 lpad301: ; preds = %invoke.cont290
1766 %tmp1180 = landingpad { i8*, i32 }
1770 lpad308: ; preds = %invoke.cont302
1771 %tmp1182 = landingpad { i8*, i32 }
1775 lpad311: ; preds = %invoke.cont309
1776 %tmp1183 = landingpad { i8*, i32 }
1780 lpad314: ; preds = %invoke.cont312
1781 %tmp1184 = landingpad { i8*, i32 }
1785 lpad320: ; preds = %invoke.cont315
1786 %tmp1186 = landingpad { i8*, i32 }
1790 lpad340.body.thread: ; preds = %land.rhs335
1791 %tmp1188 = landingpad { i8*, i32 }
1795 lpad340.body: ; preds = %land.end344
1796 %tmp1189 = landingpad { i8*, i32 }
1800 lpad360: ; preds = %invoke.cont345
1801 %tmp1191 = landingpad { i8*, i32 }
1805 lpad363: ; preds = %invoke.cont373, %invoke.cont361
1806 %tmp1192 = landingpad { i8*, i32 }
1810 lpad369: ; preds = %invoke.cont364
1811 %tmp1194 = landingpad { i8*, i32 }
1815 lpad381: ; preds = %invoke.cont466, %invoke.cont458, %invoke.cont449, %invoke.cont.i2106, %invoke.cont432, %invoke.cont422, %invoke.cont418, %invoke.cont408, %invoke.cont405, %invoke.cont395, %invoke.cont392, %invoke.cont382, %invoke.cont376
1816 %tmp1196 = landingpad { i8*, i32 }
1818 br label %ehcleanup477
1820 lpad398: ; preds = %invoke.cont396
1821 %tmp1199 = landingpad { i8*, i32 }
1825 lpad401: ; preds = %invoke.cont399
1826 %tmp1200 = landingpad { i8*, i32 }
1830 lpad411: ; preds = %invoke.cont409
1831 %tmp1201 = landingpad { i8*, i32 }
1835 lpad425: ; preds = %invoke.cont423
1836 %tmp1203 = landingpad { i8*, i32 }
1838 br label %ehcleanup477
1840 lpad428: ; preds = %invoke.cont426
1841 %tmp1204 = landingpad { i8*, i32 }
1845 lpad454: ; preds = %invoke.cont452
1846 %tmp1207 = landingpad { i8*, i32 }
1850 ehcleanup477: ; preds = %lpad425, %lpad381, %lpad.i2132, %lpad.i2126
1853 lpad489: ; preds = %invoke.cont546, %invoke.cont540, %invoke.cont528, %invoke.cont509, %invoke.cont499, %invoke.cont475
1854 %tmp1211 = landingpad { i8*, i32 }
1856 br label %ehcleanup560
1858 lpad498: ; preds = %invoke.cont490
1859 %tmp1214 = landingpad { i8*, i32 }
1863 lpad505: ; preds = %invoke.cont503
1864 %tmp1215 = landingpad { i8*, i32 }
1868 lpad508: ; preds = %invoke.cont506
1869 %tmp1216 = landingpad { i8*, i32 }
1873 lpad514: ; preds = %msgSend.call
1874 %tmp1217 = landingpad { i8*, i32 }
1878 lpad527: ; preds = %invoke.cont521
1879 %tmp1219 = landingpad { i8*, i32 }
1881 br label %ehcleanup560
1883 lpad533: ; preds = %invoke.cont531
1884 %tmp1220 = landingpad { i8*, i32 }
1888 lpad545: ; preds = %invoke.cont543
1889 %tmp1222 = landingpad { i8*, i32 }
1893 lpad553: ; preds = %invoke.cont548
1894 %tmp1224 = landingpad { i8*, i32 }
1898 ehcleanup560: ; preds = %lpad527, %lpad489
1901 lpad565: ; preds = %invoke.cont.i2148
1902 %tmp1225 = landingpad { i8*, i32 }
1906 lpad571: ; preds = %invoke.cont566
1907 %tmp1227 = landingpad { i8*, i32 }
1911 lpad580: ; preds = %invoke.cont572
1912 %tmp1228 = landingpad { i8*, i32 }
1916 eh.resume: ; preds = %lpad580, %ehcleanup560, %lpad360, %lpad220
1917 resume { i8*, i32 } undef
1920 @"OBJC_EHTYPE_$_NSException" = external global i8
1922 define void @test4() personality i8* bitcast (i32 (...)* @__objc_personality_v0 to i8*) {
1924 br i1 undef, label %if.end13, label %if.then10
1926 if.then10: ; preds = %entry
1929 if.end13: ; preds = %if.then10, %entry
1930 %0 = call i8* bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to i8* (i8*, i8*, i8*, i64, i8*, i8)*)(i8* undef, i8* undef, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring to i8*), i64 2, i8* bitcast (%struct.NSConstantString* @_unnamed_cfstring_2 to i8*), i8 signext 0), !clang.arc.no_objc_arc_exceptions !0
1931 br i1 undef, label %if.then17, label %if.end18
1933 if.then17: ; preds = %if.end13
1936 if.end18: ; preds = %if.then17, %if.end13
1937 br i1 undef, label %if.then64, label %if.end73
1939 if.then64: ; preds = %if.end18
1940 br i1 undef, label %cond.end71, label %cond.true68
1942 cond.true68: ; preds = %if.then64
1943 br label %cond.end71
1945 cond.end71: ; preds = %cond.true68, %if.then64
1946 br i1 undef, label %cleanup.action, label %cleanup.done
1948 cleanup.action: ; preds = %cond.end71
1949 br label %cleanup.done
1951 cleanup.done: ; preds = %cleanup.action, %cond.end71
1954 if.end73: ; preds = %cleanup.done, %if.end18
1955 br i1 undef, label %forcoll.empty, label %forcoll.loopinit
1957 forcoll.loopinit: ; preds = %if.end73
1958 br label %forcoll.loopbody.outer
1960 forcoll.loopbody.outer: ; preds = %forcoll.refetch, %forcoll.loopinit
1961 br label %forcoll.loopbody
1963 forcoll.loopbody: ; preds = %forcoll.notmutated, %forcoll.loopbody.outer
1964 br i1 undef, label %forcoll.notmutated, label %forcoll.mutated
1966 forcoll.mutated: ; preds = %forcoll.loopbody
1967 br label %forcoll.notmutated
1969 forcoll.notmutated: ; preds = %forcoll.mutated, %forcoll.loopbody
1970 br i1 undef, label %forcoll.loopbody, label %forcoll.refetch
1972 forcoll.refetch: ; preds = %forcoll.notmutated
1973 br i1 undef, label %forcoll.empty, label %forcoll.loopbody.outer
1975 forcoll.empty: ; preds = %forcoll.refetch, %if.end73
1976 br i1 undef, label %if.end85, label %if.then82
1978 if.then82: ; preds = %forcoll.empty
1981 if.end85: ; preds = %if.then82, %forcoll.empty
1982 br i1 undef, label %if.then87, label %if.end102
1984 if.then87: ; preds = %if.end85
1985 br i1 undef, label %if.end94, label %if.then91
1987 if.then91: ; preds = %if.then87
1990 if.end94: ; preds = %if.then91, %if.then87
1991 br i1 undef, label %if.end101, label %if.then98
1993 if.then98: ; preds = %if.end94
1996 if.end101: ; preds = %if.then98, %if.end94
1999 if.end102: ; preds = %if.end101, %if.end85
2000 br i1 undef, label %do.body113, label %if.then107
2002 if.then107: ; preds = %if.end102
2003 br label %do.body113
2005 do.body113: ; preds = %if.then107, %if.end102
2006 br i1 undef, label %if.then116, label %if.end117
2008 if.then116: ; preds = %do.body113
2011 if.end117: ; preds = %if.then116, %do.body113
2012 br i1 undef, label %if.then125, label %if.end126
2014 if.then125: ; preds = %if.end117
2017 if.end126: ; preds = %if.then125, %if.end117
2018 br i1 undef, label %do.end166, label %cond.true132
2020 cond.true132: ; preds = %if.end126
2021 br i1 undef, label %do.body148, label %cond.true151
2023 do.body148: ; preds = %cond.true132
2024 br i1 undef, label %do.end166, label %cond.true151
2026 cond.true151: ; preds = %do.body148, %cond.true132
2027 br i1 undef, label %if.then162, label %do.end166
2029 if.then162: ; preds = %cond.true151
2032 do.end166: ; preds = %if.then162, %cond.true151, %do.body148, %if.end126
2033 br i1 undef, label %if.then304, label %if.then170
2035 if.then170: ; preds = %do.end166
2036 br i1 undef, label %do.end193, label %cond.true179
2038 cond.true179: ; preds = %if.then170
2039 br i1 undef, label %if.then190, label %do.end193
2041 if.then190: ; preds = %cond.true179
2044 do.end193: ; preds = %if.then190, %cond.true179, %if.then170
2045 br i1 undef, label %do.body200, label %do.body283
2047 do.body200: ; preds = %do.end193
2048 br i1 undef, label %do.end254, label %cond.true203
2050 cond.true203: ; preds = %do.body200
2051 br i1 undef, label %do.body218, label %cond.true221
2053 do.body218: ; preds = %cond.true203
2054 br i1 undef, label %do.end254, label %cond.true221
2056 cond.true221: ; preds = %do.body218, %cond.true203
2057 br i1 undef, label %if.then232, label %do.body236
2059 if.then232: ; preds = %cond.true221
2060 br label %do.body236
2062 do.body236: ; preds = %if.then232, %cond.true221
2063 br i1 undef, label %do.end254, label %cond.true239
2065 cond.true239: ; preds = %do.body236
2066 br i1 undef, label %if.then250, label %do.end254
2068 if.then250: ; preds = %cond.true239
2071 do.end254: ; preds = %if.then250, %cond.true239, %do.body236, %do.body218, %do.body200
2072 br i1 undef, label %do.end277, label %cond.true263
2074 cond.true263: ; preds = %do.end254
2075 br i1 undef, label %if.then274, label %do.end277
2077 if.then274: ; preds = %cond.true263
2080 do.end277: ; preds = %cond.true263, %do.end254
2081 br i1 undef, label %if.then280, label %do.body283
2083 if.then280: ; preds = %do.end277
2084 br label %do.body283
2086 do.body283: ; preds = %if.then280, %do.end277, %do.end193
2087 br i1 undef, label %if.end301, label %cond.true286
2089 cond.true286: ; preds = %do.body283
2090 br i1 undef, label %if.then297, label %if.end301
2092 if.then297: ; preds = %cond.true286
2095 if.end301: ; preds = %if.then297, %cond.true286, %do.body283
2096 br i1 undef, label %if.then304, label %do.body351
2098 if.then304: ; preds = %if.end301, %do.end166
2099 br i1 undef, label %do.body309.lr.ph, label %do.body351
2101 do.body309.lr.ph: ; preds = %if.then304
2102 br label %do.body309
2104 do.body309: ; preds = %for.cond.backedge, %do.body309.lr.ph
2105 br i1 undef, label %do.end328, label %cond.true312
2107 cond.true312: ; preds = %do.body309
2108 br i1 undef, label %if.then323, label %do.end328
2110 if.then323: ; preds = %cond.true312
2113 do.end328: ; preds = %if.then323, %cond.true312, %do.body309
2114 br i1 undef, label %for.cond.backedge, label %cond.true335
2116 for.cond.backedge: ; preds = %if.then346, %cond.true335, %do.end328
2117 br i1 undef, label %do.body309, label %do.body351
2119 cond.true335: ; preds = %do.end328
2120 br i1 undef, label %if.then346, label %for.cond.backedge
2122 if.then346: ; preds = %cond.true335
2123 br label %for.cond.backedge
2125 do.body351: ; preds = %for.cond.backedge, %if.then304, %if.end301
2126 br i1 undef, label %if.then354, label %if.end355
2128 if.then354: ; preds = %do.body351
2131 if.end355: ; preds = %if.then354, %do.body351
2132 br i1 undef, label %if.else, label %if.then364
2134 if.then364: ; preds = %if.end355
2135 br label %do.body366
2137 if.else: ; preds = %if.end355
2138 br label %do.body366
2140 do.body366: ; preds = %if.else, %if.then364
2141 br i1 undef, label %if.then369, label %if.end377.critedge
2143 if.then369: ; preds = %do.body366
2146 if.end377.critedge: ; preds = %do.body366
2149 if.end377: ; preds = %if.end377.critedge, %if.then369
2150 br i1 undef, label %if.then383, label %if.end392.critedge
2152 if.then383: ; preds = %if.end377
2155 if.end392.critedge: ; preds = %if.end377
2158 if.end392: ; preds = %if.end392.critedge, %if.then383
2159 br i1 undef, label %if.then398, label %if.end399
2161 if.then398: ; preds = %if.end392
2164 if.end399: ; preds = %if.then398, %if.end392
2165 invoke void bitcast (i8* (i8*, i8*, ...)* @objc_msgSend to void (i8*, i8*)*)(i8* undef, i8* undef)
2166 to label %eh.cont unwind label %lpad, !clang.arc.no_objc_arc_exceptions !0
2168 eh.cont: ; preds = %if.end399
2169 br i1 undef, label %if.then430, label %if.end439.critedge
2171 if.then430: ; preds = %eh.cont
2172 %1 = call i8* @llvm.objc.retain(i8* %0)
2175 lpad: ; preds = %if.end399
2176 %2 = landingpad { i8*, i32 }
2177 catch i8* @"OBJC_EHTYPE_$_NSException"
2180 if.end439.critedge: ; preds = %eh.cont
2181 %3 = call i8* @llvm.objc.retain(i8* %0)
2184 if.end439: ; preds = %if.end439.critedge, %if.then430
2185 call void @llvm.objc.release(i8* %0), !clang.imprecise_release !0
2188 return: ; No predecessors!