Fix llvm/test/tools/gold/X86/bad-alias.ll.
[oota-llvm.git] / test / Other / 2007-04-24-eliminate-mostly-empty-blocks.ll
1 ;RUN: opt < %s -codegenprepare -disable-output
2
3 define void @foo() {
4 entry:
5         br i1 false, label %cond_next31, label %cond_true
6
7 cond_true:              ; preds = %entry
8         br i1 false, label %cond_true19, label %cond_next31
9
10 cond_true19:            ; preds = %cond_true
11         br i1 false, label %bb510, label %cond_next31
12
13 cond_next31:            ; preds = %cond_true19, %cond_true, %entry
14         br i1 false, label %cond_true61, label %cond_next78
15
16 cond_true61:            ; preds = %cond_next31
17         br label %cond_next78
18
19 cond_next78:            ; preds = %cond_true61, %cond_next31
20         br i1 false, label %cond_true93, label %bb.preheader
21
22 cond_true93:            ; preds = %cond_next78
23         br label %bb.preheader
24
25 bb.preheader:           ; preds = %cond_true93, %cond_next78
26         %iftmp.11.0.ph.ph = phi i16 [ 0, %cond_true93 ], [ 0, %cond_next78 ]            ; <i16> [#uses=1]
27         br label %bb
28
29 bb:             ; preds = %cond_next499, %bb.preheader
30         %n.1 = phi i16 [ %iftmp.11.0.ph.ph, %cond_next499 ], [ 0, %bb.preheader ]               ; <i16> [#uses=0]
31         br i1 false, label %bb148.preheader, label %bb493
32
33 bb148.preheader:                ; preds = %bb
34         br label %bb148
35
36 bb148:          ; preds = %cond_next475, %bb148.preheader
37         br i1 false, label %cond_next175, label %bb184
38
39 cond_next175:           ; preds = %bb148
40         br i1 false, label %bb184, label %bb185
41
42 bb184:          ; preds = %cond_next175, %bb148
43         br label %bb185
44
45 bb185:          ; preds = %bb184, %cond_next175
46         br i1 false, label %bb420.preheader, label %cond_true198
47
48 bb420.preheader:                ; preds = %bb185
49         br label %bb420
50
51 cond_true198:           ; preds = %bb185
52         br i1 false, label %bb294, label %cond_next208
53
54 cond_next208:           ; preds = %cond_true198
55         br i1 false, label %cond_next249, label %cond_true214
56
57 cond_true214:           ; preds = %cond_next208
58         br i1 false, label %bb294, label %cond_next262
59
60 cond_next249:           ; preds = %cond_next208
61         br i1 false, label %bb294, label %cond_next262
62
63 cond_next262:           ; preds = %cond_next249, %cond_true214
64         br label %bb269
65
66 bb269:          ; preds = %cond_next285, %cond_next262
67         br i1 false, label %cond_next285, label %cond_true279
68
69 cond_true279:           ; preds = %bb269
70         br label %cond_next285
71
72 cond_next285:           ; preds = %cond_true279, %bb269
73         br i1 false, label %bb269, label %cond_next446.loopexit
74
75 bb294:          ; preds = %cond_next249, %cond_true214, %cond_true198
76         br i1 false, label %cond_next336, label %cond_true301
77
78 cond_true301:           ; preds = %bb294
79         br i1 false, label %cond_false398, label %cond_true344
80
81 cond_next336:           ; preds = %bb294
82         br i1 false, label %cond_false398, label %cond_true344
83
84 cond_true344:           ; preds = %cond_next336, %cond_true301
85         br i1 false, label %cond_false381, label %cond_true351
86
87 cond_true351:           ; preds = %cond_true344
88         br label %cond_next387
89
90 cond_false381:          ; preds = %cond_true344
91         br label %cond_next387
92
93 cond_next387:           ; preds = %cond_false381, %cond_true351
94         br label %cond_next401
95
96 cond_false398:          ; preds = %cond_next336, %cond_true301
97         br label %cond_next401
98
99 cond_next401:           ; preds = %cond_false398, %cond_next387
100         br i1 false, label %cond_next475, label %cond_true453
101
102 bb420:          ; preds = %cond_next434, %bb420.preheader
103         br i1 false, label %cond_next434, label %cond_true428
104
105 cond_true428:           ; preds = %bb420
106         br label %cond_next434
107
108 cond_next434:           ; preds = %cond_true428, %bb420
109         br i1 false, label %bb420, label %cond_next446.loopexit1
110
111 cond_next446.loopexit:          ; preds = %cond_next285
112         br label %cond_next446
113
114 cond_next446.loopexit1:         ; preds = %cond_next434
115         br label %cond_next446
116
117 cond_next446:           ; preds = %cond_next446.loopexit1, %cond_next446.loopexit
118         br i1 false, label %cond_next475, label %cond_true453
119
120 cond_true453:           ; preds = %cond_next446, %cond_next401
121         br i1 false, label %cond_true458, label %cond_next475
122
123 cond_true458:           ; preds = %cond_true453
124         br label %cond_next475
125
126 cond_next475:           ; preds = %cond_true458, %cond_true453, %cond_next446, %cond_next401
127         br i1 false, label %bb493.loopexit, label %bb148
128
129 bb493.loopexit:         ; preds = %cond_next475
130         br label %bb493
131
132 bb493:          ; preds = %bb493.loopexit, %bb
133         br i1 false, label %cond_next499, label %bb510.loopexit
134
135 cond_next499:           ; preds = %bb493
136         br label %bb
137
138 bb510.loopexit:         ; preds = %bb493
139         br label %bb510
140
141 bb510:          ; preds = %bb510.loopexit, %cond_true19
142         br i1 false, label %cond_next524, label %cond_true517
143
144 cond_true517:           ; preds = %bb510
145         br label %cond_next524
146
147 cond_next524:           ; preds = %cond_true517, %bb510
148         br i1 false, label %cond_next540, label %cond_true533
149
150 cond_true533:           ; preds = %cond_next524
151         br label %cond_next540
152
153 cond_next540:           ; preds = %cond_true533, %cond_next524
154         br i1 false, label %cond_true554, label %cond_next560
155
156 cond_true554:           ; preds = %cond_next540
157         br label %cond_next560
158
159 cond_next560:           ; preds = %cond_true554, %cond_next540
160         br i1 false, label %cond_true566, label %cond_next572
161
162 cond_true566:           ; preds = %cond_next560
163         br label %cond_next572
164
165 cond_next572:           ; preds = %cond_true566, %cond_next560
166         br i1 false, label %bb608.preheader, label %bb791.preheader
167
168 bb608.preheader:                ; preds = %cond_next797.us, %cond_next572
169         br label %bb608
170
171 bb608:          ; preds = %cond_next771, %bb608.preheader
172         br i1 false, label %cond_false627, label %cond_true613
173
174 cond_true613:           ; preds = %bb608
175         br label %cond_next640
176
177 cond_false627:          ; preds = %bb608
178         br label %cond_next640
179
180 cond_next640:           ; preds = %cond_false627, %cond_true613
181         br i1 false, label %cond_true653, label %cond_next671
182
183 cond_true653:           ; preds = %cond_next640
184         br label %cond_next671
185
186 cond_next671:           ; preds = %cond_true653, %cond_next640
187         br i1 false, label %cond_true683, label %cond_next724
188
189 cond_true683:           ; preds = %cond_next671
190         br i1 false, label %cond_next724, label %L1
191
192 cond_next724:           ; preds = %cond_true683, %cond_next671
193         br i1 false, label %cond_true735, label %L1
194
195 cond_true735:           ; preds = %cond_next724
196         br label %L1
197
198 L1:             ; preds = %cond_true735, %cond_next724, %cond_true683
199         br i1 false, label %cond_true745, label %cond_next771
200
201 cond_true745:           ; preds = %L1
202         br label %cond_next771
203
204 cond_next771:           ; preds = %cond_true745, %L1
205         br i1 false, label %bb608, label %bb791.preheader.loopexit
206
207 bb791.preheader.loopexit:               ; preds = %cond_next771
208         br label %bb791.preheader
209
210 bb791.preheader:                ; preds = %bb791.preheader.loopexit, %cond_next572
211         br i1 false, label %cond_next797.us, label %bb809.split
212
213 cond_next797.us:                ; preds = %bb791.preheader
214         br label %bb608.preheader
215
216 bb809.split:            ; preds = %bb791.preheader
217         br i1 false, label %cond_next827, label %cond_true820
218
219 cond_true820:           ; preds = %bb809.split
220         br label %cond_next827
221
222 cond_next827:           ; preds = %cond_true820, %bb809.split
223         br i1 false, label %cond_true833, label %cond_next840
224
225 cond_true833:           ; preds = %cond_next827
226         br label %cond_next840
227
228 cond_next840:           ; preds = %cond_true833, %cond_next827
229         br i1 false, label %bb866, label %bb1245
230
231 bb866:          ; preds = %bb1239, %cond_next840
232         br i1 false, label %cond_true875, label %bb911
233
234 cond_true875:           ; preds = %bb866
235         br label %cond_next1180
236
237 bb911:          ; preds = %bb866
238         switch i32 0, label %bb1165 [
239                  i32 0, label %bb915
240                  i32 1, label %bb932
241                  i32 2, label %bb941
242                  i32 3, label %bb1029
243                  i32 4, label %bb1036
244                  i32 5, label %bb1069
245                  i32 6, label %L3
246         ]
247
248 bb915:          ; preds = %cond_next1171, %bb911
249         br i1 false, label %cond_next1171, label %cond_next1180
250
251 bb932:          ; preds = %cond_next1171, %bb911
252         br label %L1970
253
254 bb941:          ; preds = %cond_next1171, %bb911
255         br label %L1970
256
257 L1970:          ; preds = %bb941, %bb932
258         br label %bb1165
259
260 bb1029:         ; preds = %cond_next1171, %bb911
261         br label %L4
262
263 bb1036:         ; preds = %cond_next1171, %bb911
264         br label %L4
265
266 bb1069:         ; preds = %cond_next1171, %bb911
267         br i1 false, label %cond_next1121, label %cond_true1108
268
269 L3:             ; preds = %cond_next1171, %bb911
270         br i1 false, label %cond_next1121, label %cond_true1108
271
272 cond_true1108:          ; preds = %L3, %bb1069
273         br label %L4
274
275 cond_next1121:          ; preds = %L3, %bb1069
276         br label %L4
277
278 L4:             ; preds = %cond_next1121, %cond_true1108, %bb1036, %bb1029
279         br label %bb1165
280
281 bb1165:         ; preds = %cond_next1171, %L4, %L1970, %bb911
282         br i1 false, label %cond_next1171, label %cond_next1180
283
284 cond_next1171:          ; preds = %bb1165, %bb915
285         switch i32 0, label %bb1165 [
286                  i32 0, label %bb915
287                  i32 1, label %bb932
288                  i32 2, label %bb941
289                  i32 3, label %bb1029
290                  i32 4, label %bb1036
291                  i32 5, label %bb1069
292                  i32 6, label %L3
293         ]
294
295 cond_next1180:          ; preds = %bb1165, %bb915, %cond_true875
296         br label %bb1239
297
298 bb1239:         ; preds = %cond_next1251, %cond_next1180
299         br i1 false, label %bb866, label %bb1245
300
301 bb1245:         ; preds = %bb1239, %cond_next840
302         br i1 false, label %cond_next1251, label %bb1257
303
304 cond_next1251:          ; preds = %bb1245
305         br label %bb1239
306
307 bb1257:         ; preds = %bb1245
308         ret void
309 }