[InstCombine] Signed saturation patterns
[llvm-core.git] / test / Transforms / CodeGenPrepare / 2008-11-24-RAUW-Self.ll
blob1995c7fda29127ebbe79c9ca989efee3f9aef5c5
1 ; RUN: opt < %s -codegenprepare | llvm-dis
2 ; PR3113
3 target datalayout = "e-p:64:64:64-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:64:64-f32:32:32-f64:64:64-v64:64:64-v128:128:128-a0:0:64-s0:64:64-f80:128:128"
4 target triple = "x86_64-unknown-linux-gnu"
6 define fastcc i32 @ascii2flt(i8* %str) nounwind {
7 entry:
8         br label %bb2.i
10 bb2.i:          ; preds = %bb4.i.bb2.i_crit_edge, %entry
11         br i1 false, label %bb4.i, label %base2flt.exit
13 bb4.i:          ; preds = %bb2.i
14         br i1 false, label %bb11.i, label %bb4.i.bb2.i_crit_edge
16 bb4.i.bb2.i_crit_edge:          ; preds = %bb4.i
17         br label %bb2.i
19 bb11.i:         ; preds = %bb4.i
20         br label %bb11.i.base2flt.exit204_crit_edge
22 bb11.i.base2flt.exit204_crit_edge:              ; preds = %bb11.i
23         br label %base2flt.exit204
25 bb11.i.bb7.i197_crit_edge:              ; No predecessors!
26         br label %bb7.i197
28 base2flt.exit:          ; preds = %bb2.i
29         br label %base2flt.exit.base2flt.exit204_crit_edge
31 base2flt.exit.base2flt.exit204_crit_edge:               ; preds = %base2flt.exit
32         br label %base2flt.exit204
34 base2flt.exit.bb7.i197_crit_edge:               ; No predecessors!
35         br label %bb7.i197
37 bb10.i196:              ; preds = %bb7.i197
38         br label %bb10.i196.base2flt.exit204_crit_edge
40 bb10.i196.base2flt.exit204_crit_edge:           ; preds = %bb7.i197, %bb10.i196
41         br label %base2flt.exit204
43 bb10.i196.bb7.i197_crit_edge:           ; No predecessors!
44         br label %bb7.i197
46 bb7.i197:               ; preds = %bb10.i196.bb7.i197_crit_edge, %base2flt.exit.bb7.i197_crit_edge, %bb11.i.bb7.i197_crit_edge
47         %.reg2mem.0 = phi i32 [ 0, %base2flt.exit.bb7.i197_crit_edge ], [ %.reg2mem.0, %bb10.i196.bb7.i197_crit_edge ], [ 0, %bb11.i.bb7.i197_crit_edge ]               ; <i32> [#uses=1]
48         br i1 undef, label %bb10.i196.base2flt.exit204_crit_edge, label %bb10.i196
50 base2flt.exit204:               ; preds = %bb10.i196.base2flt.exit204_crit_edge, %base2flt.exit.base2flt.exit204_crit_edge, %bb11.i.base2flt.exit204_crit_edge
51         br i1 false, label %base2flt.exit204.bb8_crit_edge, label %bb
53 base2flt.exit204.bb8_crit_edge:         ; preds = %base2flt.exit204
54         br label %bb8
56 bb:             ; preds = %base2flt.exit204
57         br i1 false, label %bb.bb18_crit_edge, label %bb1.i
59 bb.bb18_crit_edge:              ; preds = %bb9, %bb
60         br label %bb18
62 bb1.i:          ; preds = %bb
63         br i1 false, label %bb1.i.bb7_crit_edge, label %bb1.i158
65 bb1.i.bb7_crit_edge.loopexit:           ; preds = %bb2.i164
66         br label %bb1.i.bb7_crit_edge
68 bb1.i.bb7_crit_edge:            ; preds = %bb1.i.bb7_crit_edge.loopexit, %bb1.i
69         br label %bb7.preheader
71 bb1.i158:               ; preds = %bb1.i
72         br i1 false, label %bb1.i158.bb10.i179_crit_edge, label %bb1.i158.bb2.i164_crit_edge
74 bb1.i158.bb2.i164_crit_edge:            ; preds = %bb1.i158
75         br label %bb2.i164
77 bb1.i158.bb10.i179_crit_edge:           ; preds = %bb1.i158
78         br label %bb10.i179
80 bb2.i164:               ; preds = %bb4.i166.bb2.i164_crit_edge, %bb1.i158.bb2.i164_crit_edge
81         br i1 false, label %bb4.i166, label %bb1.i.bb7_crit_edge.loopexit
83 bb4.i166:               ; preds = %bb2.i164
84         br i1 false, label %bb4.i166.bb11.i172_crit_edge, label %bb4.i166.bb2.i164_crit_edge
86 bb4.i166.bb2.i164_crit_edge:            ; preds = %bb4.i166
87         br label %bb2.i164
89 bb4.i166.bb11.i172_crit_edge:           ; preds = %bb4.i166
90         br label %bb11.i172
92 bb11.i172:              ; preds = %bb10.i179.bb11.i172_crit_edge, %bb4.i166.bb11.i172_crit_edge
93         br label %bb7.preheader
95 bb10.i179:              ; preds = %bb9.i182, %bb1.i158.bb10.i179_crit_edge
96         br i1 false, label %bb7.i180, label %bb10.i179.bb11.i172_crit_edge
98 bb10.i179.bb11.i172_crit_edge:          ; preds = %bb10.i179
99         br label %bb11.i172
101 bb7.i180:               ; preds = %bb10.i179
102         br i1 false, label %bb7.i180.bb7_crit_edge, label %bb9.i182
104 bb7.i180.bb7_crit_edge:         ; preds = %bb7.i180
105         br label %bb7.preheader
107 bb7.preheader:          ; preds = %bb7.i180.bb7_crit_edge, %bb11.i172, %bb1.i.bb7_crit_edge
108         br label %bb7
110 bb9.i182:               ; preds = %bb7.i180
111         br label %bb10.i179
113 bb7:            ; preds = %addflt.exit114, %bb7.preheader
114         switch i8 0, label %bb4 [
115                 i8 0, label %bb7.bb8_crit_edge
116                 i8 46, label %bb7.bb8_crit_edge
117         ]
119 bb7.bb8_crit_edge:              ; preds = %bb7, %bb7
120         br label %bb8
122 bb4:            ; preds = %bb7
123         br i1 false, label %bb18.loopexit1, label %bb1.i5
125 bb1.i5:         ; preds = %bb4
126         br i1 false, label %bb1.i5.mulflt.exit157_crit_edge, label %bb3.i147
128 bb1.i5.mulflt.exit157_crit_edge:                ; preds = %bb5.i148, %bb1.i5
129         br label %mulflt.exit157
131 bb3.i147:               ; preds = %bb1.i5
132         br i1 false, label %bb3.i147.mulflt.exit157_crit_edge, label %bb5.i148
134 bb3.i147.mulflt.exit157_crit_edge:              ; preds = %bb8.i150, %bb3.i147
135         br label %mulflt.exit157
137 bb5.i148:               ; preds = %bb3.i147
138         br i1 false, label %bb1.i5.mulflt.exit157_crit_edge, label %bb7.i149
140 bb7.i149:               ; preds = %bb5.i148
141         br i1 false, label %bb8.i150, label %bb7.i149.bb12.i154_crit_edge
143 bb7.i149.bb12.i154_crit_edge:           ; preds = %bb7.i149
144         br label %bb12.i154
146 bb8.i150:               ; preds = %bb7.i149
147         br i1 false, label %bb3.i147.mulflt.exit157_crit_edge, label %bb10.i151
149 bb10.i151:              ; preds = %bb8.i150
150         br label %bb12.i154
152 bb12.i154:              ; preds = %bb10.i151, %bb7.i149.bb12.i154_crit_edge
153         br label %mulflt.exit157
155 mulflt.exit157:         ; preds = %bb12.i154, %bb3.i147.mulflt.exit157_crit_edge, %bb1.i5.mulflt.exit157_crit_edge
156         br i1 false, label %mulflt.exit157.base2flt.exit144_crit_edge, label %bb1.i115
158 mulflt.exit157.base2flt.exit144_crit_edge.loopexit:             ; preds = %bb2.i121
159         br label %mulflt.exit157.base2flt.exit144_crit_edge
161 mulflt.exit157.base2flt.exit144_crit_edge:              ; preds = %mulflt.exit157.base2flt.exit144_crit_edge.loopexit, %mulflt.exit157
162         br label %base2flt.exit144
164 bb1.i115:               ; preds = %mulflt.exit157
165         br i1 false, label %bb1.i115.bb10.i136_crit_edge, label %bb1.i115.bb2.i121_crit_edge
167 bb1.i115.bb2.i121_crit_edge:            ; preds = %bb1.i115
168         br label %bb2.i121
170 bb1.i115.bb10.i136_crit_edge:           ; preds = %bb1.i115
171         br label %bb10.i136
173 bb2.i121:               ; preds = %bb4.i123.bb2.i121_crit_edge, %bb1.i115.bb2.i121_crit_edge
174         br i1 false, label %bb4.i123, label %mulflt.exit157.base2flt.exit144_crit_edge.loopexit
176 bb4.i123:               ; preds = %bb2.i121
177         br i1 false, label %bb4.i123.bb11.i129_crit_edge, label %bb4.i123.bb2.i121_crit_edge
179 bb4.i123.bb2.i121_crit_edge:            ; preds = %bb4.i123
180         br label %bb2.i121
182 bb4.i123.bb11.i129_crit_edge:           ; preds = %bb4.i123
183         br label %bb11.i129
185 bb11.i129:              ; preds = %bb10.i136.bb11.i129_crit_edge, %bb4.i123.bb11.i129_crit_edge
186         br label %base2flt.exit144
188 bb10.i136:              ; preds = %bb9.i139, %bb1.i115.bb10.i136_crit_edge
189         br i1 false, label %bb7.i137, label %bb10.i136.bb11.i129_crit_edge
191 bb10.i136.bb11.i129_crit_edge:          ; preds = %bb10.i136
192         br label %bb11.i129
194 bb7.i137:               ; preds = %bb10.i136
195         br i1 false, label %bb7.i137.base2flt.exit144_crit_edge, label %bb9.i139
197 bb7.i137.base2flt.exit144_crit_edge:            ; preds = %bb7.i137
198         br label %base2flt.exit144
200 bb9.i139:               ; preds = %bb7.i137
201         br label %bb10.i136
203 base2flt.exit144:               ; preds = %bb7.i137.base2flt.exit144_crit_edge, %bb11.i129, %mulflt.exit157.base2flt.exit144_crit_edge
204         br i1 false, label %base2flt.exit144.addflt.exit114_crit_edge, label %bb3.i105
206 base2flt.exit144.addflt.exit114_crit_edge:              ; preds = %bb3.i105, %base2flt.exit144
207         br label %addflt.exit114
209 bb3.i105:               ; preds = %base2flt.exit144
210         br i1 false, label %base2flt.exit144.addflt.exit114_crit_edge, label %bb5.i106
212 bb5.i106:               ; preds = %bb3.i105
213         br i1 false, label %bb5.i106.bb9.i111_crit_edge, label %bb6.i107
215 bb5.i106.bb9.i111_crit_edge:            ; preds = %bb5.i106
216         br label %bb9.i111
218 bb6.i107:               ; preds = %bb5.i106
219         br i1 false, label %bb6.i107.addflt.exit114_crit_edge, label %bb8.i108
221 bb6.i107.addflt.exit114_crit_edge:              ; preds = %bb6.i107
222         br label %addflt.exit114
224 bb8.i108:               ; preds = %bb6.i107
225         br label %bb9.i111
227 bb9.i111:               ; preds = %bb8.i108, %bb5.i106.bb9.i111_crit_edge
228         br label %addflt.exit114
230 addflt.exit114:         ; preds = %bb9.i111, %bb6.i107.addflt.exit114_crit_edge, %base2flt.exit144.addflt.exit114_crit_edge
231         br label %bb7
233 bb18.loopexit1:         ; preds = %bb4
234         ret i32 -1
236 bb18:           ; preds = %bb8.bb18_crit_edge, %bb.bb18_crit_edge
237         ret i32 0
239 bb8:            ; preds = %bb7.bb8_crit_edge, %base2flt.exit204.bb8_crit_edge
240         br i1 false, label %bb9, label %bb8.bb18_crit_edge
242 bb8.bb18_crit_edge:             ; preds = %bb8
243         br label %bb18
245 bb9:            ; preds = %bb8
246         br i1 false, label %bb.bb18_crit_edge, label %bb1.i13
248 bb1.i13:                ; preds = %bb9
249         br i1 false, label %bb1.i13.base2flt.exit102_crit_edge, label %bb1.i73
251 bb1.i13.base2flt.exit102_crit_edge.loopexit:            ; preds = %bb2.i79
252         br label %bb1.i13.base2flt.exit102_crit_edge
254 bb1.i13.base2flt.exit102_crit_edge:             ; preds = %bb1.i13.base2flt.exit102_crit_edge.loopexit, %bb1.i13
255         br label %base2flt.exit102
257 bb1.i73:                ; preds = %bb1.i13
258         br i1 false, label %bb1.i73.bb10.i94_crit_edge, label %bb1.i73.bb2.i79_crit_edge
260 bb1.i73.bb2.i79_crit_edge:              ; preds = %bb1.i73
261         br label %bb2.i79
263 bb1.i73.bb10.i94_crit_edge:             ; preds = %bb1.i73
264         br label %bb10.i94
266 bb2.i79:                ; preds = %bb4.i81.bb2.i79_crit_edge, %bb1.i73.bb2.i79_crit_edge
267         br i1 false, label %bb4.i81, label %bb1.i13.base2flt.exit102_crit_edge.loopexit
269 bb4.i81:                ; preds = %bb2.i79
270         br i1 false, label %bb4.i81.bb11.i87_crit_edge, label %bb4.i81.bb2.i79_crit_edge
272 bb4.i81.bb2.i79_crit_edge:              ; preds = %bb4.i81
273         br label %bb2.i79
275 bb4.i81.bb11.i87_crit_edge:             ; preds = %bb4.i81
276         br label %bb11.i87
278 bb11.i87:               ; preds = %bb10.i94.bb11.i87_crit_edge, %bb4.i81.bb11.i87_crit_edge
279         br label %base2flt.exit102
281 bb10.i94:               ; preds = %bb9.i97, %bb1.i73.bb10.i94_crit_edge
282         br i1 false, label %bb7.i95, label %bb10.i94.bb11.i87_crit_edge
284 bb10.i94.bb11.i87_crit_edge:            ; preds = %bb10.i94
285         br label %bb11.i87
287 bb7.i95:                ; preds = %bb10.i94
288         br i1 false, label %bb7.i95.base2flt.exit102_crit_edge, label %bb9.i97
290 bb7.i95.base2flt.exit102_crit_edge:             ; preds = %bb7.i95
291         br label %base2flt.exit102
293 bb9.i97:                ; preds = %bb7.i95
294         br label %bb10.i94
296 base2flt.exit102:               ; preds = %bb7.i95.base2flt.exit102_crit_edge, %bb11.i87, %bb1.i13.base2flt.exit102_crit_edge
297         br i1 false, label %base2flt.exit102.mulflt.exit72_crit_edge, label %bb3.i62
299 base2flt.exit102.mulflt.exit72_crit_edge:               ; preds = %bb5.i63, %base2flt.exit102
300         br label %mulflt.exit72
302 bb3.i62:                ; preds = %base2flt.exit102
303         br i1 false, label %bb3.i62.mulflt.exit72_crit_edge, label %bb5.i63
305 bb3.i62.mulflt.exit72_crit_edge:                ; preds = %bb8.i65, %bb3.i62
306         br label %mulflt.exit72
308 bb5.i63:                ; preds = %bb3.i62
309         br i1 false, label %base2flt.exit102.mulflt.exit72_crit_edge, label %bb7.i64
311 bb7.i64:                ; preds = %bb5.i63
312         br i1 false, label %bb8.i65, label %bb7.i64.bb12.i69_crit_edge
314 bb7.i64.bb12.i69_crit_edge:             ; preds = %bb7.i64
315         br label %bb12.i69
317 bb8.i65:                ; preds = %bb7.i64
318         br i1 false, label %bb3.i62.mulflt.exit72_crit_edge, label %bb10.i66
320 bb10.i66:               ; preds = %bb8.i65
321         br label %bb12.i69
323 bb12.i69:               ; preds = %bb10.i66, %bb7.i64.bb12.i69_crit_edge
324         br label %mulflt.exit72
326 mulflt.exit72:          ; preds = %bb12.i69, %bb3.i62.mulflt.exit72_crit_edge, %base2flt.exit102.mulflt.exit72_crit_edge
327         br i1 false, label %mulflt.exit72.bb10.i58_crit_edge, label %bb3.i50
329 mulflt.exit72.bb10.i58_crit_edge:               ; preds = %bb3.i50, %mulflt.exit72
330         br label %bb10.i58
332 bb3.i50:                ; preds = %mulflt.exit72
333         br i1 false, label %mulflt.exit72.bb10.i58_crit_edge, label %bb5.i51
335 bb5.i51:                ; preds = %bb3.i50
336         br i1 false, label %bb5.i51.bb9.i56_crit_edge, label %bb6.i52
338 bb5.i51.bb9.i56_crit_edge:              ; preds = %bb5.i51
339         br label %bb9.i56
341 bb6.i52:                ; preds = %bb5.i51
342         br i1 false, label %bb6.i52.bb10.i58_crit_edge, label %bb8.i53
344 bb6.i52.bb10.i58_crit_edge:             ; preds = %bb6.i52
345         br label %bb10.i58
347 bb8.i53:                ; preds = %bb6.i52
348         br label %bb9.i56
350 bb9.i56:                ; preds = %bb8.i53, %bb5.i51.bb9.i56_crit_edge
351         br label %bb15.preheader
353 bb10.i58:               ; preds = %bb6.i52.bb10.i58_crit_edge, %mulflt.exit72.bb10.i58_crit_edge
354         br label %bb15.preheader
356 bb15.preheader:         ; preds = %bb10.i58, %bb9.i56
357         br label %bb15
359 bb15:           ; preds = %addflt.exit, %bb15.preheader
360         br i1 false, label %bb15.bb18.loopexit_crit_edge, label %bb12
362 bb15.bb18.loopexit_crit_edge:           ; preds = %bb15
363         br label %bb18.loopexit
365 bb12:           ; preds = %bb15
366         br i1 false, label %bb12.bb18.loopexit_crit_edge, label %bb1.i21
368 bb12.bb18.loopexit_crit_edge:           ; preds = %bb12
369         br label %bb18.loopexit
371 bb1.i21:                ; preds = %bb12
372         br i1 false, label %bb1.i21.mulflt.exit47_crit_edge, label %bb3.i37
374 bb1.i21.mulflt.exit47_crit_edge:                ; preds = %bb5.i38, %bb1.i21
375         br label %mulflt.exit47
377 bb3.i37:                ; preds = %bb1.i21
378         br i1 false, label %bb3.i37.mulflt.exit47_crit_edge, label %bb5.i38
380 bb3.i37.mulflt.exit47_crit_edge:                ; preds = %bb8.i40, %bb3.i37
381         br label %mulflt.exit47
383 bb5.i38:                ; preds = %bb3.i37
384         br i1 false, label %bb1.i21.mulflt.exit47_crit_edge, label %bb7.i39
386 bb7.i39:                ; preds = %bb5.i38
387         br i1 false, label %bb8.i40, label %bb7.i39.bb12.i44_crit_edge
389 bb7.i39.bb12.i44_crit_edge:             ; preds = %bb7.i39
390         br label %bb12.i44
392 bb8.i40:                ; preds = %bb7.i39
393         br i1 false, label %bb3.i37.mulflt.exit47_crit_edge, label %bb10.i41
395 bb10.i41:               ; preds = %bb8.i40
396         br label %bb12.i44
398 bb12.i44:               ; preds = %bb10.i41, %bb7.i39.bb12.i44_crit_edge
399         br label %mulflt.exit47
401 mulflt.exit47:          ; preds = %bb12.i44, %bb3.i37.mulflt.exit47_crit_edge, %bb1.i21.mulflt.exit47_crit_edge
402         br i1 false, label %mulflt.exit47.base2flt.exit34_crit_edge, label %bb1.i15
404 mulflt.exit47.base2flt.exit34_crit_edge.loopexit:               ; preds = %bb2.i20
405         br label %mulflt.exit47.base2flt.exit34_crit_edge
407 mulflt.exit47.base2flt.exit34_crit_edge:                ; preds = %mulflt.exit47.base2flt.exit34_crit_edge.loopexit, %mulflt.exit47
408         br label %base2flt.exit34
410 bb1.i15:                ; preds = %mulflt.exit47
411         br i1 false, label %bb1.i15.bb10.i31_crit_edge, label %bb1.i15.bb2.i20_crit_edge
413 bb1.i15.bb2.i20_crit_edge:              ; preds = %bb1.i15
414         br label %bb2.i20
416 bb1.i15.bb10.i31_crit_edge:             ; preds = %bb1.i15
417         br label %bb10.i31
419 bb2.i20:                ; preds = %bb4.i22.bb2.i20_crit_edge, %bb1.i15.bb2.i20_crit_edge
420         br i1 false, label %bb4.i22, label %mulflt.exit47.base2flt.exit34_crit_edge.loopexit
422 bb4.i22:                ; preds = %bb2.i20
423         br i1 false, label %bb4.i22.bb11.i28_crit_edge, label %bb4.i22.bb2.i20_crit_edge
425 bb4.i22.bb2.i20_crit_edge:              ; preds = %bb4.i22
426         br label %bb2.i20
428 bb4.i22.bb11.i28_crit_edge:             ; preds = %bb4.i22
429         br label %bb11.i28
431 bb11.i28:               ; preds = %bb10.i31.bb11.i28_crit_edge, %bb4.i22.bb11.i28_crit_edge
432         br label %base2flt.exit34
434 bb10.i31:               ; preds = %bb9.i33, %bb1.i15.bb10.i31_crit_edge
435         br i1 false, label %bb7.i32, label %bb10.i31.bb11.i28_crit_edge
437 bb10.i31.bb11.i28_crit_edge:            ; preds = %bb10.i31
438         br label %bb11.i28
440 bb7.i32:                ; preds = %bb10.i31
441         br i1 false, label %bb7.i32.base2flt.exit34_crit_edge, label %bb9.i33
443 bb7.i32.base2flt.exit34_crit_edge:              ; preds = %bb7.i32
444         br label %base2flt.exit34
446 bb9.i33:                ; preds = %bb7.i32
447         br label %bb10.i31
449 base2flt.exit34:                ; preds = %bb7.i32.base2flt.exit34_crit_edge, %bb11.i28, %mulflt.exit47.base2flt.exit34_crit_edge
450         br i1 false, label %base2flt.exit34.mulflt.exit_crit_edge, label %bb3.i9
452 base2flt.exit34.mulflt.exit_crit_edge:          ; preds = %bb5.i10, %base2flt.exit34
453         br label %mulflt.exit
455 bb3.i9:         ; preds = %base2flt.exit34
456         br i1 false, label %bb3.i9.mulflt.exit_crit_edge, label %bb5.i10
458 bb3.i9.mulflt.exit_crit_edge:           ; preds = %bb8.i11, %bb3.i9
459         br label %mulflt.exit
461 bb5.i10:                ; preds = %bb3.i9
462         br i1 false, label %base2flt.exit34.mulflt.exit_crit_edge, label %bb7.i
464 bb7.i:          ; preds = %bb5.i10
465         br i1 false, label %bb8.i11, label %bb7.i.bb12.i_crit_edge
467 bb7.i.bb12.i_crit_edge:         ; preds = %bb7.i
468         br label %bb12.i
470 bb8.i11:                ; preds = %bb7.i
471         br i1 false, label %bb3.i9.mulflt.exit_crit_edge, label %bb10.i12
473 bb10.i12:               ; preds = %bb8.i11
474         br label %bb12.i
476 bb12.i:         ; preds = %bb10.i12, %bb7.i.bb12.i_crit_edge
477         br label %mulflt.exit
479 mulflt.exit:            ; preds = %bb12.i, %bb3.i9.mulflt.exit_crit_edge, %base2flt.exit34.mulflt.exit_crit_edge
480         br i1 false, label %mulflt.exit.addflt.exit_crit_edge, label %bb3.i
482 mulflt.exit.addflt.exit_crit_edge:              ; preds = %bb3.i, %mulflt.exit
483         br label %addflt.exit
485 bb3.i:          ; preds = %mulflt.exit
486         br i1 false, label %mulflt.exit.addflt.exit_crit_edge, label %bb5.i
488 bb5.i:          ; preds = %bb3.i
489         br i1 false, label %bb5.i.bb9.i_crit_edge, label %bb6.i
491 bb5.i.bb9.i_crit_edge:          ; preds = %bb5.i
492         br label %bb9.i
494 bb6.i:          ; preds = %bb5.i
495         br i1 false, label %bb6.i.addflt.exit_crit_edge, label %bb8.i
497 bb6.i.addflt.exit_crit_edge:            ; preds = %bb6.i
498         br label %addflt.exit
500 bb8.i:          ; preds = %bb6.i
501         br label %bb9.i
503 bb9.i:          ; preds = %bb8.i, %bb5.i.bb9.i_crit_edge
504         br label %addflt.exit
506 addflt.exit:            ; preds = %bb9.i, %bb6.i.addflt.exit_crit_edge, %mulflt.exit.addflt.exit_crit_edge
507         br label %bb15
509 bb18.loopexit:          ; preds = %bb12.bb18.loopexit_crit_edge, %bb15.bb18.loopexit_crit_edge
510         ret i32 0