rename type entity into ir_entity
[libfirm] / ir / ana / phiclass.c
index 2ea0c16..af8284e 100644 (file)
@@ -2,8 +2,13 @@
  * @author Daniel Grund
  * @date 09.08.2005
  */
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
 
-#include <stdlib.h>
+#ifdef HAVE_STDLIB_H
+# include <stdlib.h>
+#endif
 
 #include "debug.h"
 #include "irgwalk.h"
@@ -11,8 +16,7 @@
 #include "iredges_t.h"
 #include "phiclass_t.h"
 
-#define DEBUG_LVL SET_LEVEL_0
-static firm_dbg_module_t *dbg = NULL;
+DEBUG_ONLY(static firm_dbg_module_t *dbg = NULL;)
 
 size_t phi_irn_data_offset = 0;
 
@@ -67,8 +71,10 @@ static void phi_class_construction_walker(ir_node *node, void *env) {
 static void phi_class_destruction_walker(ir_node *node, void *env) {
        pset *clss = _get_phi_class(node);
        if (clss) {
-               //TODOdel_pset(clss);
-               _set_phi_class(node, NULL);
+               ir_node *n;
+               for(n = pset_first(clss); n; n = pset_next(clss))
+                       _set_phi_class(n, NULL);
+               del_pset(clss);
        }
 }
 
@@ -106,7 +112,6 @@ pset *get_phi_class(const ir_node *irn) {
 }
 
 void phi_class_init(void) {
-       dbg = firm_dbg_register("ir.ana.phiclass");
-       firm_dbg_set_mask(dbg, DEBUG_LVL);
+       FIRM_DBG_REGISTER(dbg, "ir.ana.phiclass");
        phi_irn_data_offset = register_additional_node_data(sizeof(phi_info_t));
 }