fixed DEL_ARR_F
[libfirm] / ir / be / bespillbelady.c
index dcc5868..7f6248b 100644 (file)
@@ -700,6 +700,10 @@ void be_spill_belady_spill_env(be_irg_t *birg, const arch_register_class_t *cls,
        //firm_dbg_set_mask(dbg, DBG_SPILL);
 
        be_assure_liveness(birg);
+       /* construct control flow loop tree */
+       if(! (get_irg_loopinfo_state(irg) & loopinfo_cf_consistent)) {
+               construct_cf_backedges(irg);
+       }
 
        /* init belady env */
        obstack_init(&env.ob);
@@ -733,15 +737,10 @@ void be_spill_belady_spill_env(be_irg_t *birg, const arch_register_class_t *cls,
        obstack_free(&env.ob, NULL);
 }
 
-static void be_spill_belady_oldinterface(const be_chordal_env_t *chordal_env)
-{
-       be_spill_belady(chordal_env->birg, chordal_env->cls);
-}
-
 void be_init_spillbelady(void)
 {
        static be_spiller_t belady_spiller = {
-               be_spill_belady_oldinterface
+               be_spill_belady
        };
 
        be_register_spiller("belady", &belady_spiller);