assert(is_usage);
}
}
- DBG((dbg, DBG_DECIDE, " demand = %d\n", demand));
+ //DBG((dbg, DBG_DECIDE, " demand = %d\n", demand));
/*
2. Make room for at least 'demand' slots
len = workset_get_length(ws);
max_allowed = env->n_regs - demand;
- DBG((dbg, DBG_DECIDE, " disposing %d values\n", ws->len - max_allowed));
-
/* Only make more free room if we do not have enough */
if (len > max_allowed) {
+ DBG((dbg, DBG_DECIDE, " disposing %d values\n", ws->len - max_allowed));
+
/* get current next-use distance */
for (i = 0; i < ws->len; ++i) {
unsigned dist = get_distance(env, env->instr, env->instr_nr, workset_get_val(ws, i), !is_usage);
if(!USES_IS_INFINITE(ws->vals[i].time)
&& !ws->vals[i].reloaded_value) {
- be_add_spill(env->senv, irn, env->instr);
+// be_add_spill(env->senv, irn, env->instr);
}
if (is_Phi(irn))
loc_t loc;
loc.time = USES_INFINITY;
loc.irn = node;
+ loc.reloaded_value = 0;
(void) block;
if (!arch_irn_consider_in_reg_alloc(env->arch, env->cls, node)) {
= be_get_end_of_block_insertion_point(pred);
DBG((dbg, DBG_SPILL, "Spill %+F before %+F\n", node,
insert_point));
- be_add_spill(env->senv, node, insert_point);
+// be_add_spill(env->senv, node, insert_point);
}
}