give Bad nodes a mode
[libfirm] / ir / be / bespilldaemel.c
index 85f6f46..ef36c8f 100644 (file)
@@ -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 = {