X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbespilldaemel.c;h=ef36c8f298b5eff9acd85f372fe7e433c6da054f;hb=6f068af98daa4725d60e5d23a8f98ec2841cfa44;hp=85f6f46d99a2f42577a9e6679ac910a13eddcb44;hpb=6c3146b96bc65d9de18f3f2b59faf33b8b9935d6;p=libfirm diff --git a/ir/be/bespilldaemel.c b/ir/be/bespilldaemel.c index 85f6f46d9..ef36c8f29 100644 --- a/ir/be/bespilldaemel.c +++ b/ir/be/bespilldaemel.c @@ -1,5 +1,5 @@ /* - * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. + * Copyright (C) 1995-2011 University of Karlsruhe. All right reserved. * * This file is part of libFirm. * @@ -57,7 +57,7 @@ DEBUG_ONLY(static firm_dbg_module_t *dbg = NULL;) static spill_env_t *spill_env; -static int n_regs; +static unsigned n_regs; static const arch_register_class_t *cls; static const be_lv_t *lv; static bitset_t *spilled_nodes; @@ -70,8 +70,8 @@ struct spill_candidate_t { static int compare_spill_candidates_desc(const void *d1, const void *d2) { - const spill_candidate_t *c1 = d1; - const spill_candidate_t *c2 = d2; + const spill_candidate_t *c1 = (const spill_candidate_t*)d1; + const spill_candidate_t *c2 = (const spill_candidate_t*)d2; return (int) (c1->costs - c2->costs); } @@ -150,7 +150,8 @@ static void do_spilling(ir_nodeset_t *live_nodes, ir_node *node) size_t free_regs_needed = 0; spill_candidate_t *candidates; ir_nodeset_iterator_t iter; - size_t i, arity; + int i, arity; + size_t c; int spills_needed; size_t cand_idx; ir_node *n; @@ -184,17 +185,17 @@ static void do_spilling(ir_nodeset_t *live_nodes, ir_node *node) candidates = ALLOCAN(spill_candidate_t, n_live_nodes); /* construct array with spill candidates and calculate their costs */ - i = 0; + c = 0; foreach_ir_nodeset(live_nodes, n, iter) { - spill_candidate_t *candidate = & candidates[i]; + spill_candidate_t *candidate = & candidates[c]; assert(!bitset_is_set(spilled_nodes, get_irn_idx(n))); candidate->node = n; candidate->costs = get_spill_costs(n); - ++i; + ++c; } - assert(i == n_live_nodes); + assert(c == n_live_nodes); /* sort spill candidates */ qsort(candidates, n_live_nodes, sizeof(candidates[0]), @@ -386,7 +387,7 @@ static void be_spill_daemel(ir_graph *irg, const arch_register_class_t *new_cls) be_delete_spill_env(spill_env); } -BE_REGISTER_MODULE_CONSTRUCTOR(be_init_daemelspill); +BE_REGISTER_MODULE_CONSTRUCTOR(be_init_daemelspill) void be_init_daemelspill(void) { static be_spiller_t daemel_spiller = {