blob: 98e002302558b5df7860fe685a7f1ced9969bbf1 [file] [log] [blame]
Dan Gohmanfce288f2009-09-09 00:09:15 +00001; RUN: llc < %s -mtriple=arm-apple-darwin -mattr=+v6
Evan Chengcd0c4ac2009-06-04 20:25:48 +00002
3 %struct.anon = type { i16, i16 }
4 %struct.cab_archive = type { i32, i16, i16, i16, i16, i8, %struct.cab_folder*, %struct.cab_file* }
5 %struct.cab_file = type { i32, i16, i64, i8*, i32, i32, i32, %struct.cab_folder*, %struct.cab_file*, %struct.cab_archive*, %struct.cab_state* }
6 %struct.cab_folder = type { i16, i16, %struct.cab_archive*, i64, %struct.cab_folder* }
7 %struct.cab_state = type { i8*, i8*, [38912 x i8], i16, i16, i8*, i16 }
8 %struct.qtm_model = type { i32, i32, %struct.anon* }
9 %struct.qtm_stream = type { i32, i32, i8, i8*, i32, i32, i32, i16, i16, i16, i8, i32, i8*, i8*, i8*, i8*, i8*, i32, i32, i8, [42 x i32], [42 x i8], [27 x i8], [27 x i8], %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, %struct.qtm_model, [65 x %struct.anon], [65 x %struct.anon], [65 x %struct.anon], [65 x %struct.anon], [25 x %struct.anon], [37 x %struct.anon], [43 x %struct.anon], [28 x %struct.anon], [8 x %struct.anon], %struct.cab_file*, i32 (%struct.cab_file*, i8*, i32)* }
10
11declare fastcc i32 @qtm_read_input(%struct.qtm_stream* nocapture) nounwind
12
13define fastcc i32 @qtm_decompress(%struct.qtm_stream* %qtm, i64 %out_bytes) nounwind {
14entry:
15 br i1 undef, label %bb245, label %bb3
16
17bb3: ; preds = %entry
18 br i1 undef, label %bb5, label %bb4
19
20bb4: ; preds = %bb3
21 ret i32 undef
22
23bb5: ; preds = %bb3
24 br i1 undef, label %bb245, label %bb14
25
26bb14: ; preds = %bb5
27 br label %bb238
28
29bb28: ; preds = %bb215
30 br label %bb31
31
32bb29: ; preds = %bb31
33 br i1 undef, label %bb31, label %bb32
34
35bb31: ; preds = %bb29, %bb28
36 br i1 undef, label %bb29, label %bb32
37
38bb32: ; preds = %bb31, %bb29
39 br label %bb33
40
41bb33: ; preds = %bb33, %bb32
42 br i1 undef, label %bb34, label %bb33
43
44bb34: ; preds = %bb33
45 br i1 undef, label %bb35, label %bb36
46
47bb35: ; preds = %bb34
48 br label %bb36
49
50bb36: ; preds = %bb46, %bb35, %bb34
51 br i1 undef, label %bb40, label %bb37
52
53bb37: ; preds = %bb36
54 br i1 undef, label %bb77, label %bb60
55
56bb40: ; preds = %bb36
57 br i1 undef, label %bb46, label %bb41
58
59bb41: ; preds = %bb40
60 br i1 undef, label %bb45, label %bb42
61
62bb42: ; preds = %bb41
63 ret i32 undef
64
65bb45: ; preds = %bb41
66 br label %bb46
67
68bb46: ; preds = %bb45, %bb40
69 br label %bb36
70
71bb60: ; preds = %bb60, %bb37
72 br label %bb60
73
74bb77: ; preds = %bb37
75 switch i32 undef, label %bb197 [
76 i32 5, label %bb108
77 i32 6, label %bb138
78 ]
79
80bb108: ; preds = %bb77
81 br label %bb111
82
83bb109: ; preds = %bb111
84 br i1 undef, label %bb111, label %bb112
85
86bb111: ; preds = %bb109, %bb108
87 br i1 undef, label %bb109, label %bb112
88
89bb112: ; preds = %bb111, %bb109
90 br label %bb113
91
92bb113: ; preds = %bb113, %bb112
93 br i1 undef, label %bb114, label %bb113
94
95bb114: ; preds = %bb113
96 br i1 undef, label %bb115, label %bb116
97
98bb115: ; preds = %bb114
99 br label %bb116
100
101bb116: ; preds = %bb115, %bb114
102 br i1 undef, label %bb120, label %bb117
103
104bb117: ; preds = %bb116
105 br label %bb136
106
107bb120: ; preds = %bb116
108 ret i32 undef
109
110bb128: ; preds = %bb136
111 br i1 undef, label %bb134, label %bb129
112
113bb129: ; preds = %bb128
114 br i1 undef, label %bb133, label %bb130
115
116bb130: ; preds = %bb129
117 br i1 undef, label %bb132, label %bb131
118
119bb131: ; preds = %bb130
120 ret i32 undef
121
122bb132: ; preds = %bb130
123 br label %bb133
124
125bb133: ; preds = %bb132, %bb129
126 br label %bb134
127
128bb134: ; preds = %bb133, %bb128
129 br label %bb136
130
131bb136: ; preds = %bb134, %bb117
132 br i1 undef, label %bb198, label %bb128
133
134bb138: ; preds = %bb77
135 %0 = trunc i32 undef to i16 ; <i16> [#uses=1]
136 br label %bb141
137
138bb139: ; preds = %bb141
139 %scevgep441442881 = load i16* undef ; <i16> [#uses=1]
140 %1 = icmp ugt i16 %scevgep441442881, %0 ; <i1> [#uses=1]
141 br i1 %1, label %bb141, label %bb142
142
143bb141: ; preds = %bb139, %bb138
144 br i1 undef, label %bb139, label %bb142
145
146bb142: ; preds = %bb141, %bb139
147 br label %bb143
148
149bb143: ; preds = %bb143, %bb142
150 br i1 undef, label %bb144, label %bb143
151
152bb144: ; preds = %bb143
153 br i1 undef, label %bb145, label %bb146
154
155bb145: ; preds = %bb144
156 unreachable
157
158bb146: ; preds = %bb156, %bb144
159 br i1 undef, label %bb150, label %bb147
160
161bb147: ; preds = %bb146
162 br i1 undef, label %bb157, label %bb148
163
164bb148: ; preds = %bb147
165 br i1 undef, label %bb149, label %bb157
166
167bb149: ; preds = %bb148
168 br label %bb150
169
170bb150: ; preds = %bb149, %bb146
171 br i1 undef, label %bb156, label %bb152
172
173bb152: ; preds = %bb150
174 unreachable
175
176bb156: ; preds = %bb150
177 br label %bb146
178
179bb157: ; preds = %bb148, %bb147
180 br i1 undef, label %bb167, label %bb160
181
182bb160: ; preds = %bb157
183 ret i32 undef
184
185bb167: ; preds = %bb157
186 br label %bb170
187
188bb168: ; preds = %bb170
189 br i1 undef, label %bb170, label %bb171
190
191bb170: ; preds = %bb168, %bb167
192 br i1 undef, label %bb168, label %bb171
193
194bb171: ; preds = %bb170, %bb168
195 br label %bb172
196
197bb172: ; preds = %bb172, %bb171
198 br i1 undef, label %bb173, label %bb172
199
200bb173: ; preds = %bb172
201 br i1 undef, label %bb174, label %bb175
202
203bb174: ; preds = %bb173
204 unreachable
205
206bb175: ; preds = %bb179, %bb173
207 br i1 undef, label %bb179, label %bb176
208
209bb176: ; preds = %bb175
210 br i1 undef, label %bb186, label %bb177
211
212bb177: ; preds = %bb176
213 br i1 undef, label %bb178, label %bb186
214
215bb178: ; preds = %bb177
216 br label %bb179
217
218bb179: ; preds = %bb178, %bb175
219 br label %bb175
220
221bb186: ; preds = %bb177, %bb176
222 br label %bb195
223
224bb187: ; preds = %bb195
225 br i1 undef, label %bb193, label %bb189
226
227bb189: ; preds = %bb187
228 %2 = tail call fastcc i32 @qtm_read_input(%struct.qtm_stream* %qtm) nounwind ; <i32> [#uses=0]
229 ret i32 undef
230
231bb193: ; preds = %bb187
232 br label %bb195
233
234bb195: ; preds = %bb193, %bb186
235 br i1 undef, label %bb198, label %bb187
236
237bb197: ; preds = %bb77
238 ret i32 -124
239
240bb198: ; preds = %bb195, %bb136
241 br i1 undef, label %bb211.preheader, label %bb214
242
243bb211.preheader: ; preds = %bb198
244 br label %bb211
245
246bb211: ; preds = %bb211, %bb211.preheader
247 br i1 undef, label %bb214, label %bb211
248
249bb214: ; preds = %bb211, %bb198
250 br label %bb215
251
252bb215: ; preds = %bb238, %bb214
253 br i1 undef, label %bb28, label %bb216
254
255bb216: ; preds = %bb215
256 br label %bb238
257
258bb238: ; preds = %bb216, %bb14
259 br label %bb215
260
261bb245: ; preds = %bb5, %entry
262 ret i32 undef
263}