jumps have a special irn flag now so beirgmod can identify them
[libfirm] / ir / be / becopyheur4.c
index 76a1930..4b903b2 100644 (file)
@@ -1381,7 +1381,7 @@ static void color_aff_chunk(co_mst_env_t *env, aff_chunk_t *c) {
 /**
  * Main driver for mst safe coalescing algorithm.
  */
-int co_solve_heuristic_mst(copy_opt_t *co) {
+static int co_solve_heuristic_mst(copy_opt_t *co) {
        unsigned     n_regs       = co->cls->n_regs;
        bitset_t     *ignore_regs = bitset_alloca(n_regs);
        unsigned     i, j, k;
@@ -1481,9 +1481,14 @@ void be_init_copyheur4(void) {
        lc_opt_entry_t *co_grp = lc_opt_get_grp(chordal_grp, "co");
        lc_opt_entry_t *heur4_grp = lc_opt_get_grp(co_grp, "heur4");
 
+       static co_algo_info copyheur = {
+               co_solve_heuristic_mst, 0
+       };
+
        lc_opt_add_table(heur4_grp, options);
+       be_register_copyopt("heur4", &copyheur);
+
        FIRM_DBG_REGISTER(dbg, "firm.be.co.heur4");
 }
 
-
 BE_REGISTER_MODULE_CONSTRUCTOR(be_init_copyheur4);