summaryrefslogtreecommitdiffhomepage
path: root/ir/be/bespilldaemel.c
diff options
context:
space:
mode:
authorMatthias Braun <matze@braunis.de>2015-06-19 07:15:54 +0200
committerMatthias Braun <matze@braunis.de>2015-06-19 07:17:53 +0200
commitf1d0154c8a329e88394f24c39093f6566714d493 (patch)
tree50ba2c4f3a8adf629d8f0f6cde17d37c23915f99 /ir/be/bespilldaemel.c
parent89a5cac65f5e45b405217c7dc167eb2b27ed2206 (diff)
break arch_isa_if_t furhter apart by moving spilling related callbacks into an own struct
Diffstat (limited to 'ir/be/bespilldaemel.c')
-rw-r--r--ir/be/bespilldaemel.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/ir/be/bespilldaemel.c b/ir/be/bespilldaemel.c
index ac0f8bf..b3db80d 100644
--- a/ir/be/bespilldaemel.c
+++ b/ir/be/bespilldaemel.c
@@ -306,13 +306,14 @@ static void spill_block(ir_node *block, void *data)
ir_nodeset_destroy(&live_nodes);
}
-static void be_spill_daemel(ir_graph *irg, const arch_register_class_t *new_cls)
+static void be_spill_daemel(ir_graph *irg, const arch_register_class_t *new_cls,
+ const regalloc_if_t *regif)
{
n_regs = be_get_n_allocatable_regs(irg, new_cls);
be_assure_live_sets(irg);
- spill_env = be_new_spill_env(irg);
+ spill_env = be_new_spill_env(irg, regif);
cls = new_cls;
lv = be_get_irg_liveness(irg);
spilled_nodes = bitset_malloc(get_irg_last_idx(irg));
@@ -330,6 +331,6 @@ static void be_spill_daemel(ir_graph *irg, const arch_register_class_t *new_cls)
BE_REGISTER_MODULE_CONSTRUCTOR(be_init_daemelspill)
void be_init_daemelspill(void)
{
- be_register_spiller("daemel", &be_spill_daemel);
+ be_register_spiller("daemel", be_spill_daemel);
FIRM_DBG_REGISTER(dbg, "firm.be.spilldaemel");
}