Dan Gohman | 36a0947 | 2009-09-08 23:54:48 +0000 | [diff] [blame] | 1 | ; RUN: llc < %s -mtriple=x86_64-linux-gnu |
Evan Cheng | f5c7359 | 2007-10-15 18:33:50 +0000 | [diff] [blame] | 2 | ; 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 | |
| 203 | declare void @init_flow() |
| 204 | |
| 205 | declare i8* @ggc_alloc_cleared_stat(i64) |
| 206 | |
| 207 | declare fastcc void @free_edge(%struct.edge_def*) |
| 208 | |
| 209 | declare void @ggc_free(i8*) |
| 210 | |
| 211 | declare %struct.basic_block_def* @alloc_block() |
| 212 | |
| 213 | declare void @alloc_rbi_pool() |
| 214 | |
| 215 | declare %struct.alloc_pool_def* @create_alloc_pool(i8*, i64, i64) |
| 216 | |
| 217 | declare void @free_rbi_pool() |
| 218 | |
| 219 | declare void @free_alloc_pool(%struct.alloc_pool_def*) |
| 220 | |
| 221 | declare void @initialize_bb_rbi(%struct.basic_block_def*) |
| 222 | |
| 223 | declare void @fancy_abort(i8*, i32, i8*) |
| 224 | |
| 225 | declare i8* @pool_alloc(%struct.alloc_pool_def*) |
| 226 | |
| 227 | declare void @llvm.memset.i64(i8*, i8, i64, i32) |
| 228 | |
| 229 | declare void @link_block(%struct.basic_block_def*, %struct.basic_block_def*) |
| 230 | |
| 231 | declare void @unlink_block(%struct.basic_block_def*) |
| 232 | |
| 233 | declare void @compact_blocks() |
| 234 | |
| 235 | declare void @varray_check_failed(%struct.varray_head_tag*, i64, i8*, i32, i8*) |
| 236 | |
| 237 | declare void @expunge_block(%struct.basic_block_def*) |
| 238 | |
| 239 | declare void @clear_bb_flags() |
| 240 | |
| 241 | declare void @alloc_aux_for_block(%struct.basic_block_def*, i32) |
| 242 | |
| 243 | declare void @_obstack_newchunk(%struct.obstack*, i32) |
| 244 | |
| 245 | declare void @clear_aux_for_blocks() |
| 246 | |
| 247 | declare void @free_aux_for_blocks() |
| 248 | |
| 249 | declare void @obstack_free(%struct.obstack*, i8*) |
| 250 | |
| 251 | declare void @alloc_aux_for_edge(%struct.edge_def*, i32) |
| 252 | |
| 253 | declare void @debug_bb(%struct.basic_block_def*) |
| 254 | |
| 255 | declare void @dump_bb(%struct.basic_block_def*, %struct._IO_FILE*, i32) |
| 256 | |
| 257 | declare %struct.basic_block_def* @debug_bb_n(i32) |
| 258 | |
| 259 | declare void @dump_edge_info(%struct._IO_FILE*, %struct.edge_def*, i32) |
| 260 | |
| 261 | declare i32 @fputs_unlocked(i8* noalias , %struct._IO_FILE* noalias ) |
| 262 | |
| 263 | declare i32 @fprintf(%struct._IO_FILE* noalias , i8* noalias , ...) |
| 264 | |
| 265 | declare i64 @fwrite(i8*, i64, i64, i8*) |
| 266 | |
| 267 | declare i32 @__overflow(%struct._IO_FILE*, i32) |
| 268 | |
| 269 | declare %struct.edge_def* @unchecked_make_edge(%struct.basic_block_def*, %struct.basic_block_def*, i32) |
| 270 | |
| 271 | declare i8* @vec_gc_p_reserve(i8*, i32) |
| 272 | |
| 273 | declare void @vec_assert_fail(i8*, i8*, i8*, i32, i8*) |
| 274 | |
| 275 | declare void @execute_on_growing_pred(%struct.edge_def*) |
| 276 | |
| 277 | declare %struct.edge_def* @make_edge(%struct.basic_block_def*, %struct.basic_block_def*, i32) |
| 278 | |
| 279 | declare %struct.edge_def* @find_edge(%struct.basic_block_def*, %struct.basic_block_def*) |
| 280 | |
| 281 | declare %struct.edge_def* @make_single_succ_edge(%struct.basic_block_def*, %struct.basic_block_def*, i32) |
| 282 | |
| 283 | declare %struct.edge_def* @cached_make_edge(%struct.simple_bitmap_def**, %struct.basic_block_def*, %struct.basic_block_def*, i32) |
| 284 | |
| 285 | declare void @redirect_edge_succ(%struct.edge_def*, %struct.basic_block_def*) |
| 286 | |
| 287 | declare void @execute_on_shrinking_pred(%struct.edge_def*) |
| 288 | |
| 289 | declare void @alloc_aux_for_blocks(i32) |
| 290 | |
| 291 | declare i8* @xmalloc(i64) |
| 292 | |
| 293 | declare i32 @_obstack_begin(%struct.obstack*, i32, i32, i8* (i64)*, void (i8*)*) |
| 294 | |
| 295 | declare void @free(i8*) |
| 296 | |
| 297 | declare void @clear_edges() |
| 298 | |
| 299 | declare void @remove_edge(%struct.edge_def*) |
| 300 | |
| 301 | declare %struct.edge_def* @redirect_edge_succ_nodup(%struct.edge_def*, %struct.basic_block_def*) |
| 302 | |
| 303 | declare void @redirect_edge_pred(%struct.edge_def*, %struct.basic_block_def*) |
| 304 | |
| 305 | define void @check_bb_profile(%struct.basic_block_def* %bb, %struct._IO_FILE* %file) { |
| 306 | entry: |
| 307 | br i1 false, label %cond_false759.preheader, label %cond_false149.preheader |
| 308 | |
| 309 | cond_false149.preheader: ; preds = %entry |
| 310 | ret void |
| 311 | |
| 312 | cond_false759.preheader: ; preds = %entry |
| 313 | br i1 false, label %cond_next873, label %cond_true794 |
| 314 | |
| 315 | bb644: ; preds = %cond_next873 |
| 316 | ret void |
| 317 | |
| 318 | cond_true794: ; preds = %cond_false759.preheader |
| 319 | ret void |
| 320 | |
| 321 | cond_next873: ; preds = %cond_false759.preheader |
| 322 | br i1 false, label %bb882, label %bb644 |
| 323 | |
| 324 | bb882: ; preds = %cond_next873 |
| 325 | br i1 false, label %cond_true893, label %cond_next901 |
| 326 | |
| 327 | cond_true893: ; preds = %bb882 |
| 328 | br label %cond_false1036 |
| 329 | |
| 330 | cond_next901: ; preds = %bb882 |
| 331 | ret void |
| 332 | |
| 333 | bb929: ; 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 | |
| 337 | cond_true974: ; preds = %bb929 |
| 338 | ret void |
| 339 | |
| 340 | cond_next979: ; preds = %bb929 |
| 341 | br label %cond_false1036 |
| 342 | |
| 343 | cond_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 | |
| 347 | cond_true1051: ; preds = %cond_false1036 |
| 348 | ret void |
| 349 | |
| 350 | cond_next1056: ; preds = %cond_false1036 |
| 351 | br i1 false, label %cond_next1150, label %cond_true1071 |
| 352 | |
| 353 | cond_true1071: ; preds = %cond_next1056 |
| 354 | ret void |
| 355 | |
| 356 | cond_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 | |
| 360 | bb1159: ; preds = %cond_next1150 |
| 361 | br i1 false, label %cond_true1169, label %UnifiedReturnBlock |
| 362 | |
| 363 | cond_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 | |
| 368 | UnifiedReturnBlock: ; preds = %bb1159 |
| 369 | ret void |
| 370 | } |
| 371 | |
| 372 | declare void @dump_flow_info(%struct._IO_FILE*) |
| 373 | |
| 374 | declare i32 @max_reg_num() |
| 375 | |
| 376 | declare void @rtl_check_failed_flag(i8*, %struct.rtx_def*, i8*, i32, i8*) |
| 377 | |
| 378 | declare i32 @reg_preferred_class(i32) |
| 379 | |
| 380 | declare i32 @reg_alternate_class(i32) |
| 381 | |
| 382 | declare i8 @maybe_hot_bb_p(%struct.basic_block_def*) zeroext |
| 383 | |
| 384 | declare i8 @probably_never_executed_bb_p(%struct.basic_block_def*) zeroext |
| 385 | |
| 386 | declare void @dump_regset(%struct.bitmap_head_def*, %struct._IO_FILE*) |
| 387 | |
| 388 | declare void @debug_flow_info() |
| 389 | |
| 390 | declare void @alloc_aux_for_edges(i32) |
| 391 | |
| 392 | declare void @clear_aux_for_edges() |
| 393 | |
| 394 | declare void @free_aux_for_edges() |
| 395 | |
| 396 | declare void @brief_dump_cfg(%struct._IO_FILE*) |
| 397 | |
| 398 | declare i32 @fputc(i32, i8*) |
| 399 | |
| 400 | declare void @update_bb_profile_for_threading(%struct.basic_block_def*, i32, i64, %struct.edge_def*) |