2006-07-12-InlinePruneCGUpdate.ll
16.3 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
; RUN: opt < %s -inline -prune-eh -disable-output
; PR827
@_ZTV8CRjii = internal global [1 x i32 (...)*] [ i32 (...)* @_ZN8CRjii12NlFeeEPN5Jr7sE ] ; <[1 x i32 (...)*]*> [#uses=0]
define internal i32 @_ZN8CRjii12NlFeeEPN5Jr7sE(...) {
entry:
br i1 false, label %cond_true, label %cond_false179
cond_true: ; preds = %entry
br label %bb9
bb: ; preds = %cond_true14
br label %bb9
bb9: ; preds = %bb, %cond_true
br i1 false, label %cond_true14, label %cond_false
cond_true14: ; preds = %bb9
br label %bb
cond_false: ; preds = %bb9
br label %bb15
cond_next: ; No predecessors!
br label %bb15
bb15: ; preds = %cond_next, %cond_false
br label %bb24
bb17: ; preds = %cond_true29
br label %bb24
bb24: ; preds = %bb17, %bb15
br i1 false, label %cond_true29, label %cond_false30
cond_true29: ; preds = %bb24
br label %bb17
cond_false30: ; preds = %bb24
br label %bb32
cond_next31: ; No predecessors!
br label %bb32
bb32: ; preds = %cond_next31, %cond_false30
br label %bb41
bb34: ; preds = %cond_true46
br label %bb41
bb41: ; preds = %bb34, %bb32
br i1 false, label %cond_true46, label %cond_false47
cond_true46: ; preds = %bb41
br label %bb34
cond_false47: ; preds = %bb41
br label %bb49
cond_next48: ; No predecessors!
br label %bb49
bb49: ; preds = %cond_next48, %cond_false47
br label %bb58
bb51: ; preds = %cond_true63
br label %bb58
bb58: ; preds = %bb51, %bb49
br i1 false, label %cond_true63, label %cond_false64
cond_true63: ; preds = %bb58
br label %bb51
cond_false64: ; preds = %bb58
br label %bb66
cond_next65: ; No predecessors!
br label %bb66
bb66: ; preds = %cond_next65, %cond_false64
br label %bb76
bb68: ; preds = %cond_true81
br label %bb76
bb76: ; preds = %bb68, %bb66
br i1 false, label %cond_true81, label %cond_false82
cond_true81: ; preds = %bb76
br label %bb68
cond_false82: ; preds = %bb76
br label %bb84
cond_next83: ; No predecessors!
br label %bb84
bb84: ; preds = %cond_next83, %cond_false82
br label %bb94
bb86: ; preds = %cond_true99
br label %bb94
bb94: ; preds = %bb86, %bb84
br i1 false, label %cond_true99, label %cond_false100
cond_true99: ; preds = %bb94
br label %bb86
cond_false100: ; preds = %bb94
br label %bb102
cond_next101: ; No predecessors!
br label %bb102
bb102: ; preds = %cond_next101, %cond_false100
br label %bb112
bb104: ; preds = %cond_true117
br label %bb112
bb112: ; preds = %bb104, %bb102
br i1 false, label %cond_true117, label %cond_false118
cond_true117: ; preds = %bb112
br label %bb104
cond_false118: ; preds = %bb112
br label %bb120
cond_next119: ; No predecessors!
br label %bb120
bb120: ; preds = %cond_next119, %cond_false118
br label %bb130
bb122: ; preds = %cond_true135
br label %bb130
bb130: ; preds = %bb122, %bb120
br i1 false, label %cond_true135, label %cond_false136
cond_true135: ; preds = %bb130
br label %bb122
cond_false136: ; preds = %bb130
br label %bb138
cond_next137: ; No predecessors!
br label %bb138
bb138: ; preds = %cond_next137, %cond_false136
br label %bb148
bb140: ; preds = %cond_true153
call fastcc void @_Zjrf1( )
br label %bb148
bb148: ; preds = %bb140, %bb138
br i1 false, label %cond_true153, label %cond_false154
cond_true153: ; preds = %bb148
br label %bb140
cond_false154: ; preds = %bb148
br label %bb156
cond_next155: ; No predecessors!
br label %bb156
bb156: ; preds = %cond_next155, %cond_false154
br label %bb166
bb158: ; preds = %cond_true171
br label %bb166
bb166: ; preds = %bb158, %bb156
br i1 false, label %cond_true171, label %cond_false172
cond_true171: ; preds = %bb166
br label %bb158
cond_false172: ; preds = %bb166
br label %bb174
cond_next173: ; No predecessors!
br label %bb174
bb174: ; preds = %cond_next173, %cond_false172
br label %cleanup
cleanup: ; preds = %bb174
br label %finally
finally: ; preds = %cleanup
br label %cond_next180
cond_false179: ; preds = %entry
br label %cond_next180
cond_next180: ; preds = %cond_false179, %finally
br label %return
return: ; preds = %cond_next180
ret i32 0
}
define internal fastcc void @_Zjrf2() {
entry:
br label %bb3
bb: ; preds = %cond_true
br label %bb3
bb3: ; preds = %bb, %entry
%tmp5 = load i8*, i8** null ; <i8*> [#uses=1]
%tmp = icmp ne i8* null, %tmp5 ; <i1> [#uses=1]
br i1 %tmp, label %cond_true, label %cond_false
cond_true: ; preds = %bb3
br label %bb
cond_false: ; preds = %bb3
br label %bb6
cond_next: ; No predecessors!
br label %bb6
bb6: ; preds = %cond_next, %cond_false
br label %return
return: ; preds = %bb6
ret void
}
define internal fastcc void @_Zjrf3() {
entry:
call fastcc void @_Zjrf2( )
br label %return
return: ; preds = %entry
ret void
}
define internal fastcc void @_Zjrf4() {
entry:
br label %bb6
bb: ; preds = %cond_true
br label %bb6
bb6: ; preds = %bb, %entry
br i1 false, label %cond_true, label %cond_false
cond_true: ; preds = %bb6
br label %bb
cond_false: ; preds = %bb6
br label %bb8
cond_next: ; No predecessors!
br label %bb8
bb8: ; preds = %cond_next, %cond_false
br i1 false, label %cond_true9, label %cond_false12
cond_true9: ; preds = %bb8
call fastcc void @_Zjrf3( )
br label %cond_next13
cond_false12: ; preds = %bb8
br label %cond_next13
cond_next13: ; preds = %cond_false12, %cond_true9
br label %return
return: ; preds = %cond_next13
ret void
}
define internal fastcc void @_Zjrf5() {
entry:
call fastcc void @_Zjrf4( )
br label %return
return: ; preds = %entry
ret void
}
define internal fastcc void @_Zjrf6() {
entry:
call fastcc void @_Zjrf5( )
br label %return
return: ; preds = %entry
ret void
}
define internal fastcc void @_Zjrf7() {
entry:
br label %cleanup
cleanup: ; preds = %entry
br label %finally
finally: ; preds = %cleanup
call fastcc void @_Zjrf6( )
br label %cleanup9
cleanup9: ; preds = %finally
br label %finally8
finally8: ; preds = %cleanup9
br label %cleanup11
cleanup11: ; preds = %finally8
br label %finally10
finally10: ; preds = %cleanup11
br label %finally23
finally23: ; preds = %finally10
br label %return
return: ; preds = %finally23
ret void
}
define internal fastcc void @_Zjrf11() {
entry:
br label %bb7
bb: ; preds = %cond_true
br label %bb7
bb7: ; preds = %bb, %entry
br i1 false, label %cond_true, label %cond_false
cond_true: ; preds = %bb7
br label %bb
cond_false: ; preds = %bb7
br label %bb9
cond_next: ; No predecessors!
br label %bb9
bb9: ; preds = %cond_next, %cond_false
br label %return
; No predecessors!
br i1 false, label %cond_true12, label %cond_false15
cond_true12: ; preds = %0
call fastcc void @_Zjrf3( )
br label %cond_next16
cond_false15: ; preds = %0
br label %cond_next16
cond_next16: ; preds = %cond_false15, %cond_true12
br label %return
return: ; preds = %cond_next16, %bb9
ret void
}
define internal fastcc void @_Zjrf9() {
entry:
call fastcc void @_Zjrf11( )
br label %return
return: ; preds = %entry
ret void
}
define internal fastcc void @_Zjrf10() {
entry:
call fastcc void @_Zjrf9( )
br label %return
return: ; preds = %entry
ret void
}
define internal fastcc void @_Zjrf8() {
entry:
br i1 false, label %cond_true, label %cond_false201
cond_true: ; preds = %entry
br i1 false, label %cond_true36, label %cond_false
cond_true36: ; preds = %cond_true
br label %cleanup
cleanup: ; preds = %cond_true36
br label %finally
finally: ; preds = %cleanup
br label %cond_next189
cond_false: ; preds = %cond_true
br i1 false, label %cond_true99, label %cond_false137
cond_true99: ; preds = %cond_false
br label %cleanup136
cleanup136: ; preds = %cond_true99
br label %finally135
finally135: ; preds = %cleanup136
br label %cond_next
cond_false137: ; preds = %cond_false
call fastcc void @_Zjrf10( )
br label %cleanup188
cleanup188: ; preds = %cond_false137
br label %finally187
finally187: ; preds = %cleanup188
br label %cond_next
cond_next: ; preds = %finally187, %finally135
br label %cond_next189
cond_next189: ; preds = %cond_next, %finally
br label %cond_next202
cond_false201: ; preds = %entry
br label %cond_next202
cond_next202: ; preds = %cond_false201, %cond_next189
br label %return
return: ; preds = %cond_next202
ret void
}
define internal fastcc void @_Zjrf1() {
entry:
br label %bb492
bb: ; preds = %cond_true499
br label %cleanup
cleanup: ; preds = %bb
br label %finally
finally: ; preds = %cleanup
br label %cleanup11
cleanup11: ; preds = %finally
br label %finally10
finally10: ; preds = %cleanup11
br i1 false, label %cond_true, label %cond_false286
cond_true: ; preds = %finally10
br label %cleanup26
cleanup26: ; preds = %cond_true
br label %finally25
finally25: ; preds = %cleanup26
br label %bb30
bb27: ; preds = %cond_true37
br label %bb30
bb30: ; preds = %bb27, %finally25
br i1 false, label %cond_true37, label %cond_false
cond_true37: ; preds = %bb30
br label %bb27
cond_false: ; preds = %bb30
br label %bb38
cond_next: ; No predecessors!
br label %bb38
bb38: ; preds = %cond_next, %cond_false
br label %bb148
bb40: ; preds = %cond_true156
br label %bb139
bb41: ; preds = %cond_true142
call fastcc void @_Zjrf7( )
br label %bb105
bb44: ; preds = %cond_true112
br label %bb74
bb66: ; preds = %cond_true80
br label %bb74
bb74: ; preds = %bb66, %bb44
br i1 false, label %cond_true80, label %cond_false81
cond_true80: ; preds = %bb74
br label %bb66
cond_false81: ; preds = %bb74
br label %bb83
cond_next82: ; No predecessors!
br label %bb83
bb83: ; preds = %cond_next82, %cond_false81
br label %cleanup97
cleanup97: ; preds = %bb83
br label %finally96
finally96: ; preds = %cleanup97
br label %cleanup99
cleanup99: ; preds = %finally96
br label %finally98
finally98: ; preds = %cleanup99
br label %bb105
bb105: ; preds = %finally98, %bb41
br i1 false, label %cond_true112, label %cond_false113
cond_true112: ; preds = %bb105
br label %bb44
cond_false113: ; preds = %bb105
br label %bb115
cond_next114: ; No predecessors!
br label %bb115
bb115: ; preds = %cond_next114, %cond_false113
br i1 false, label %cond_true119, label %cond_false123
cond_true119: ; preds = %bb115
call fastcc void @_Zjrf8( )
br label %cond_next124
cond_false123: ; preds = %bb115
br label %cond_next124
cond_next124: ; preds = %cond_false123, %cond_true119
br i1 false, label %cond_true131, label %cond_false132
cond_true131: ; preds = %cond_next124
br label %cleanup135
cond_false132: ; preds = %cond_next124
br label %cond_next133
cond_next133: ; preds = %cond_false132
br label %cleanup136
cleanup135: ; preds = %cond_true131
br label %done
cleanup136: ; preds = %cond_next133
br label %finally134
finally134: ; preds = %cleanup136
br label %bb139
bb139: ; preds = %finally134, %bb40
br i1 false, label %cond_true142, label %cond_false143
cond_true142: ; preds = %bb139
br label %bb41
cond_false143: ; preds = %bb139
br label %bb145
cond_next144: ; No predecessors!
br label %bb145
bb145: ; preds = %cond_next144, %cond_false143
br label %bb148
bb148: ; preds = %bb145, %bb38
br i1 false, label %cond_true156, label %cond_false157
cond_true156: ; preds = %bb148
br label %bb40
cond_false157: ; preds = %bb148
br label %bb159
cond_next158: ; No predecessors!
br label %bb159
bb159: ; preds = %cond_next158, %cond_false157
br label %done
done: ; preds = %bb159, %cleanup135
br label %bb214
bb185: ; preds = %cond_true218
br i1 false, label %cond_true193, label %cond_false206
cond_true193: ; preds = %bb185
br label %cond_next211
cond_false206: ; preds = %bb185
br label %cond_next211
cond_next211: ; preds = %cond_false206, %cond_true193
br label %bb214
bb214: ; preds = %cond_next211, %done
br i1 false, label %cond_true218, label %cond_false219
cond_true218: ; preds = %bb214
br label %bb185
cond_false219: ; preds = %bb214
br label %bb221
cond_next220: ; No predecessors!
br label %bb221
bb221: ; preds = %cond_next220, %cond_false219
br i1 false, label %cond_true236, label %cond_false245
cond_true236: ; preds = %bb221
br label %cond_next249
cond_false245: ; preds = %bb221
br label %cond_next249
cond_next249: ; preds = %cond_false245, %cond_true236
br i1 false, label %cond_true272, label %cond_false277
cond_true272: ; preds = %cond_next249
br label %cond_next278
cond_false277: ; preds = %cond_next249
br label %cond_next278
cond_next278: ; preds = %cond_false277, %cond_true272
br label %cleanup285
cleanup285: ; preds = %cond_next278
br label %finally284
finally284: ; preds = %cleanup285
br label %cond_next287
cond_false286: ; preds = %finally10
br label %cond_next287
cond_next287: ; preds = %cond_false286, %finally284
br i1 false, label %cond_true317, label %cond_false319
cond_true317: ; preds = %cond_next287
br label %cond_next321
cond_false319: ; preds = %cond_next287
br label %cond_next321
cond_next321: ; preds = %cond_false319, %cond_true317
br label %bb348
bb335: ; preds = %cond_true355
br label %bb348
bb348: ; preds = %bb335, %cond_next321
br i1 false, label %cond_true355, label %cond_false356
cond_true355: ; preds = %bb348
br label %bb335
cond_false356: ; preds = %bb348
br label %bb358
cond_next357: ; No predecessors!
br label %bb358
bb358: ; preds = %cond_next357, %cond_false356
br i1 false, label %cond_true363, label %cond_false364
cond_true363: ; preds = %bb358
br label %bb388
cond_false364: ; preds = %bb358
br label %cond_next365
cond_next365: ; preds = %cond_false364
br i1 false, label %cond_true370, label %cond_false371
cond_true370: ; preds = %cond_next365
br label %bb388
cond_false371: ; preds = %cond_next365
br label %cond_next372
cond_next372: ; preds = %cond_false371
br i1 false, label %cond_true385, label %cond_false386
cond_true385: ; preds = %cond_next372
br label %bb388
cond_false386: ; preds = %cond_next372
br label %cond_next387
cond_next387: ; preds = %cond_false386
br label %bb389
bb388: ; preds = %cond_true385, %cond_true370, %cond_true363
br label %bb389
bb389: ; preds = %bb388, %cond_next387
br i1 false, label %cond_true392, label %cond_false443
cond_true392: ; preds = %bb389
br label %bb419
bb402: ; preds = %cond_true425
br i1 false, label %cond_true406, label %cond_false412
cond_true406: ; preds = %bb402
br label %cond_next416
cond_false412: ; preds = %bb402
br label %cond_next416
cond_next416: ; preds = %cond_false412, %cond_true406
br label %bb419
bb419: ; preds = %cond_next416, %cond_true392
br i1 false, label %cond_true425, label %cond_false426
cond_true425: ; preds = %bb419
br label %bb402
cond_false426: ; preds = %bb419
br label %bb428
cond_next427: ; No predecessors!
br label %bb428
bb428: ; preds = %cond_next427, %cond_false426
br label %cond_next478
cond_false443: ; preds = %bb389
br label %bb460
bb450: ; preds = %cond_true466
br label %bb460
bb460: ; preds = %bb450, %cond_false443
br i1 false, label %cond_true466, label %cond_false467
cond_true466: ; preds = %bb460
br label %bb450
cond_false467: ; preds = %bb460
br label %bb469
cond_next468: ; No predecessors!
br label %bb469
bb469: ; preds = %cond_next468, %cond_false467
br label %cond_next478
cond_next478: ; preds = %bb469, %bb428
br label %cleanup485
cleanup485: ; preds = %cond_next478
br label %finally484
finally484: ; preds = %cleanup485
br label %cleanup487
cleanup487: ; preds = %finally484
br label %finally486
finally486: ; preds = %cleanup487
br label %cleanup489
cleanup489: ; preds = %finally486
br label %finally488
finally488: ; preds = %cleanup489
br label %bb492
bb492: ; preds = %finally488, %entry
br i1 false, label %cond_true499, label %cond_false500
cond_true499: ; preds = %bb492
br label %bb
cond_false500: ; preds = %bb492
br label %bb502
cond_next501: ; No predecessors!
br label %bb502
bb502: ; preds = %cond_next501, %cond_false500
br label %return
return: ; preds = %bb502
ret void
}
define internal fastcc void @_ZSt26__unguarded_insertion_sortIN9__gnu_cxx17__normal_iteratorIPSsSt6vectorISsSaISsEEEEEvT_S7_() {
entry:
br label %bb12
bb: ; preds = %cond_true
br label %cleanup
cleanup: ; preds = %bb
br label %finally
finally: ; preds = %cleanup
br label %bb12
bb12: ; preds = %finally, %entry
br i1 false, label %cond_true, label %cond_false
cond_true: ; preds = %bb12
br label %bb
cond_false: ; preds = %bb12
br label %bb14
cond_next: ; No predecessors!
br label %bb14
bb14: ; preds = %cond_next, %cond_false
br label %return
return: ; preds = %bb14
ret void
}