blob: 1e4ae8464586913d0225525dc0023a9ee8790128 [file] [log] [blame]
Dan Gohman36a09472009-09-08 23:54:48 +00001; RUN: llc < %s -mtriple=x86_64-linux-gnu
Evan Chengf5c73592007-10-15 18:33:50 +00002; PR1729
3
4 %struct.CUMULATIVE_ARGS = type { i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 }
5 %struct.VEC_edge = type { i32, i32, [1 x %struct.edge_def*] }
6 %struct.VEC_tree = type { i32, i32, [1 x %struct.tree_node*] }
7 %struct._IO_FILE = type { i32, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, i8*, %struct._IO_marker*, %struct._IO_FILE*, i32, i32, i64, i16, i8, [1 x i8], i8*, i64, i8*, i8*, i8*, i8*, i64, i32, [20 x i8] }
8 %struct._IO_marker = type { %struct._IO_marker*, %struct._IO_FILE*, i32 }
9 %struct._obstack_chunk = type { i8*, %struct._obstack_chunk*, [4 x i8] }
10 %struct.addr_diff_vec_flags = type <{ i8, i8, i8, i8 }>
11 %struct.alloc_pool_def = type { i8*, i64, i64, %struct.alloc_pool_list_def*, i64, i64, i64, %struct.alloc_pool_list_def*, i64, i64 }
12 %struct.alloc_pool_list_def = type { %struct.alloc_pool_list_def* }
13 %struct.basic_block_def = type { %struct.rtx_def*, %struct.rtx_def*, %struct.tree_node*, %struct.VEC_edge*, %struct.VEC_edge*, %struct.bitmap_head_def*, %struct.bitmap_head_def*, i8*, %struct.loop*, [2 x %struct.et_node*], %struct.basic_block_def*, %struct.basic_block_def*, %struct.reorder_block_def*, %struct.bb_ann_d*, i64, i32, i32, i32, i32 }
14 %struct.bb_ann_d = type opaque
15 %struct.bitmap_element_def = type { %struct.bitmap_element_def*, %struct.bitmap_element_def*, i32, [2 x i64] }
16 %struct.bitmap_head_def = type { %struct.bitmap_element_def*, %struct.bitmap_element_def*, i32, %struct.bitmap_obstack* }
17 %struct.bitmap_obstack = type { %struct.bitmap_element_def*, %struct.bitmap_head_def*, %struct.obstack }
18 %struct.cselib_val_struct = type opaque
19 %struct.dataflow_d = type opaque
20 %struct.die_struct = type opaque
21 %struct.edge_def = type { %struct.basic_block_def*, %struct.basic_block_def*, %struct.edge_def_insns, i8*, %struct.location_t*, i32, i32, i64, i32 }
22 %struct.edge_def_insns = type { %struct.rtx_def* }
23 %struct.edge_iterator = type { i32, %struct.VEC_edge** }
24 %struct.eh_status = type opaque
25 %struct.elt_list = type opaque
26 %struct.emit_status = type { i32, i32, %struct.rtx_def*, %struct.rtx_def*, %struct.sequence_stack*, i32, %struct.location_t, i32, i8*, %struct.rtx_def** }
27 %struct.et_node = type opaque
28 %struct.expr_status = type { i32, i32, i32, %struct.rtx_def*, %struct.rtx_def*, %struct.rtx_def* }
29 %struct.function = type { %struct.eh_status*, %struct.expr_status*, %struct.emit_status*, %struct.varasm_status*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.function*, i32, i32, i32, i32, %struct.rtx_def*, %struct.CUMULATIVE_ARGS, %struct.rtx_def*, %struct.rtx_def*, %struct.initial_value_struct*, %struct.rtx_def*, %struct.rtx_def*, %struct.rtx_def*, %struct.rtx_def*, %struct.rtx_def*, %struct.rtx_def*, i8, i32, i64, %struct.tree_node*, %struct.tree_node*, %struct.rtx_def*, %struct.varray_head_tag*, %struct.temp_slot*, i32, %struct.var_refs_queue*, i32, i32, %struct.rtvec_def*, %struct.tree_node*, i32, i32, i32, %struct.machine_function*, i32, i32, i8, i8, %struct.language_function*, %struct.rtx_def*, i32, i32, i32, i32, %struct.location_t, %struct.varray_head_tag*, %struct.tree_node*, %struct.tree_node*, i8, i8, i8 }
30 %struct.ht_identifier = type { i8*, i32, i32 }
31 %struct.initial_value_struct = type opaque
32 %struct.lang_decl = type opaque
33 %struct.lang_type = type opaque
34 %struct.language_function = type opaque
35 %struct.location_t = type { i8*, i32 }
36 %struct.loop = type opaque
37 %struct.machine_function = type { %struct.stack_local_entry*, i8*, %struct.rtx_def*, i32, i32, i32, i32, i32 }
38 %struct.mem_attrs = type { i64, %struct.tree_node*, %struct.rtx_def*, %struct.rtx_def*, i32 }
39 %struct.obstack = type { i64, %struct._obstack_chunk*, i8*, i8*, i8*, i64, i32, %struct._obstack_chunk* (i8*, i64)*, void (i8*, %struct._obstack_chunk*)*, i8*, i8 }
40 %struct.phi_arg_d = type { %struct.tree_node*, i8 }
41 %struct.ptr_info_def = type opaque
42 %struct.real_value = type opaque
43 %struct.reg_attrs = type { %struct.tree_node*, i64 }
44 %struct.reg_info_def = type { i32, i32, i32, i32, i32, i32, i32, i32, i32 }
45 %struct.reorder_block_def = type { %struct.rtx_def*, %struct.rtx_def*, %struct.basic_block_def*, %struct.basic_block_def*, %struct.basic_block_def*, i32, i32, i32 }
46 %struct.rtunion = type { i8* }
47 %struct.rtvec_def = type { i32, [1 x %struct.rtx_def*] }
48 %struct.rtx_def = type { i16, i8, i8, %struct.u }
49 %struct.sequence_stack = type { %struct.rtx_def*, %struct.rtx_def*, %struct.sequence_stack* }
50 %struct.simple_bitmap_def = type { i32, i32, i32, [1 x i64] }
51 %struct.stack_local_entry = type opaque
52 %struct.temp_slot = type opaque
53 %struct.tree_binfo = type { %struct.tree_common, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.VEC_tree*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.VEC_tree }
54 %struct.tree_block = type { %struct.tree_common, i32, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node* }
55 %struct.tree_common = type { %struct.tree_node*, %struct.tree_node*, %union.tree_ann_d*, i8, i8, i8, i8, i8 }
56 %struct.tree_complex = type { %struct.tree_common, %struct.tree_node*, %struct.tree_node* }
57 %struct.tree_decl = type { %struct.tree_common, %struct.location_t, i32, %struct.tree_node*, i8, i8, i8, i8, i8, i8, i8, i8, i32, %struct.tree_decl_u1, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.rtx_def*, i32, %struct.tree_decl_u2, %struct.tree_node*, %struct.tree_node*, i64, %struct.lang_decl* }
58 %struct.tree_decl_u1 = type { i64 }
59 %struct.tree_decl_u1_a = type <{ i32 }>
60 %struct.tree_decl_u2 = type { %struct.function* }
61 %struct.tree_exp = type { %struct.tree_common, %struct.location_t*, i32, %struct.tree_node*, [1 x %struct.tree_node*] }
62 %struct.tree_identifier = type { %struct.tree_common, %struct.ht_identifier }
63 %struct.tree_int_cst = type { %struct.tree_common, %struct.tree_int_cst_lowhi }
64 %struct.tree_int_cst_lowhi = type { i64, i64 }
65 %struct.tree_list = type { %struct.tree_common, %struct.tree_node*, %struct.tree_node* }
66 %struct.tree_node = type { %struct.tree_decl }
67 %struct.tree_phi_node = type { %struct.tree_common, %struct.tree_node*, i32, i32, i32, %struct.basic_block_def*, %struct.dataflow_d*, [1 x %struct.phi_arg_d] }
68 %struct.tree_real_cst = type { %struct.tree_common, %struct.real_value* }
69 %struct.tree_ssa_name = type { %struct.tree_common, %struct.tree_node*, i32, %struct.ptr_info_def*, %struct.tree_node*, i8* }
70 %struct.tree_statement_list = type { %struct.tree_common, %struct.tree_statement_list_node*, %struct.tree_statement_list_node* }
71 %struct.tree_statement_list_node = type { %struct.tree_statement_list_node*, %struct.tree_statement_list_node*, %struct.tree_node* }
72 %struct.tree_string = type { %struct.tree_common, i32, [1 x i8] }
73 %struct.tree_type = type { %struct.tree_common, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, i32, i16, i8, i8, i32, %struct.tree_node*, %struct.tree_node*, %struct.rtunion, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, %struct.tree_node*, i64, %struct.lang_type* }
74 %struct.tree_type_symtab = type { i8* }
75 %struct.tree_value_handle = type { %struct.tree_common, %struct.value_set*, i32 }
76 %struct.tree_vec = type { %struct.tree_common, i32, [1 x %struct.tree_node*] }
77 %struct.tree_vector = type { %struct.tree_common, %struct.tree_node* }
78 %struct.u = type { [1 x %struct.rtunion] }
79 %struct.value_set = type opaque
80 %struct.var_refs_queue = type { %struct.rtx_def*, i32, i32, %struct.var_refs_queue* }
81 %struct.varasm_status = type opaque
82 %struct.varray_data = type { [1 x i64] }
83 %struct.varray_head_tag = type { i64, i64, i32, i8*, %struct.varray_data }
84 %union.tree_ann_d = type opaque
85@first_edge_aux_obj = external global i8* ; <i8**> [#uses=0]
86@first_block_aux_obj = external global i8* ; <i8**> [#uses=0]
87@n_edges = external global i32 ; <i32*> [#uses=0]
88@ENTRY_BLOCK_PTR = external global %struct.basic_block_def* ; <%struct.basic_block_def**> [#uses=0]
89@EXIT_BLOCK_PTR = external global %struct.basic_block_def* ; <%struct.basic_block_def**> [#uses=0]
90@n_basic_blocks = external global i32 ; <i32*> [#uses=0]
91@.str = external constant [9 x i8] ; <[9 x i8]*> [#uses=0]
92@rbi_pool = external global %struct.alloc_pool_def* ; <%struct.alloc_pool_def**> [#uses=0]
93@__FUNCTION__.19643 = external constant [18 x i8] ; <[18 x i8]*> [#uses=0]
94@.str1 = external constant [20 x i8] ; <[20 x i8]*> [#uses=0]
95@__FUNCTION__.19670 = external constant [15 x i8] ; <[15 x i8]*> [#uses=0]
96@basic_block_info = external global %struct.varray_head_tag* ; <%struct.varray_head_tag**> [#uses=0]
97@last_basic_block = external global i32 ; <i32*> [#uses=0]
98@__FUNCTION__.19696 = external constant [14 x i8] ; <[14 x i8]*> [#uses=0]
99@__FUNCTION__.20191 = external constant [20 x i8] ; <[20 x i8]*> [#uses=0]
100@block_aux_obstack = external global %struct.obstack ; <%struct.obstack*> [#uses=0]
101@__FUNCTION__.20301 = external constant [20 x i8] ; <[20 x i8]*> [#uses=0]
102@__FUNCTION__.20316 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
103@edge_aux_obstack = external global %struct.obstack ; <%struct.obstack*> [#uses=0]
104@stderr = external global %struct._IO_FILE* ; <%struct._IO_FILE**> [#uses=0]
105@__FUNCTION__.20463 = external constant [11 x i8] ; <[11 x i8]*> [#uses=0]
106@.str2 = external constant [7 x i8] ; <[7 x i8]*> [#uses=0]
107@.str3 = external constant [6 x i8] ; <[6 x i8]*> [#uses=0]
108@.str4 = external constant [4 x i8] ; <[4 x i8]*> [#uses=0]
109@.str5 = external constant [11 x i8] ; <[11 x i8]*> [#uses=0]
110@.str6 = external constant [8 x i8] ; <[8 x i8]*> [#uses=0]
111@.str7 = external constant [4 x i8] ; <[4 x i8]*> [#uses=0]
112@bitnames.20157 = external constant [13 x i8*] ; <[13 x i8*]*> [#uses=0]
113@.str8 = external constant [9 x i8] ; <[9 x i8]*> [#uses=0]
114@.str9 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
115@.str10 = external constant [7 x i8] ; <[7 x i8]*> [#uses=0]
116@.str11 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
117@.str12 = external constant [5 x i8] ; <[5 x i8]*> [#uses=0]
118@.str13 = external constant [9 x i8] ; <[9 x i8]*> [#uses=0]
119@.str14 = external constant [13 x i8] ; <[13 x i8]*> [#uses=0]
120@.str15 = external constant [12 x i8] ; <[12 x i8]*> [#uses=0]
121@.str16 = external constant [8 x i8] ; <[8 x i8]*> [#uses=0]
122@.str17 = external constant [10 x i8] ; <[10 x i8]*> [#uses=0]
123@.str18 = external constant [5 x i8] ; <[5 x i8]*> [#uses=0]
124@.str19 = external constant [6 x i8] ; <[6 x i8]*> [#uses=0]
125@.str20 = external constant [5 x i8] ; <[5 x i8]*> [#uses=0]
126@.str21 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
127@.str22 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
128@__FUNCTION__.19709 = external constant [20 x i8] ; <[20 x i8]*> [#uses=0]
129@.str23 = external constant [5 x i8] ; <[5 x i8]*> [#uses=0]
130@.str24 = external constant [10 x i8] ; <[10 x i8]*> [#uses=0]
131@__FUNCTION__.19813 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
132@.str25 = external constant [7 x i8] ; <[7 x i8]*> [#uses=0]
133@.str26 = external constant [6 x i8] ; <[6 x i8]*> [#uses=0]
134@initialized.20241.b = external global i1 ; <i1*> [#uses=0]
135@__FUNCTION__.20244 = external constant [21 x i8] ; <[21 x i8]*> [#uses=0]
136@__FUNCTION__.19601 = external constant [12 x i8] ; <[12 x i8]*> [#uses=0]
137@__FUNCTION__.14571 = external constant [8 x i8] ; <[8 x i8]*> [#uses=0]
138@__FUNCTION__.14535 = external constant [13 x i8] ; <[13 x i8]*> [#uses=0]
139@.str27 = external constant [28 x i8] ; <[28 x i8]*> [#uses=0]
140@__FUNCTION__.14589 = external constant [8 x i8] ; <[8 x i8]*> [#uses=0]
141@__FUNCTION__.19792 = external constant [12 x i8] ; <[12 x i8]*> [#uses=0]
142@__FUNCTION__.19851 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
143@profile_status = external global i32 ; <i32*> [#uses=0]
144@.str29 = external constant [46 x i8] ; <[46 x i8]*> [#uses=0]
145@.str30 = external constant [49 x i8] ; <[49 x i8]*> [#uses=0]
146@.str31 = external constant [54 x i8] ; <[54 x i8]*> [#uses=0]
147@.str32 = external constant [49 x i8] ; <[49 x i8]*> [#uses=1]
148@__FUNCTION__.19948 = external constant [15 x i8] ; <[15 x i8]*> [#uses=0]
149@reg_n_info = external global %struct.varray_head_tag* ; <%struct.varray_head_tag**> [#uses=0]
150@reload_completed = external global i32 ; <i32*> [#uses=0]
151@.str33 = external constant [15 x i8] ; <[15 x i8]*> [#uses=0]
152@.str34 = external constant [43 x i8] ; <[43 x i8]*> [#uses=0]
153@.str35 = external constant [13 x i8] ; <[13 x i8]*> [#uses=0]
154@.str36 = external constant [1 x i8] ; <[1 x i8]*> [#uses=0]
155@.str37 = external constant [2 x i8] ; <[2 x i8]*> [#uses=0]
156@.str38 = external constant [16 x i8] ; <[16 x i8]*> [#uses=0]
157@cfun = external global %struct.function* ; <%struct.function**> [#uses=0]
158@.str39 = external constant [14 x i8] ; <[14 x i8]*> [#uses=0]
159@.str40 = external constant [11 x i8] ; <[11 x i8]*> [#uses=0]
160@.str41 = external constant [20 x i8] ; <[20 x i8]*> [#uses=0]
161@.str42 = external constant [17 x i8] ; <[17 x i8]*> [#uses=0]
162@.str43 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
163@mode_size = external global [48 x i8] ; <[48 x i8]*> [#uses=0]
164@target_flags = external global i32 ; <i32*> [#uses=0]
165@.str44 = external constant [11 x i8] ; <[11 x i8]*> [#uses=0]
166@reg_class_names = external global [0 x i8*] ; <[0 x i8*]*> [#uses=0]
167@.str45 = external constant [10 x i8] ; <[10 x i8]*> [#uses=0]
168@.str46 = external constant [13 x i8] ; <[13 x i8]*> [#uses=0]
169@.str47 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
170@.str48 = external constant [12 x i8] ; <[12 x i8]*> [#uses=0]
171@.str49 = external constant [10 x i8] ; <[10 x i8]*> [#uses=0]
172@.str50 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
173@.str51 = external constant [29 x i8] ; <[29 x i8]*> [#uses=0]
174@.str52 = external constant [17 x i8] ; <[17 x i8]*> [#uses=0]
175@.str53 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
176@.str54 = external constant [22 x i8] ; <[22 x i8]*> [#uses=0]
177@.str55 = external constant [10 x i8] ; <[10 x i8]*> [#uses=0]
178@.str56 = external constant [12 x i8] ; <[12 x i8]*> [#uses=0]
179@.str57 = external constant [26 x i8] ; <[26 x i8]*> [#uses=0]
180@.str58 = external constant [15 x i8] ; <[15 x i8]*> [#uses=0]
181@.str59 = external constant [14 x i8] ; <[14 x i8]*> [#uses=0]
182@.str60 = external constant [26 x i8] ; <[26 x i8]*> [#uses=0]
183@.str61 = external constant [24 x i8] ; <[24 x i8]*> [#uses=0]
184@initialized.20366.b = external global i1 ; <i1*> [#uses=0]
185@__FUNCTION__.20369 = external constant [20 x i8] ; <[20 x i8]*> [#uses=0]
186@__FUNCTION__.20442 = external constant [19 x i8] ; <[19 x i8]*> [#uses=0]
187@bb_bitnames.20476 = external constant [6 x i8*] ; <[6 x i8*]*> [#uses=0]
188@.str62 = external constant [6 x i8] ; <[6 x i8]*> [#uses=0]
189@.str63 = external constant [4 x i8] ; <[4 x i8]*> [#uses=0]
190@.str64 = external constant [10 x i8] ; <[10 x i8]*> [#uses=0]
191@.str65 = external constant [8 x i8] ; <[8 x i8]*> [#uses=0]
192@.str66 = external constant [17 x i8] ; <[17 x i8]*> [#uses=0]
193@.str67 = external constant [11 x i8] ; <[11 x i8]*> [#uses=0]
194@.str68 = external constant [15 x i8] ; <[15 x i8]*> [#uses=0]
195@.str69 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
196@.str70 = external constant [3 x i8] ; <[3 x i8]*> [#uses=0]
197@__FUNCTION__.20520 = external constant [32 x i8] ; <[32 x i8]*> [#uses=0]
198@dump_file = external global %struct._IO_FILE* ; <%struct._IO_FILE**> [#uses=0]
199@.str71 = external constant [86 x i8] ; <[86 x i8]*> [#uses=0]
200@.str72 = external constant [94 x i8] ; <[94 x i8]*> [#uses=0]
201@reg_obstack = external global %struct.bitmap_obstack ; <%struct.bitmap_obstack*> [#uses=0]
202
203declare void @init_flow()
204
205declare i8* @ggc_alloc_cleared_stat(i64)
206
207declare fastcc void @free_edge(%struct.edge_def*)
208
209declare void @ggc_free(i8*)
210
211declare %struct.basic_block_def* @alloc_block()
212
213declare void @alloc_rbi_pool()
214
215declare %struct.alloc_pool_def* @create_alloc_pool(i8*, i64, i64)
216
217declare void @free_rbi_pool()
218
219declare void @free_alloc_pool(%struct.alloc_pool_def*)
220
221declare void @initialize_bb_rbi(%struct.basic_block_def*)
222
223declare void @fancy_abort(i8*, i32, i8*)
224
225declare i8* @pool_alloc(%struct.alloc_pool_def*)
226
227declare void @llvm.memset.i64(i8*, i8, i64, i32)
228
229declare void @link_block(%struct.basic_block_def*, %struct.basic_block_def*)
230
231declare void @unlink_block(%struct.basic_block_def*)
232
233declare void @compact_blocks()
234
235declare void @varray_check_failed(%struct.varray_head_tag*, i64, i8*, i32, i8*)
236
237declare void @expunge_block(%struct.basic_block_def*)
238
239declare void @clear_bb_flags()
240
241declare void @alloc_aux_for_block(%struct.basic_block_def*, i32)
242
243declare void @_obstack_newchunk(%struct.obstack*, i32)
244
245declare void @clear_aux_for_blocks()
246
247declare void @free_aux_for_blocks()
248
249declare void @obstack_free(%struct.obstack*, i8*)
250
251declare void @alloc_aux_for_edge(%struct.edge_def*, i32)
252
253declare void @debug_bb(%struct.basic_block_def*)
254
255declare void @dump_bb(%struct.basic_block_def*, %struct._IO_FILE*, i32)
256
257declare %struct.basic_block_def* @debug_bb_n(i32)
258
259declare void @dump_edge_info(%struct._IO_FILE*, %struct.edge_def*, i32)
260
261declare i32 @fputs_unlocked(i8* noalias , %struct._IO_FILE* noalias )
262
263declare i32 @fprintf(%struct._IO_FILE* noalias , i8* noalias , ...)
264
265declare i64 @fwrite(i8*, i64, i64, i8*)
266
267declare i32 @__overflow(%struct._IO_FILE*, i32)
268
269declare %struct.edge_def* @unchecked_make_edge(%struct.basic_block_def*, %struct.basic_block_def*, i32)
270
271declare i8* @vec_gc_p_reserve(i8*, i32)
272
273declare void @vec_assert_fail(i8*, i8*, i8*, i32, i8*)
274
275declare void @execute_on_growing_pred(%struct.edge_def*)
276
277declare %struct.edge_def* @make_edge(%struct.basic_block_def*, %struct.basic_block_def*, i32)
278
279declare %struct.edge_def* @find_edge(%struct.basic_block_def*, %struct.basic_block_def*)
280
281declare %struct.edge_def* @make_single_succ_edge(%struct.basic_block_def*, %struct.basic_block_def*, i32)
282
283declare %struct.edge_def* @cached_make_edge(%struct.simple_bitmap_def**, %struct.basic_block_def*, %struct.basic_block_def*, i32)
284
285declare void @redirect_edge_succ(%struct.edge_def*, %struct.basic_block_def*)
286
287declare void @execute_on_shrinking_pred(%struct.edge_def*)
288
289declare void @alloc_aux_for_blocks(i32)
290
291declare i8* @xmalloc(i64)
292
293declare i32 @_obstack_begin(%struct.obstack*, i32, i32, i8* (i64)*, void (i8*)*)
294
295declare void @free(i8*)
296
297declare void @clear_edges()
298
299declare void @remove_edge(%struct.edge_def*)
300
301declare %struct.edge_def* @redirect_edge_succ_nodup(%struct.edge_def*, %struct.basic_block_def*)
302
303declare void @redirect_edge_pred(%struct.edge_def*, %struct.basic_block_def*)
304
305define void @check_bb_profile(%struct.basic_block_def* %bb, %struct._IO_FILE* %file) {
306entry:
307 br i1 false, label %cond_false759.preheader, label %cond_false149.preheader
308
309cond_false149.preheader: ; preds = %entry
310 ret void
311
312cond_false759.preheader: ; preds = %entry
313 br i1 false, label %cond_next873, label %cond_true794
314
315bb644: ; preds = %cond_next873
316 ret void
317
318cond_true794: ; preds = %cond_false759.preheader
319 ret void
320
321cond_next873: ; preds = %cond_false759.preheader
322 br i1 false, label %bb882, label %bb644
323
324bb882: ; preds = %cond_next873
325 br i1 false, label %cond_true893, label %cond_next901
326
327cond_true893: ; preds = %bb882
328 br label %cond_false1036
329
330cond_next901: ; preds = %bb882
331 ret void
332
333bb929: ; preds = %cond_next1150
334 %tmp934 = add i64 0, %lsum.11225.0 ; <i64> [#uses=1]
335 br i1 false, label %cond_next979, label %cond_true974
336
337cond_true974: ; preds = %bb929
338 ret void
339
340cond_next979: ; preds = %bb929
341 br label %cond_false1036
342
343cond_false1036: ; preds = %cond_next979, %cond_true893
344 %lsum.11225.0 = phi i64 [ 0, %cond_true893 ], [ %tmp934, %cond_next979 ] ; <i64> [#uses=2]
345 br i1 false, label %cond_next1056, label %cond_true1051
346
347cond_true1051: ; preds = %cond_false1036
348 ret void
349
350cond_next1056: ; preds = %cond_false1036
351 br i1 false, label %cond_next1150, label %cond_true1071
352
353cond_true1071: ; preds = %cond_next1056
354 ret void
355
356cond_next1150: ; preds = %cond_next1056
357 %tmp1156 = icmp eq %struct.edge_def* null, null ; <i1> [#uses=1]
358 br i1 %tmp1156, label %bb1159, label %bb929
359
360bb1159: ; preds = %cond_next1150
361 br i1 false, label %cond_true1169, label %UnifiedReturnBlock
362
363cond_true1169: ; preds = %bb1159
364 %tmp11741175 = trunc i64 %lsum.11225.0 to i32 ; <i32> [#uses=1]
365 %tmp1178 = tail call i32 (%struct._IO_FILE* noalias , i8* noalias , ...)* @fprintf( %struct._IO_FILE* %file noalias , i8* getelementptr ([49 x i8]* @.str32, i32 0, i64 0) noalias , i32 %tmp11741175, i32 0 ) ; <i32> [#uses=0]
366 ret void
367
368UnifiedReturnBlock: ; preds = %bb1159
369 ret void
370}
371
372declare void @dump_flow_info(%struct._IO_FILE*)
373
374declare i32 @max_reg_num()
375
376declare void @rtl_check_failed_flag(i8*, %struct.rtx_def*, i8*, i32, i8*)
377
378declare i32 @reg_preferred_class(i32)
379
380declare i32 @reg_alternate_class(i32)
381
382declare i8 @maybe_hot_bb_p(%struct.basic_block_def*) zeroext
383
384declare i8 @probably_never_executed_bb_p(%struct.basic_block_def*) zeroext
385
386declare void @dump_regset(%struct.bitmap_head_def*, %struct._IO_FILE*)
387
388declare void @debug_flow_info()
389
390declare void @alloc_aux_for_edges(i32)
391
392declare void @clear_aux_for_edges()
393
394declare void @free_aux_for_edges()
395
396declare void @brief_dump_cfg(%struct._IO_FILE*)
397
398declare i32 @fputc(i32, i8*)
399
400declare void @update_bb_profile_for_threading(%struct.basic_block_def*, i32, i64, %struct.edge_def*)