llvm.org GIT mirror llvm / 431a80a
testcase for PR908 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@30274 91177308-0d34-0410-b5e6-96231b3b80d8 Chris Lattner 13 years ago
1 changed file(s) with 215 addition(s) and 0 deletion(s). Raw diff Collapse all Expand all
0 ; RUN: llvm-as < %s | opt -licm -disable-output
1 ; PR908
2
3 %struct.alloc_chain = type { sbyte*, %struct.alloc_chain* }
4 %struct.oggpack_buffer = type { int, int, ubyte*, ubyte*, int }
5 %struct.vorbis_block = type { float**, %struct.oggpack_buffer, int, int, int, int, int, int, long, long, %struct.vorbis_dsp_state*, sbyte*, int, int, int, %struct.alloc_chain*, int, int, int, int, sbyte* }
6 %struct.vorbis_dsp_state = type { int, %struct.vorbis_info*, float**, float**, int, int, int, int, int, int, int, int, int, long, long, long, long, long, long, sbyte* }
7 %struct.vorbis_info = type { int, int, int, int, int, int, int, sbyte* }
8
9 implementation ; Functions:
10
11 fastcc void %_01forward() {
12 entry:
13 br bool false, label %bb222.preheader, label %bb241
14
15 cond_true67: ; preds = %cond_true87
16 br label %cond_next80
17
18 cond_next80: ; preds = %cond_true87, %cond_true67
19 br label %bb83
20
21 bb83.preheader: ; preds = %cond_true226
22 br bool false, label %bb83.us.preheader, label %bb83.preheader1
23
24 bb83.us.preheader: ; preds = %bb83.preheader
25 br label %bb83.us
26
27 bb83.us: ; preds = %cond_next80.us, %bb83.us.preheader
28 br bool false, label %cond_true87.us, label %cond_next92.loopexit2
29
30 cond_next80.us: ; preds = %bb59.loopexit.us, %cond_true67.us
31 br label %bb83.us
32
33 cond_true67.us: ; preds = %bb59.loopexit.us
34 br label %cond_next80.us
35
36 cond_next.us: ; preds = %cond_true56.us, %cond_true38.us
37 br bool false, label %cond_true56.us, label %bb59.loopexit.us
38
39 cond_true38.us: ; preds = %cond_true56.us
40 br label %cond_next.us
41
42 cond_true56.us: ; preds = %cond_true87.us, %cond_next.us
43 br bool false, label %cond_true38.us, label %cond_next.us
44
45 cond_true87.us: ; preds = %bb83.us
46 br label %cond_true56.us
47
48 bb59.loopexit.us: ; preds = %cond_next.us
49 br bool false, label %cond_true67.us, label %cond_next80.us
50
51 bb83.preheader1: ; preds = %bb83.preheader
52 br label %bb83
53
54 bb83: ; preds = %bb83.preheader1, %cond_next80
55 br bool false, label %cond_next92.loopexit, label %cond_true87
56
57 cond_true87: ; preds = %bb83
58 br bool false, label %cond_true67, label %cond_next80
59
60 cond_next92.loopexit: ; preds = %bb83
61 br label %cond_next92
62
63 cond_next92.loopexit2: ; preds = %bb83.us
64 br label %cond_next92
65
66 cond_next92: ; preds = %cond_true226, %cond_next92.loopexit2, %cond_next92.loopexit
67 br bool false, label %cond_true218.loopexit, label %bb222
68
69 cond_true139: ; preds = %cond_true202
70 br bool false, label %cond_next195, label %cond_true155
71
72 cond_true155: ; preds = %cond_true139
73 br bool false, label %cond_true249.i.preheader, label %_encodepart.exit
74
75 cond_true.i: ; preds = %cond_true115.i
76 br bool false, label %bb60.i.preheader, label %cond_next97.i
77
78 bb60.i.preheader: ; preds = %cond_true.i
79 br label %bb60.i
80
81 bb60.i: ; preds = %cond_true63.i, %bb60.i.preheader
82 br bool false, label %cond_true63.i, label %cond_next97.i.loopexit
83
84 cond_true63.i: ; preds = %bb60.i
85 br bool false, label %bb60.i, label %cond_next97.i.loopexit
86
87 bb86.i.preheader: ; preds = %cond_true115.i
88 br label %bb86.i
89
90 bb86.i: ; preds = %cond_true93.i, %bb86.i.preheader
91 br bool false, label %cond_true93.i, label %cond_next97.i.loopexit3
92
93 cond_true93.i: ; preds = %bb86.i
94 br bool false, label %cond_next97.i.loopexit3, label %bb86.i
95
96 cond_next97.i.loopexit: ; preds = %cond_true63.i, %bb60.i
97 br label %cond_next97.i
98
99 cond_next97.i.loopexit3: ; preds = %cond_true93.i, %bb86.i
100 br label %cond_next97.i
101
102 cond_next97.i: ; preds = %cond_next97.i.loopexit3, %cond_next97.i.loopexit, %cond_true.i
103 br bool false, label %bb118.i.loopexit, label %cond_true115.i
104
105 cond_true115.i.preheader: ; preds = %cond_true249.i
106 br label %cond_true115.i
107
108 cond_true115.i: ; preds = %cond_true115.i.preheader, %cond_next97.i
109 br bool false, label %cond_true.i, label %bb86.i.preheader
110
111 bb118.i.loopexit: ; preds = %cond_next97.i
112 br label %bb118.i
113
114 bb118.i: ; preds = %cond_true249.i, %bb118.i.loopexit
115 br bool false, label %cond_next204.i, label %cond_true128.i
116
117 cond_true128.i: ; preds = %bb118.i
118 br bool false, label %cond_true199.i.preheader, label %cond_next204.i
119
120 cond_true199.i.preheader: ; preds = %cond_true128.i
121 br label %cond_true199.i
122
123 cond_true199.i.us: ; No predecessors!
124 br bool false, label %cond_true167.i.us, label %cond_next187.i.us
125
126 cond_next187.i.us: ; preds = %bb170.i.loopexit.us, %bb170.i.us.cond_next187.i.us_crit_edge, %cond_true199.i.us
127 unreachable
128
129 bb170.i.us.cond_next187.i.us_crit_edge: ; preds = %bb170.i.loopexit.us
130 br label %cond_next187.i.us
131
132 cond_true167.i.us: ; preds = %cond_true167.i.us, %cond_true199.i.us
133 br bool false, label %cond_true167.i.us, label %bb170.i.loopexit.us
134
135 bb170.i.loopexit.us: ; preds = %cond_true167.i.us
136 br bool false, label %cond_next187.i.us, label %bb170.i.us.cond_next187.i.us_crit_edge
137
138 cond_true199.i: ; preds = %cond_true199.i, %cond_true199.i.preheader
139 br bool false, label %cond_next204.i.loopexit, label %cond_true199.i
140
141 cond_next204.i.loopexit: ; preds = %cond_true199.i
142 br label %cond_next204.i
143
144 cond_next204.i: ; preds = %cond_next204.i.loopexit, %cond_true128.i, %bb118.i
145 br label %bb233.i
146
147 cond_true230.i: ; No predecessors!
148 %exitcond155 = seteq uint 0, %tmp16.i ; [#uses=0]
149 unreachable
150
151 bb233.i: ; preds = %cond_next204.i
152 br bool false, label %_encodepart.exit.loopexit, label %cond_true249.i
153
154 cond_true249.i.preheader: ; preds = %cond_true155
155 br label %cond_true249.i
156
157 cond_true249.i: ; preds = %cond_true249.i.preheader, %bb233.i
158 %tmp16.i = cast int 0 to uint ; [#uses=1]
159 br bool false, label %cond_true115.i.preheader, label %bb118.i
160
161 _encodepart.exit.loopexit: ; preds = %bb233.i
162 br label %_encodepart.exit
163
164 _encodepart.exit: ; preds = %_encodepart.exit.loopexit, %cond_true155
165 br label %cond_next195
166
167 cond_next195: ; preds = %cond_true202, %_encodepart.exit, %cond_true139
168 br bool false, label %bb205.loopexit, label %cond_true202
169
170 cond_true202.preheader: ; preds = %cond_true218
171 br label %cond_true202
172
173 cond_true202: ; preds = %cond_true202.preheader, %cond_next195
174 br bool false, label %cond_next195, label %cond_true139
175
176 bb205.loopexit: ; preds = %cond_next195
177 br label %bb205
178
179 bb205: ; preds = %cond_true218, %bb205.loopexit
180 br bool false, label %cond_true218, label %bb222.outer105.loopexit
181
182 cond_true218.loopexit: ; preds = %cond_next92
183 br label %cond_true218
184
185 cond_true218: ; preds = %cond_true218.loopexit, %bb205
186 br bool false, label %cond_true202.preheader, label %bb205
187
188 bb222.preheader: ; preds = %entry
189 br label %bb222.outer
190
191 bb222.outer: ; preds = %bb229, %bb222.preheader
192 br label %bb222.outer105
193
194 bb222.outer105.loopexit: ; preds = %bb205
195 br label %bb222.outer105
196
197 bb222.outer105: ; preds = %bb222.outer105.loopexit, %bb222.outer
198 br label %bb222
199
200 bb222: ; preds = %bb222.outer105, %cond_next92
201 br bool false, label %cond_true226, label %bb229
202
203 cond_true226: ; preds = %bb222
204 br bool false, label %bb83.preheader, label %cond_next92
205
206 bb229: ; preds = %bb222
207 br bool false, label %bb222.outer, label %bb241.loopexit
208
209 bb241.loopexit: ; preds = %bb229
210 br label %bb241
211
212 bb241: ; preds = %bb241.loopexit, %entry
213 ret void
214 }