1 ; RUN: llc < %s -mtriple=armv6-apple-darwin
3 %struct.term = type { i32, i32, i32 }
5 declare fastcc i8* @memory_Malloc(i32) nounwind
7 define fastcc %struct.term* @t1() nounwind {
9 br i1 undef, label %bb, label %bb1
12 ret %struct.term* undef
15 %0 = tail call fastcc i8* @memory_Malloc(i32 12) nounwind ; <i8*> [#uses=0]
16 %1 = tail call fastcc i8* @memory_Malloc(i32 12) nounwind ; <i8*> [#uses=0]
17 ret %struct.term* undef
21 define i32 @t2(i32 %argc, i8** nocapture %argv) nounwind {
25 bb6.i8: ; preds = %memory_CalculateRealBlockSize1374.exit.i, %entry
26 br i1 undef, label %memory_CalculateRealBlockSize1374.exit.i, label %bb.i.i9
28 bb.i.i9: ; preds = %bb6.i8
29 br label %memory_CalculateRealBlockSize1374.exit.i
31 memory_CalculateRealBlockSize1374.exit.i: ; preds = %bb.i.i9, %bb6.i8
32 %0 = phi i32 [ undef, %bb.i.i9 ], [ undef, %bb6.i8 ] ; <i32> [#uses=2]
33 store i32 %0, i32* undef, align 4
34 %1 = urem i32 8184, %0 ; <i32> [#uses=1]
35 %2 = sub i32 8188, %1 ; <i32> [#uses=1]
36 store i32 %2, i32* undef, align 4
37 br i1 undef, label %memory_Init.exit, label %bb6.i8
39 memory_Init.exit: ; preds = %memory_CalculateRealBlockSize1374.exit.i
42 bb.i.i: ; preds = %bb.i.i, %memory_Init.exit
43 br i1 undef, label %symbol_Init.exit, label %bb.i.i
45 symbol_Init.exit: ; preds = %bb.i.i
48 bb.i.i67: ; preds = %bb.i.i67, %symbol_Init.exit
49 br i1 undef, label %symbol_CreatePrecedence3522.exit, label %bb.i.i67
51 symbol_CreatePrecedence3522.exit: ; preds = %bb.i.i67
54 bb.i.i8.i: ; preds = %bb.i.i8.i, %symbol_CreatePrecedence3522.exit
55 br i1 undef, label %cont_Create.exit9.i, label %bb.i.i8.i
57 cont_Create.exit9.i: ; preds = %bb.i.i8.i
60 bb.i.i.i72: ; preds = %bb.i.i.i72, %cont_Create.exit9.i
61 br i1 undef, label %cont_Init.exit, label %bb.i.i.i72
63 cont_Init.exit: ; preds = %bb.i.i.i72
66 bb.i103: ; preds = %bb.i103, %cont_Init.exit
67 br i1 undef, label %subs_Init.exit, label %bb.i103
69 subs_Init.exit: ; preds = %bb.i103
70 br i1 undef, label %bb1.i.i.i80, label %cc_Init.exit
72 bb1.i.i.i80: ; preds = %subs_Init.exit
75 cc_Init.exit: ; preds = %subs_Init.exit
78 bb.i.i375: ; preds = %bb.i.i375, %cc_Init.exit
79 br i1 undef, label %bb.i439, label %bb.i.i375
81 bb.i439: ; preds = %bb.i439, %bb.i.i375
82 br i1 undef, label %opts_DeclareSPASSFlagsAsOptions.exit, label %bb.i439
84 opts_DeclareSPASSFlagsAsOptions.exit: ; preds = %bb.i439
85 br i1 undef, label %opts_TranslateShortOptDeclarations.exit.i, label %bb.i.i82
87 bb.i.i82: ; preds = %opts_DeclareSPASSFlagsAsOptions.exit
90 opts_TranslateShortOptDeclarations.exit.i: ; preds = %opts_DeclareSPASSFlagsAsOptions.exit
91 br i1 undef, label %list_Length.exit.i.thread.i, label %bb.i.i4.i
93 list_Length.exit.i.thread.i: ; preds = %opts_TranslateShortOptDeclarations.exit.i
94 br i1 undef, label %bb18.i.i.i, label %bb26.i.i.i
96 bb.i.i4.i: ; preds = %opts_TranslateShortOptDeclarations.exit.i
99 bb18.i.i.i: ; preds = %list_Length.exit.i.thread.i
102 bb26.i.i.i: ; preds = %list_Length.exit.i.thread.i
103 br i1 undef, label %bb27.i142, label %opts_GetOptLongOnly.exit.thread97.i
105 opts_GetOptLongOnly.exit.thread97.i: ; preds = %bb26.i.i.i
108 bb27.i142: ; preds = %opts_GetOptLongOnly.exit.thread97.i, %bb26.i.i.i
111 bb1.i3.i: ; preds = %bb1.i3.i, %bb27.i142
112 br i1 undef, label %opts_FreeLongOptsArray.exit.i, label %bb1.i3.i
114 opts_FreeLongOptsArray.exit.i: ; preds = %bb1.i3.i
117 bb.i443: ; preds = %bb.i443, %opts_FreeLongOptsArray.exit.i
118 br i1 undef, label %flag_InitStoreByDefaults3542.exit, label %bb.i443
120 flag_InitStoreByDefaults3542.exit: ; preds = %bb.i443
121 br i1 undef, label %bb6.i449, label %bb.i503
123 bb6.i449: ; preds = %flag_InitStoreByDefaults3542.exit
126 bb.i503: ; preds = %bb.i503, %flag_InitStoreByDefaults3542.exit
127 br i1 undef, label %flag_CleanStore3464.exit, label %bb.i503
129 flag_CleanStore3464.exit: ; preds = %bb.i503
130 br i1 undef, label %bb1.i81.i.preheader, label %bb.i173
132 bb.i173: ; preds = %flag_CleanStore3464.exit
135 bb1.i81.i.preheader: ; preds = %flag_CleanStore3464.exit
136 br i1 undef, label %bb1.i64.i.preheader, label %bb5.i179
138 bb5.i179: ; preds = %bb1.i81.i.preheader
141 bb1.i64.i.preheader: ; preds = %bb1.i81.i.preheader
142 br i1 undef, label %dfg_DeleteProofList.exit.i, label %bb.i9.i
144 bb.i9.i: ; preds = %bb1.i64.i.preheader
147 dfg_DeleteProofList.exit.i: ; preds = %bb1.i64.i.preheader
148 br i1 undef, label %term_DeleteTermList621.exit.i, label %bb.i.i62.i
150 bb.i.i62.i: ; preds = %bb.i.i62.i, %dfg_DeleteProofList.exit.i
151 br i1 undef, label %term_DeleteTermList621.exit.i, label %bb.i.i62.i
153 term_DeleteTermList621.exit.i: ; preds = %bb.i.i62.i, %dfg_DeleteProofList.exit.i
154 br i1 undef, label %dfg_DFGParser.exit, label %bb.i.i211
156 bb.i.i211: ; preds = %term_DeleteTermList621.exit.i
159 dfg_DFGParser.exit: ; preds = %term_DeleteTermList621.exit.i
162 bb.i513: ; preds = %bb2.i516, %dfg_DFGParser.exit
163 br i1 undef, label %bb2.i516, label %bb1.i514
165 bb1.i514: ; preds = %bb.i513
168 bb2.i516: ; preds = %bb.i513
169 br i1 undef, label %bb.i509, label %bb.i513
171 bb.i509: ; preds = %bb.i509, %bb2.i516
172 br i1 undef, label %symbol_TransferPrecedence3468.exit511, label %bb.i509
174 symbol_TransferPrecedence3468.exit511: ; preds = %bb.i509
175 br i1 undef, label %bb20, label %bb21
177 bb20: ; preds = %symbol_TransferPrecedence3468.exit511
180 bb21: ; preds = %symbol_TransferPrecedence3468.exit511
181 br i1 undef, label %cnf_Init.exit, label %bb.i498
183 bb.i498: ; preds = %bb21
186 cnf_Init.exit: ; preds = %bb21
187 br i1 undef, label %bb23, label %bb22
189 bb22: ; preds = %cnf_Init.exit
190 br i1 undef, label %bb2.i.i496, label %bb.i.i494
192 bb.i.i494: ; preds = %bb22
195 bb2.i.i496: ; preds = %bb22
198 bb23: ; preds = %cnf_Init.exit
199 br i1 undef, label %bb28, label %bb24
201 bb24: ; preds = %bb23
204 bb28: ; preds = %bb23
205 br i1 undef, label %bb31, label %bb29
207 bb29: ; preds = %bb28
210 bb31: ; preds = %bb28
211 br i1 undef, label %bb34, label %bb32
213 bb32: ; preds = %bb31
216 bb34: ; preds = %bb31
217 br i1 undef, label %bb83, label %bb66
219 bb66: ; preds = %bb34
222 bb83: ; preds = %bb34
223 br i1 undef, label %bb2.i1668, label %bb.i1667
225 bb.i1667: ; preds = %bb83
228 bb2.i1668: ; preds = %bb83
229 br i1 undef, label %bb5.i205, label %bb3.i204
231 bb3.i204: ; preds = %bb2.i1668
234 bb5.i205: ; preds = %bb2.i1668
235 br i1 undef, label %bb.i206.i, label %ana_AnalyzeSortStructure.exit.i
237 bb.i206.i: ; preds = %bb5.i205
238 br i1 undef, label %bb1.i207.i, label %ana_AnalyzeSortStructure.exit.i
240 bb1.i207.i: ; preds = %bb.i206.i
241 br i1 undef, label %bb25.i1801.thread, label %bb.i1688
243 bb.i1688: ; preds = %bb1.i207.i
246 bb25.i1801.thread: ; preds = %bb1.i207.i
249 ana_AnalyzeSortStructure.exit.i: ; preds = %bb.i206.i, %bb5.i205
250 br i1 undef, label %bb7.i207, label %bb.i1806
252 bb.i1806: ; preds = %ana_AnalyzeSortStructure.exit.i
253 br i1 undef, label %bb2.i.i.i1811, label %bb.i.i.i1809
255 bb.i.i.i1809: ; preds = %bb.i1806
258 bb2.i.i.i1811: ; preds = %bb.i1806
261 bb7.i207: ; preds = %ana_AnalyzeSortStructure.exit.i
262 br i1 undef, label %bb9.i, label %bb8.i
264 bb8.i: ; preds = %bb7.i207
267 bb9.i: ; preds = %bb7.i207
268 br i1 undef, label %bb23.i, label %bb26.i
270 bb23.i: ; preds = %bb9.i
271 br i1 undef, label %bb25.i, label %bb24.i
273 bb24.i: ; preds = %bb23.i
274 br i1 undef, label %sort_SortTheoryIsTrivial.exit.i, label %bb.i2093
276 bb.i2093: ; preds = %bb.i2093, %bb24.i
279 sort_SortTheoryIsTrivial.exit.i: ; preds = %bb24.i
280 br i1 undef, label %bb3.i2141, label %bb4.i2143
282 bb3.i2141: ; preds = %sort_SortTheoryIsTrivial.exit.i
285 bb4.i2143: ; preds = %sort_SortTheoryIsTrivial.exit.i
286 br i1 undef, label %bb8.i2178, label %bb5.i2144
288 bb5.i2144: ; preds = %bb4.i2143
289 br i1 undef, label %bb7.i2177, label %bb1.i28.i
291 bb1.i28.i: ; preds = %bb5.i2144
292 br i1 undef, label %bb4.i43.i, label %bb2.i.i2153
294 bb2.i.i2153: ; preds = %bb1.i28.i
295 br i1 undef, label %bb4.i.i33.i, label %bb.i.i30.i
297 bb.i.i30.i: ; preds = %bb2.i.i2153
300 bb4.i.i33.i: ; preds = %bb2.i.i2153
301 br i1 undef, label %bb9.i.i36.i, label %bb5.i.i34.i
303 bb5.i.i34.i: ; preds = %bb4.i.i33.i
306 bb9.i.i36.i: ; preds = %bb4.i.i33.i
307 br i1 undef, label %bb14.i.i.i2163, label %bb10.i.i37.i
309 bb10.i.i37.i: ; preds = %bb9.i.i36.i
312 bb14.i.i.i2163: ; preds = %bb9.i.i36.i
313 br i1 undef, label %sort_LinkPrint.exit.i.i, label %bb15.i.i.i2164
315 bb15.i.i.i2164: ; preds = %bb14.i.i.i2163
318 sort_LinkPrint.exit.i.i: ; preds = %bb14.i.i.i2163
321 bb4.i43.i: ; preds = %bb1.i28.i
324 bb7.i2177: ; preds = %bb5.i2144
327 bb8.i2178: ; preds = %bb4.i2143
328 br i1 undef, label %sort_ApproxStaticSortTheory.exit, label %bb.i5.i2185.preheader
330 bb.i5.i2185.preheader: ; preds = %bb8.i2178
331 br label %bb.i5.i2185
333 bb.i5.i2185: ; preds = %bb.i5.i2185, %bb.i5.i2185.preheader
334 br i1 undef, label %sort_ApproxStaticSortTheory.exit, label %bb.i5.i2185
336 sort_ApproxStaticSortTheory.exit: ; preds = %bb.i5.i2185, %bb8.i2178
339 bb25.i: ; preds = %sort_ApproxStaticSortTheory.exit, %bb23.i
342 bb26.i: ; preds = %bb9.i