made code C89 compliant (changed unnamed union in attributes)
[libfirm] / ir / be / beirgmod.c
index 09142d5..77ca783 100644 (file)
@@ -36,7 +36,7 @@
 
 #include "beirgmod.h"
 
-#define DBG_MODULE firm_dbg_register("firm.be.irgmod")
+#define DBG_MODULE "firm.be.irgmod"
 #define DBG_LEVEL SET_LEVEL_0
 
 /*
@@ -139,7 +139,7 @@ static void determine_phi_blocks(pset *copies, pset* copy_blocks, pset *phi_bloc
 {
        ir_node *bl;
        pdeq *worklist = new_pdeq();
-       firm_dbg_module_t *dbg = DBG_MODULE;
+       FIRM_DBG_REGISTER(firm_dbg_module_t *dbg, DBG_MODULE);
 
        /*
        * Fill the worklist queue and the rest of the orig blocks array.
@@ -217,7 +217,7 @@ static ir_node *search_def(ir_node *usage, int pos, pset *copies, pset *copy_blo
 {
        ir_node *curr_bl;
        ir_node *start_irn;
-       firm_dbg_module_t *dbg = DBG_MODULE;
+       FIRM_DBG_REGISTER(firm_dbg_module_t *dbg, DBG_MODULE);
 
        curr_bl = get_nodes_block(usage);
 
@@ -264,7 +264,7 @@ static ir_node *search_def(ir_node *usage, int pos, pset *copies, pset *copy_blo
                                ir_node **ins = xmalloc(n_preds * sizeof(ins[0]));
 
                                for(i = 0; i < n_preds; ++i)
-                                       ins[i] = new_r_Unknown(irg, mode);
+                                       ins[i] = new_r_Bad(irg);
 
                                phi = new_r_Phi(irg, curr_bl, n_preds, ins, mode);
                                DBG((dbg, LEVEL_2, "\tcreating phi %+F in %+F\n", phi, curr_bl));
@@ -297,8 +297,8 @@ static ir_node *search_def(ir_node *usage, int pos, pset *copies, pset *copy_blo
 
 static void fix_usages(pset *copies, pset *copy_blocks, pset *phi_blocks, pset *phis, pset *ignore_uses)
 {
-       firm_dbg_module_t *dbg = DBG_MODULE;
-       int n_outs             = 0;
+       int n_outs = 0;
+       FIRM_DBG_REGISTER(firm_dbg_module_t *dbg, DBG_MODULE);
 
        struct obstack obst;
        ir_node *irn;
@@ -413,7 +413,7 @@ void be_ssa_constr_set_phis_ignore(dom_front_info_t *df, pset *nodes, pset *phis
        pset *phi_blocks       = pset_new_ptr(n);
        int save_optimize      = get_optimize();
        int save_normalize     = get_opt_normalize();
-       firm_dbg_module_t *dbg = DBG_MODULE;
+       FIRM_DBG_REGISTER(firm_dbg_module_t *dbg, DBG_MODULE);
 
        ir_node *irn;
 
@@ -486,7 +486,7 @@ ir_node *insert_Perm_after(const arch_env_t *arch_env,
        ir_node *bl                 = is_Block(pos) ? pos : get_nodes_block(pos);
        ir_graph *irg               = get_irn_irg(bl);
        pset *live                  = pset_new_ptr_default();
-       firm_dbg_module_t *dbg      = firm_dbg_register("be.node");
+       FIRM_DBG_REGISTER(firm_dbg_module_t *dbg, "be.node");
 
        ir_node *curr, *irn, *perm, **nodes;
        int i, n;
@@ -497,8 +497,10 @@ ir_node *insert_Perm_after(const arch_env_t *arch_env,
 
        n = pset_count(live);
 
-       if(n == 0)
+       if(n == 0) {
+               del_pset(live);
                return NULL;
+       }
 
        nodes = xmalloc(n * sizeof(nodes[0]));
 
@@ -507,6 +509,7 @@ ir_node *insert_Perm_after(const arch_env_t *arch_env,
                DBG((dbg, LEVEL_1, "\t%+F\n", irn));
                nodes[i] = irn;
        }
+       del_pset(live);
 
        perm = be_new_Perm(cls, irg, bl, n, nodes);
        sched_add_after(pos, perm);