blob: 21cfb2615ff7ff7175139c2bc15a000680ac8e96 [file] [log] [blame]
Dan Gohman3c7d3082009-09-11 18:01:28 +00001; RUN: opt < %s -simplifycfg -disable-output
Tanya Lattner003eae52008-03-10 07:21:50 +00002; END.
Dan Gohmanf17a25c2007-07-18 16:29:46 +00003
Tanya Lattner003eae52008-03-10 07:21:50 +00004define void @main(i32 %c) {
Dan Gohmanf17a25c2007-07-18 16:29:46 +00005entry:
Tanya Lattner003eae52008-03-10 07:21:50 +00006 %tmp.9 = icmp eq i32 %c, 2 ; <i1> [#uses=1]
7 br i1 %tmp.9, label %endif.0, label %then.0
Dan Gohmanf17a25c2007-07-18 16:29:46 +00008then.0: ; preds = %entry
9 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000010endif.0: ; preds = %entry
Tanya Lattner003eae52008-03-10 07:21:50 +000011 br i1 false, label %then.1, label %endif.1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000012then.1: ; preds = %endif.0
13 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000014endif.1: ; preds = %endif.0
Tanya Lattner003eae52008-03-10 07:21:50 +000015 br i1 false, label %then.2, label %endif.2
Dan Gohmanf17a25c2007-07-18 16:29:46 +000016then.2: ; preds = %endif.1
17 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000018endif.2: ; preds = %endif.1
Tanya Lattner003eae52008-03-10 07:21:50 +000019 br i1 false, label %then.3, label %loopentry.0
Dan Gohmanf17a25c2007-07-18 16:29:46 +000020then.3: ; preds = %endif.2
21 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000022loopentry.0: ; preds = %endif.2
Tanya Lattner003eae52008-03-10 07:21:50 +000023 br i1 false, label %no_exit.0.preheader, label %loopexit.0
Dan Gohmanf17a25c2007-07-18 16:29:46 +000024no_exit.0.preheader: ; preds = %loopentry.0
25 br label %no_exit.0
Dan Gohmanf17a25c2007-07-18 16:29:46 +000026no_exit.0: ; preds = %endif.4, %no_exit.0.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +000027 br i1 false, label %then.4, label %endif.4
Dan Gohmanf17a25c2007-07-18 16:29:46 +000028then.4: ; preds = %no_exit.0
29 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000030endif.4: ; preds = %no_exit.0
Tanya Lattner003eae52008-03-10 07:21:50 +000031 br i1 false, label %no_exit.0, label %loopexit.0.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000032loopexit.0.loopexit: ; preds = %endif.4
33 br label %loopexit.0
Dan Gohmanf17a25c2007-07-18 16:29:46 +000034loopexit.0: ; preds = %loopexit.0.loopexit, %loopentry.0
Tanya Lattner003eae52008-03-10 07:21:50 +000035 br i1 false, label %then.5, label %loopentry.1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000036then.5: ; preds = %loopexit.0
37 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000038loopentry.1: ; preds = %loopexit.0
Tanya Lattner003eae52008-03-10 07:21:50 +000039 %tmp.143 = icmp sgt i32 0, 0 ; <i1> [#uses=4]
40 br i1 %tmp.143, label %no_exit.1.preheader, label %loopexit.1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000041no_exit.1.preheader: ; preds = %loopentry.1
42 br label %no_exit.1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000043no_exit.1: ; preds = %endif.6, %no_exit.1.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +000044 br i1 false, label %then.6, label %shortcirc_next.3
Dan Gohmanf17a25c2007-07-18 16:29:46 +000045shortcirc_next.3: ; preds = %no_exit.1
Tanya Lattner003eae52008-03-10 07:21:50 +000046 br i1 false, label %then.6, label %shortcirc_next.4
Dan Gohmanf17a25c2007-07-18 16:29:46 +000047shortcirc_next.4: ; preds = %shortcirc_next.3
Tanya Lattner003eae52008-03-10 07:21:50 +000048 br i1 false, label %then.6, label %endif.6
Dan Gohmanf17a25c2007-07-18 16:29:46 +000049then.6: ; preds = %shortcirc_next.4, %shortcirc_next.3, %no_exit.1
50 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000051endif.6: ; preds = %shortcirc_next.4
Tanya Lattner003eae52008-03-10 07:21:50 +000052 br i1 false, label %no_exit.1, label %loopexit.1.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000053loopexit.1.loopexit: ; preds = %endif.6
54 br label %loopexit.1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000055loopexit.1: ; preds = %loopexit.1.loopexit, %loopentry.1
Tanya Lattner003eae52008-03-10 07:21:50 +000056 br i1 false, label %then.i, label %loopentry.0.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000057then.i: ; preds = %loopexit.1
58 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000059loopentry.0.i: ; preds = %loopexit.1
Tanya Lattner003eae52008-03-10 07:21:50 +000060 br i1 %tmp.143, label %no_exit.0.i.preheader, label %readvector.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000061no_exit.0.i.preheader: ; preds = %loopentry.0.i
62 br label %no_exit.0.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000063no_exit.0.i: ; preds = %loopexit.1.i, %no_exit.0.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +000064 br i1 false, label %no_exit.1.i.preheader, label %loopexit.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000065no_exit.1.i.preheader: ; preds = %no_exit.0.i
66 br label %no_exit.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000067no_exit.1.i: ; preds = %loopexit.2.i, %no_exit.1.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +000068 br i1 false, label %no_exit.2.i.preheader, label %loopexit.2.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000069no_exit.2.i.preheader: ; preds = %no_exit.1.i
70 br label %no_exit.2.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000071no_exit.2.i: ; preds = %no_exit.2.i, %no_exit.2.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +000072 br i1 false, label %no_exit.2.i, label %loopexit.2.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000073loopexit.2.i.loopexit: ; preds = %no_exit.2.i
74 br label %loopexit.2.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000075loopexit.2.i: ; preds = %loopexit.2.i.loopexit, %no_exit.1.i
Tanya Lattner003eae52008-03-10 07:21:50 +000076 br i1 false, label %no_exit.1.i, label %loopexit.1.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000077loopexit.1.i.loopexit: ; preds = %loopexit.2.i
78 br label %loopexit.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000079loopexit.1.i: ; preds = %loopexit.1.i.loopexit, %no_exit.0.i
Tanya Lattner003eae52008-03-10 07:21:50 +000080 br i1 false, label %no_exit.0.i, label %readvector.exit.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000081readvector.exit.loopexit: ; preds = %loopexit.1.i
82 br label %readvector.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +000083readvector.exit: ; preds = %readvector.exit.loopexit, %loopentry.0.i
Tanya Lattner003eae52008-03-10 07:21:50 +000084 br i1 %tmp.143, label %loopentry.1.preheader.i, label %loopexit.0.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000085loopentry.1.preheader.i: ; preds = %readvector.exit
86 br label %loopentry.1.outer.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +000087loopentry.1.outer.i: ; preds = %loopexit.1.i110, %loopentry.1.preheader.i
88 br label %loopentry.1.i85
Dan Gohmanf17a25c2007-07-18 16:29:46 +000089loopentry.1.i85.loopexit: ; preds = %hamming.exit16.i
90 br label %loopentry.1.i85
Dan Gohmanf17a25c2007-07-18 16:29:46 +000091loopentry.1.i85: ; preds = %loopentry.1.i85.loopexit, %loopentry.1.outer.i
Tanya Lattner003eae52008-03-10 07:21:50 +000092 br i1 false, label %no_exit.1.preheader.i, label %loopexit.1.i110.loopexit1
Dan Gohmanf17a25c2007-07-18 16:29:46 +000093no_exit.1.preheader.i: ; preds = %loopentry.1.i85
94 br label %no_exit.1.i87
Dan Gohmanf17a25c2007-07-18 16:29:46 +000095no_exit.1.i87: ; preds = %then.1.i107, %no_exit.1.preheader.i
Tanya Lattner003eae52008-03-10 07:21:50 +000096 br i1 false, label %no_exit.i.i101.preheader, label %hamming.exit.i104
Dan Gohmanf17a25c2007-07-18 16:29:46 +000097no_exit.i.i101.preheader: ; preds = %no_exit.1.i87
98 br label %no_exit.i.i101
Dan Gohmanf17a25c2007-07-18 16:29:46 +000099no_exit.i.i101: ; preds = %no_exit.i.i101, %no_exit.i.i101.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000100 br i1 false, label %no_exit.i.i101, label %hamming.exit.i104.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000101hamming.exit.i104.loopexit: ; preds = %no_exit.i.i101
102 br label %hamming.exit.i104
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000103hamming.exit.i104: ; preds = %hamming.exit.i104.loopexit, %no_exit.1.i87
Tanya Lattner003eae52008-03-10 07:21:50 +0000104 br i1 false, label %no_exit.i15.i.preheader, label %hamming.exit16.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000105no_exit.i15.i.preheader: ; preds = %hamming.exit.i104
106 br label %no_exit.i15.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000107no_exit.i15.i: ; preds = %no_exit.i15.i, %no_exit.i15.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000108 br i1 false, label %no_exit.i15.i, label %hamming.exit16.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000109hamming.exit16.i.loopexit: ; preds = %no_exit.i15.i
110 br label %hamming.exit16.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000111hamming.exit16.i: ; preds = %hamming.exit16.i.loopexit, %hamming.exit.i104
Tanya Lattner003eae52008-03-10 07:21:50 +0000112 br i1 false, label %loopentry.1.i85.loopexit, label %then.1.i107
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000113then.1.i107: ; preds = %hamming.exit16.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000114 br i1 false, label %no_exit.1.i87, label %loopexit.1.i110.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000115loopexit.1.i110.loopexit: ; preds = %then.1.i107
116 br label %loopexit.1.i110
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000117loopexit.1.i110.loopexit1: ; preds = %loopentry.1.i85
118 br label %loopexit.1.i110
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000119loopexit.1.i110: ; preds = %loopexit.1.i110.loopexit1, %loopexit.1.i110.loopexit
Tanya Lattner003eae52008-03-10 07:21:50 +0000120 br i1 false, label %loopentry.1.outer.i, label %loopexit.0.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000121loopexit.0.i.loopexit: ; preds = %loopexit.1.i110
122 br label %loopexit.0.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000123loopexit.0.i: ; preds = %loopexit.0.i.loopexit, %readvector.exit
Tanya Lattner003eae52008-03-10 07:21:50 +0000124 br i1 false, label %UnifiedReturnBlock.i113, label %then.2.i112
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000125then.2.i112: ; preds = %loopexit.0.i
126 br label %checkham.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000127UnifiedReturnBlock.i113: ; preds = %loopexit.0.i
128 br label %checkham.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000129checkham.exit: ; preds = %UnifiedReturnBlock.i113, %then.2.i112
Tanya Lattner003eae52008-03-10 07:21:50 +0000130 br i1 false, label %loopentry.1.i14.preheader, label %loopentry.3.i.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000131loopentry.1.i14.preheader: ; preds = %checkham.exit
132 br label %loopentry.1.i14
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000133loopentry.1.i14: ; preds = %loopexit.1.i18, %loopentry.1.i14.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000134 br i1 false, label %no_exit.1.i16.preheader, label %loopexit.1.i18
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000135no_exit.1.i16.preheader: ; preds = %loopentry.1.i14
136 br label %no_exit.1.i16
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000137no_exit.1.i16: ; preds = %no_exit.1.i16, %no_exit.1.i16.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000138 br i1 false, label %no_exit.1.i16, label %loopexit.1.i18.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000139loopexit.1.i18.loopexit: ; preds = %no_exit.1.i16
140 br label %loopexit.1.i18
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000141loopexit.1.i18: ; preds = %loopexit.1.i18.loopexit, %loopentry.1.i14
Tanya Lattner003eae52008-03-10 07:21:50 +0000142 br i1 false, label %loopentry.1.i14, label %loopentry.3.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000143loopentry.3.i.loopexit: ; preds = %loopexit.1.i18
144 br label %loopentry.3.i.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000145loopentry.3.i.preheader: ; preds = %loopentry.3.i.loopexit, %checkham.exit
146 br label %loopentry.3.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000147loopentry.3.i: ; preds = %endif.1.i, %loopentry.3.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000148 br i1 false, label %loopentry.4.i.preheader, label %endif.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000149loopentry.4.i.preheader: ; preds = %loopentry.3.i
150 br label %loopentry.4.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000151loopentry.4.i: ; preds = %loopexit.4.i, %loopentry.4.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000152 br i1 false, label %no_exit.4.i.preheader, label %loopexit.4.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000153no_exit.4.i.preheader: ; preds = %loopentry.4.i
154 br label %no_exit.4.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000155no_exit.4.i: ; preds = %no_exit.4.i.backedge, %no_exit.4.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000156 br i1 false, label %endif.0.i, label %else.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000157else.i: ; preds = %no_exit.4.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000158 br i1 false, label %no_exit.4.i.backedge, label %loopexit.4.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000159no_exit.4.i.backedge: ; preds = %endif.0.i, %else.i
160 br label %no_exit.4.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000161endif.0.i: ; preds = %no_exit.4.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000162 br i1 false, label %no_exit.4.i.backedge, label %loopexit.4.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000163loopexit.4.i.loopexit: ; preds = %endif.0.i, %else.i
164 br label %loopexit.4.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000165loopexit.4.i: ; preds = %loopexit.4.i.loopexit, %loopentry.4.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000166 br i1 false, label %loopentry.4.i, label %endif.1.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000167endif.1.i.loopexit: ; preds = %loopexit.4.i
168 br label %endif.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000169endif.1.i: ; preds = %endif.1.i.loopexit, %loopentry.3.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000170 %exitcond = icmp eq i32 0, 10 ; <i1> [#uses=1]
171 br i1 %exitcond, label %generateT.exit, label %loopentry.3.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000172generateT.exit: ; preds = %endif.1.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000173 br i1 false, label %then.0.i, label %loopentry.1.i30.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000174then.0.i: ; preds = %generateT.exit
175 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000176loopentry.1.i30.loopexit: ; preds = %loopexit.3.i
177 br label %loopentry.1.i30.backedge
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000178loopentry.1.i30.preheader: ; preds = %generateT.exit
179 br label %loopentry.1.i30
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000180loopentry.1.i30: ; preds = %loopentry.1.i30.backedge, %loopentry.1.i30.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000181 br i1 %tmp.143, label %no_exit.0.i31.preheader, label %loopentry.1.i30.backedge
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000182loopentry.1.i30.backedge: ; preds = %loopentry.1.i30, %loopentry.1.i30.loopexit
183 br label %loopentry.1.i30
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000184no_exit.0.i31.preheader: ; preds = %loopentry.1.i30
185 br label %no_exit.0.i31
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000186no_exit.0.i31: ; preds = %loopexit.3.i, %no_exit.0.i31.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000187 br i1 false, label %then.1.i, label %else.0.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000188then.1.i: ; preds = %no_exit.0.i31
Tanya Lattner003eae52008-03-10 07:21:50 +0000189 br i1 undef, label %then.0.i29, label %loopentry.0.i31
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000190then.0.i29: ; preds = %then.1.i
191 unreachable
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000192loopentry.0.i31: ; preds = %then.1.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000193 br i1 false, label %no_exit.0.i38.preheader, label %loopentry.1.i.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000194no_exit.0.i38.preheader: ; preds = %loopentry.0.i31
195 br label %no_exit.0.i38
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000196no_exit.0.i38: ; preds = %no_exit.0.i38, %no_exit.0.i38.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000197 br i1 undef, label %no_exit.0.i38, label %loopentry.1.i.preheader.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000198loopentry.1.i.preheader.loopexit: ; preds = %no_exit.0.i38
199 br label %loopentry.1.i.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000200loopentry.1.i.preheader: ; preds = %loopentry.1.i.preheader.loopexit, %loopentry.0.i31
201 br label %loopentry.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000202loopentry.1.i: ; preds = %endif.2.i, %loopentry.1.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000203 br i1 undef, label %loopentry.2.i39.preheader, label %loopexit.1.i79.loopexit2
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000204loopentry.2.i39.preheader: ; preds = %loopentry.1.i
205 br label %loopentry.2.i39
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000206loopentry.2.i39: ; preds = %loopexit.5.i77, %loopentry.2.i39.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000207 br i1 false, label %loopentry.3.i40.preheader, label %hamming.exit.i71
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000208loopentry.3.i40.preheader: ; preds = %loopentry.2.i39
209 br label %loopentry.3.i40
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000210loopentry.3.i40: ; preds = %loopexit.3.i51, %loopentry.3.i40.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000211 br i1 false, label %no_exit.3.preheader.i42, label %loopexit.3.i51
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000212no_exit.3.preheader.i42: ; preds = %loopentry.3.i40
213 br label %no_exit.3.i49
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000214no_exit.3.i49: ; preds = %no_exit.3.i49, %no_exit.3.preheader.i42
Tanya Lattner003eae52008-03-10 07:21:50 +0000215 br i1 undef, label %no_exit.3.i49, label %loopexit.3.i51.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000216loopexit.3.i51.loopexit: ; preds = %no_exit.3.i49
217 br label %loopexit.3.i51
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000218loopexit.3.i51: ; preds = %loopexit.3.i51.loopexit, %loopentry.3.i40
Tanya Lattner003eae52008-03-10 07:21:50 +0000219 br i1 undef, label %loopentry.3.i40, label %loopentry.4.i52
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000220loopentry.4.i52: ; preds = %loopexit.3.i51
Tanya Lattner003eae52008-03-10 07:21:50 +0000221 br i1 false, label %no_exit.4.i54.preheader, label %hamming.exit.i71
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000222no_exit.4.i54.preheader: ; preds = %loopentry.4.i52
223 br label %no_exit.4.i54
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000224no_exit.4.i54: ; preds = %no_exit.4.backedge.i, %no_exit.4.i54.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000225 br i1 undef, label %then.1.i55, label %endif.1.i56
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000226then.1.i55: ; preds = %no_exit.4.i54
Tanya Lattner003eae52008-03-10 07:21:50 +0000227 br i1 undef, label %no_exit.4.backedge.i, label %loopexit.4.i57
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000228no_exit.4.backedge.i: ; preds = %endif.1.i56, %then.1.i55
229 br label %no_exit.4.i54
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000230endif.1.i56: ; preds = %no_exit.4.i54
Tanya Lattner003eae52008-03-10 07:21:50 +0000231 br i1 undef, label %no_exit.4.backedge.i, label %loopexit.4.i57
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000232loopexit.4.i57: ; preds = %endif.1.i56, %then.1.i55
Tanya Lattner003eae52008-03-10 07:21:50 +0000233 br i1 false, label %no_exit.i.i69.preheader, label %hamming.exit.i71
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000234no_exit.i.i69.preheader: ; preds = %loopexit.4.i57
235 br label %no_exit.i.i69
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000236no_exit.i.i69: ; preds = %no_exit.i.i69, %no_exit.i.i69.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000237 br i1 undef, label %no_exit.i.i69, label %hamming.exit.i71.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000238hamming.exit.i71.loopexit: ; preds = %no_exit.i.i69
239 br label %hamming.exit.i71
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000240hamming.exit.i71: ; preds = %hamming.exit.i71.loopexit, %loopexit.4.i57, %loopentry.4.i52, %loopentry.2.i39
Tanya Lattner003eae52008-03-10 07:21:50 +0000241 br i1 undef, label %endif.2.i, label %loopentry.5.i72
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000242loopentry.5.i72: ; preds = %hamming.exit.i71
Tanya Lattner003eae52008-03-10 07:21:50 +0000243 br i1 false, label %shortcirc_next.i74.preheader, label %loopexit.5.i77
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000244shortcirc_next.i74.preheader: ; preds = %loopentry.5.i72
245 br label %shortcirc_next.i74
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000246shortcirc_next.i74: ; preds = %no_exit.5.i76, %shortcirc_next.i74.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000247 br i1 undef, label %no_exit.5.i76, label %loopexit.5.i77.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000248no_exit.5.i76: ; preds = %shortcirc_next.i74
Tanya Lattner003eae52008-03-10 07:21:50 +0000249 br i1 undef, label %shortcirc_next.i74, label %loopexit.5.i77.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000250loopexit.5.i77.loopexit: ; preds = %no_exit.5.i76, %shortcirc_next.i74
251 br label %loopexit.5.i77
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000252loopexit.5.i77: ; preds = %loopexit.5.i77.loopexit, %loopentry.5.i72
Tanya Lattner003eae52008-03-10 07:21:50 +0000253 br i1 undef, label %loopentry.2.i39, label %loopexit.1.i79.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000254endif.2.i: ; preds = %hamming.exit.i71
255 br label %loopentry.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000256loopexit.1.i79.loopexit: ; preds = %loopexit.5.i77
257 br label %loopexit.1.i79
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000258loopexit.1.i79.loopexit2: ; preds = %loopentry.1.i
259 br label %loopexit.1.i79
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000260loopexit.1.i79: ; preds = %loopexit.1.i79.loopexit2, %loopexit.1.i79.loopexit
Tanya Lattner003eae52008-03-10 07:21:50 +0000261 br i1 undef, label %then.3.i, label %loopentry.6.i80
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000262then.3.i: ; preds = %loopexit.1.i79
Tanya Lattner003eae52008-03-10 07:21:50 +0000263 br i1 false, label %no_exit.6.i82.preheader, label %run.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000264loopentry.6.i80: ; preds = %loopexit.1.i79
Tanya Lattner003eae52008-03-10 07:21:50 +0000265 br i1 false, label %no_exit.6.i82.preheader, label %run.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000266no_exit.6.i82.preheader: ; preds = %loopentry.6.i80, %then.3.i
267 br label %no_exit.6.i82
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000268no_exit.6.i82: ; preds = %no_exit.6.i82, %no_exit.6.i82.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000269 br i1 undef, label %no_exit.6.i82, label %run.exit.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000270run.exit.loopexit: ; preds = %no_exit.6.i82
271 br label %run.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000272run.exit: ; preds = %run.exit.loopexit, %loopentry.6.i80, %then.3.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000273 br i1 false, label %no_exit.1.i36.preheader, label %loopentry.3.i37
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000274else.0.i: ; preds = %no_exit.0.i31
Tanya Lattner003eae52008-03-10 07:21:50 +0000275 br i1 false, label %then.0.i4, label %loopentry.0.i6
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000276then.0.i4: ; preds = %else.0.i
277 unreachable
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000278loopentry.0.i6: ; preds = %else.0.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000279 br i1 false, label %no_exit.0.i8.preheader, label %loopentry.2.i.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000280no_exit.0.i8.preheader: ; preds = %loopentry.0.i6
281 br label %no_exit.0.i8
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000282no_exit.0.i8: ; preds = %no_exit.0.i8, %no_exit.0.i8.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000283 br i1 false, label %no_exit.0.i8, label %loopentry.2.i.preheader.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000284loopentry.2.i.preheader.loopexit: ; preds = %no_exit.0.i8
285 br label %loopentry.2.i.preheader
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000286loopentry.2.i.preheader: ; preds = %loopentry.2.i.preheader.loopexit, %loopentry.0.i6
287 br label %loopentry.2.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000288loopentry.2.i: ; preds = %endif.3.i19, %loopentry.2.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000289 br i1 false, label %loopentry.3.i10.preheader, label %loopentry.4.i15
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000290loopentry.3.i10.preheader: ; preds = %loopentry.2.i
291 br label %loopentry.3.i10
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000292loopentry.3.i10: ; preds = %loopexit.3.i14, %loopentry.3.i10.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000293 br i1 false, label %no_exit.3.preheader.i, label %loopexit.3.i14
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000294no_exit.3.preheader.i: ; preds = %loopentry.3.i10
295 br label %no_exit.3.i12
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000296no_exit.3.i12: ; preds = %no_exit.3.i12, %no_exit.3.preheader.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000297 br i1 false, label %no_exit.3.i12, label %loopexit.3.i14.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000298loopexit.3.i14.loopexit: ; preds = %no_exit.3.i12
299 br label %loopexit.3.i14
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000300loopexit.3.i14: ; preds = %loopexit.3.i14.loopexit, %loopentry.3.i10
Tanya Lattner003eae52008-03-10 07:21:50 +0000301 br i1 false, label %loopentry.3.i10, label %loopentry.4.i15.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000302loopentry.4.i15.loopexit: ; preds = %loopexit.3.i14
303 br label %loopentry.4.i15
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000304loopentry.4.i15: ; preds = %loopentry.4.i15.loopexit, %loopentry.2.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000305 br i1 false, label %loopentry.5.outer.i.preheader, label %loopentry.7.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000306loopentry.5.outer.i.preheader: ; preds = %loopentry.4.i15
307 br label %loopentry.5.outer.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000308loopentry.5.outer.i: ; preds = %loopexit.5.i, %loopentry.5.outer.i.preheader
309 br label %loopentry.5.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000310loopentry.5.i: ; preds = %endif.1.i18, %loopentry.5.outer.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000311 br i1 false, label %no_exit.5.i.preheader, label %loopexit.5.i.loopexit3
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000312no_exit.5.i.preheader: ; preds = %loopentry.5.i
313 br label %no_exit.5.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000314no_exit.5.i: ; preds = %then.2.i, %no_exit.5.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000315 br i1 false, label %loopentry.6.i, label %endif.1.i18
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000316loopentry.6.i: ; preds = %no_exit.5.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000317 br i1 false, label %no_exit.6.preheader.i, label %loopexit.6.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000318no_exit.6.preheader.i: ; preds = %loopentry.6.i
319 br label %no_exit.6.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000320no_exit.6.i: ; preds = %no_exit.6.i, %no_exit.6.preheader.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000321 br i1 false, label %no_exit.6.i, label %loopexit.6.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000322loopexit.6.i.loopexit: ; preds = %no_exit.6.i
323 br label %loopexit.6.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000324loopexit.6.i: ; preds = %loopexit.6.i.loopexit, %loopentry.6.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000325 br i1 false, label %then.2.i, label %endif.1.i18
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000326then.2.i: ; preds = %loopexit.6.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000327 br i1 false, label %no_exit.5.i, label %loopexit.5.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000328endif.1.i18: ; preds = %loopexit.6.i, %no_exit.5.i
329 br label %loopentry.5.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000330loopexit.5.i.loopexit: ; preds = %then.2.i
331 br label %loopexit.5.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000332loopexit.5.i.loopexit3: ; preds = %loopentry.5.i
333 br label %loopexit.5.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000334loopexit.5.i: ; preds = %loopexit.5.i.loopexit3, %loopexit.5.i.loopexit
Tanya Lattner003eae52008-03-10 07:21:50 +0000335 br i1 false, label %loopentry.5.outer.i, label %loopentry.7.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000336loopentry.7.i.loopexit: ; preds = %loopexit.5.i
337 br label %loopentry.7.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000338loopentry.7.i: ; preds = %loopentry.7.i.loopexit, %loopentry.4.i15
Tanya Lattner003eae52008-03-10 07:21:50 +0000339 br i1 false, label %no_exit.7.i.preheader, label %hamming.exit.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000340no_exit.7.i.preheader: ; preds = %loopentry.7.i
341 br label %no_exit.7.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000342no_exit.7.i: ; preds = %no_exit.7.i, %no_exit.7.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000343 br i1 false, label %no_exit.7.i, label %loopexit.7.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000344loopexit.7.i: ; preds = %no_exit.7.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000345 br i1 false, label %no_exit.i.i.preheader, label %hamming.exit.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000346no_exit.i.i.preheader: ; preds = %loopexit.7.i
347 br label %no_exit.i.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000348no_exit.i.i: ; preds = %no_exit.i.i, %no_exit.i.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000349 br i1 false, label %no_exit.i.i, label %hamming.exit.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000350hamming.exit.i.loopexit: ; preds = %no_exit.i.i
351 br label %hamming.exit.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000352hamming.exit.i: ; preds = %hamming.exit.i.loopexit, %loopexit.7.i, %loopentry.7.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000353 br i1 false, label %endif.3.i19, label %loopentry.8.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000354loopentry.8.i: ; preds = %hamming.exit.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000355 br i1 false, label %shortcirc_next.i.preheader, label %loopexit.8.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000356shortcirc_next.i.preheader: ; preds = %loopentry.8.i
357 br label %shortcirc_next.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000358shortcirc_next.i: ; preds = %no_exit.8.i, %shortcirc_next.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000359 br i1 false, label %no_exit.8.i, label %loopexit.8.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000360no_exit.8.i: ; preds = %shortcirc_next.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000361 br i1 false, label %shortcirc_next.i, label %loopexit.8.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000362loopexit.8.i.loopexit: ; preds = %no_exit.8.i, %shortcirc_next.i
363 br label %loopexit.8.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000364loopexit.8.i: ; preds = %loopexit.8.i.loopexit, %loopentry.8.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000365 br i1 false, label %no_exit.9.i.preheader, label %endif.3.i19
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000366no_exit.9.i.preheader: ; preds = %loopexit.8.i
367 br label %no_exit.9.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000368no_exit.9.i: ; preds = %no_exit.9.i, %no_exit.9.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000369 br i1 false, label %no_exit.9.i, label %endif.3.i19.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000370endif.3.i19.loopexit: ; preds = %no_exit.9.i
371 br label %endif.3.i19
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000372endif.3.i19: ; preds = %endif.3.i19.loopexit, %loopexit.8.i, %hamming.exit.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000373 br i1 false, label %loopentry.2.i, label %loopexit.1.i20
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000374loopexit.1.i20: ; preds = %endif.3.i19
Tanya Lattner003eae52008-03-10 07:21:50 +0000375 br i1 false, label %then.4.i, label %UnifiedReturnBlock.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000376then.4.i: ; preds = %loopexit.1.i20
377 br label %runcont.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000378UnifiedReturnBlock.i: ; preds = %loopexit.1.i20
379 br label %runcont.exit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000380runcont.exit: ; preds = %UnifiedReturnBlock.i, %then.4.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000381 br i1 false, label %no_exit.1.i36.preheader, label %loopentry.3.i37
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000382no_exit.1.i36.preheader: ; preds = %runcont.exit, %run.exit
383 br label %no_exit.1.i36
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000384no_exit.1.i36: ; preds = %no_exit.1.i36, %no_exit.1.i36.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000385 br i1 false, label %no_exit.1.i36, label %loopentry.3.i37.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000386loopentry.3.i37.loopexit: ; preds = %no_exit.1.i36
387 br label %loopentry.3.i37
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000388loopentry.3.i37: ; preds = %loopentry.3.i37.loopexit, %runcont.exit, %run.exit
Tanya Lattner003eae52008-03-10 07:21:50 +0000389 br i1 false, label %loopentry.4.i38.preheader, label %loopexit.3.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000390loopentry.4.i38.preheader: ; preds = %loopentry.3.i37
391 br label %loopentry.4.i38
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000392loopentry.4.i38: ; preds = %loopexit.4.i42, %loopentry.4.i38.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000393 br i1 false, label %no_exit.3.i.preheader, label %loopexit.4.i42
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000394no_exit.3.i.preheader: ; preds = %loopentry.4.i38
395 br label %no_exit.3.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000396no_exit.3.i: ; preds = %no_exit.3.i.backedge, %no_exit.3.i.preheader
Tanya Lattner003eae52008-03-10 07:21:50 +0000397 br i1 false, label %endif.3.i, label %else.1.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000398else.1.i: ; preds = %no_exit.3.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000399 br i1 false, label %no_exit.3.i.backedge, label %loopexit.4.i42.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000400no_exit.3.i.backedge: ; preds = %endif.3.i, %else.1.i
401 br label %no_exit.3.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000402endif.3.i: ; preds = %no_exit.3.i
Tanya Lattner003eae52008-03-10 07:21:50 +0000403 br i1 false, label %no_exit.3.i.backedge, label %loopexit.4.i42.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000404loopexit.4.i42.loopexit: ; preds = %endif.3.i, %else.1.i
405 br label %loopexit.4.i42
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000406loopexit.4.i42: ; preds = %loopexit.4.i42.loopexit, %loopentry.4.i38
Tanya Lattner003eae52008-03-10 07:21:50 +0000407 br i1 false, label %loopentry.4.i38, label %loopexit.3.i.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000408loopexit.3.i.loopexit: ; preds = %loopexit.4.i42
409 br label %loopexit.3.i
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000410loopexit.3.i: ; preds = %loopexit.3.i.loopexit, %loopentry.3.i37
Tanya Lattner003eae52008-03-10 07:21:50 +0000411 %tmp.13.i155 = icmp slt i32 0, 0 ; <i1> [#uses=1]
412 br i1 %tmp.13.i155, label %no_exit.0.i31, label %loopentry.1.i30.loopexit
Dan Gohmanf17a25c2007-07-18 16:29:46 +0000413}