memset(&edge, 0, sizeof(edge));
- entry = obstack_alloc(env->obst, sizeof(entry[0]));
- memset(entry, 0, sizeof(*entry));
+ entry = OALLOCZ(env->obst, blocksched_entry_t);
entry->block = block;
set_irn_link(block, entry);
} else if (arity == 1) {
ir_node *pred_block = get_Block_cfgpred_block(block, 0);
ir_loop *pred_loop = get_irn_loop(pred_block);
- float freq = get_block_execfreq(env->execfreqs, block);
+ float freq = (float)get_block_execfreq(env->execfreqs, block);
/* is it an edge leaving a loop */
if (get_loop_depth(pred_loop) > get_loop_depth(loop)) {
- float pred_freq = get_block_execfreq(env->execfreqs, pred_block);
+ float pred_freq = (float)get_block_execfreq(env->execfreqs, pred_block);
edge.outedge_penalty_freq = -(pred_freq - freq);
}
coalesce_blocks(&env);
start_entry = finish_block_schedule(&env);
- block_list = create_blocksched_array(&env, start_entry, env.blockcount, get_irg_obstack(irg));
+ block_list = create_blocksched_array(&env, start_entry, env.blockcount,
+ be_get_birg_obst(irg));
DEL_ARR_F(env.edges);
obstack_free(&obst, NULL);
snprintf(name, sizeof(name), "block_out_constr_%ld", get_irn_node_nr(block));
out_count = get_irn_n_edges_kind(block, EDGE_KIND_BLOCK);
- entry = obstack_alloc(env->env.obst, sizeof(entry[0]));
+ entry = OALLOC(env->env.obst, blocksched_ilp_entry_t);
entry->block = block;
entry->next = NULL;
entry->prev = NULL;
coalesce_blocks_ilp(&env);
start_entry = finish_block_schedule(&env.env);
- block_list = create_blocksched_array(&env.env, start_entry, env.env.blockcount, get_irg_obstack(irg));
+ block_list = create_blocksched_array(&env.env, start_entry,
+ env.env.blockcount,
+ be_get_birg_obst(irg));
DEL_ARR_F(env.ilpedges);
free_lpp(env.lpp);