Run DCE after a LoopFlatten test to reduce spurious output [nfc]
[llvm-project.git] / llvm / test / CodeGen / X86 / 2008-07-07-DanglingDeadInsts.ll
blob440452bdfc0612699bc21c9e188c55616939616d
1 ; RUN: llc < %s -mtriple=i386-apple-darwin9
3         %struct.ogg_stream_state = type { ptr, i32, i32, i32, ptr, ptr, i32, i32, i32, i32, [282 x i8], i32, i32, i32, i32, i32, i64, i64 }
4         %struct.res_state = type { i32, i32, i32, i32, ptr, ptr, i32, i32 }
5         %struct.vorbis_comment = type { ptr, ptr, i32, ptr }
7 declare i32 @strlen(ptr) nounwind readonly 
9 define i32 @res_init(ptr %state, i32 %channels, i32 %outfreq, i32 %infreq, i32 %op1, ...) nounwind  {
10 entry:
11         br i1 false, label %bb95, label %bb
13 bb:             ; preds = %entry
14         br i1 false, label %bb95, label %bb24
16 bb24:           ; preds = %bb
17         br i1 false, label %bb40.preheader, label %bb26
19 bb26:           ; preds = %bb24
20         ret i32 -1
22 bb40.preheader:         ; preds = %bb24
23         br i1 false, label %bb39, label %bb49.outer
25 bb39:           ; preds = %bb39, %bb40.preheader
26         shl i32 0, 1            ; <i32>:0 [#uses=0]
27         br i1 false, label %bb39, label %bb49.outer
29 bb49.outer:             ; preds = %bb39, %bb40.preheader
30         getelementptr %struct.res_state, ptr %state, i32 0, i32 3               ; <ptr>:1 [#uses=0]
31         getelementptr %struct.res_state, ptr %state, i32 0, i32 7               ; <ptr>:2 [#uses=0]
32         %base10.1 = select i1 false, ptr null, ptr null         ; <ptr> [#uses=1]
33         br label %bb74
35 bb69:           ; preds = %bb74
36         br label %bb71
38 bb71:           ; preds = %bb74, %bb69
39         store float 0.000000e+00, ptr null, align 4
40         add i32 0, 1            ; <i32>:3 [#uses=1]
41         %indvar.next137 = add i32 %indvar136, 1         ; <i32> [#uses=1]
42         br i1 false, label %bb74, label %bb73
44 bb73:           ; preds = %bb71
45         %.rec = add i32 %base10.2.ph.rec, 1             ; <i32> [#uses=2]
46         getelementptr float, ptr %base10.1, i32 %.rec           ; <ptr>:4 [#uses=1]
47         br label %bb74
49 bb74:           ; preds = %bb73, %bb71, %bb49.outer
50         %N13.1.ph = phi i32 [ 0, %bb49.outer ], [ 0, %bb73 ], [ %N13.1.ph, %bb71 ]              ; <i32> [#uses=1]
51         %dest12.2.ph = phi ptr [ null, %bb49.outer ], [ %4, %bb73 ], [ %dest12.2.ph, %bb71 ]            ; <ptr> [#uses=1]
52         %x8.0.ph = phi i32 [ 0, %bb49.outer ], [ %3, %bb73 ], [ %x8.0.ph, %bb71 ]               ; <i32> [#uses=1]
53         %base10.2.ph.rec = phi i32 [ 0, %bb49.outer ], [ %.rec, %bb73 ], [ %base10.2.ph.rec, %bb71 ]            ; <i32> [#uses=2]
54         %indvar136 = phi i32 [ %indvar.next137, %bb71 ], [ 0, %bb73 ], [ 0, %bb49.outer ]               ; <i32> [#uses=1]
55         br i1 false, label %bb71, label %bb69
57 bb95:           ; preds = %bb, %entry
58         ret i32 -1
61 define i32 @read_resampled(ptr %d, ptr %buffer, i32 %samples) nounwind  {
62 entry:
63         br i1 false, label %bb17.preheader, label %bb30
65 bb17.preheader:         ; preds = %entry
66         load i32, ptr null, align 4             ; <i32>:0 [#uses=0]
67         br label %bb16
69 bb16:           ; preds = %bb16, %bb17.preheader
70         %i1.036 = phi i32 [ 0, %bb17.preheader ], [ %1, %bb16 ]         ; <i32> [#uses=1]
71         add i32 %i1.036, 1              ; <i32>:1 [#uses=2]
72         icmp ult i32 %1, 0              ; <i1>:2 [#uses=0]
73         br label %bb16
75 bb30:           ; preds = %entry
76         ret i32 0
79 define i32 @ogg_stream_reset_serialno(ptr %os, i32 %serialno) nounwind  {
80 entry:
81         unreachable
84 define void @vorbis_lsp_to_curve(ptr %curve, ptr %map, i32 %n, i32 %ln, ptr %lsp, i32 %m, float %amp, float %ampoffset) nounwind  {
85 entry:
86         unreachable
89 define i32 @vorbis_comment_query_count(ptr %vc, ptr %tag) nounwind  {
90 entry:
91         %strlen = call i32 @strlen( ptr null )          ; <i32> [#uses=1]
92         %endptr = getelementptr i8, ptr null, i32 %strlen               ; <ptr> [#uses=0]
93         unreachable
96 define fastcc i32 @push(ptr %state, ptr %pool, ptr %poolfill, ptr %offset, ptr %dest, i32 %dststep, ptr %source, i32 %srcstep, i32 %srclen) nounwind  {
97 entry:
98         unreachable