typo fixed
[libfirm] / ir / ir / irgraph.c
index b645db8..f845476 100644 (file)
@@ -529,6 +529,8 @@ ir_graph *create_irg_copy(ir_graph *irg) {
 void free_ir_graph(ir_graph *irg) {
        assert(is_ir_graph(irg));
 
+       edges_deactivate(irg);
+
        hook_free_graph(irg);
        if (irg->outs_state != outs_none)
                free_irg_outs(irg);
@@ -1084,7 +1086,21 @@ void clear_using_irn_link(ir_graph *irg) {
 int using_irn_link(const ir_graph *irg) {
        return irg->using_irn_link;
 }
-#endif
+
+void set_using_block_mark(ir_graph *irg) {
+       assert(irg->using_block_mark == 0);
+       irg->using_block_mark = 1;
+}
+
+void clear_using_block_mark(ir_graph *irg) {
+       assert(irg->using_block_mark == 1);
+       irg->using_block_mark = 0;
+}
+
+int using_block_mark(const ir_graph *irg) {
+       return irg->using_block_mark;
+}
+#endif /* NDEBUG */
 
 /* Returns a estimated node count of the irg. */
 unsigned (get_irg_estimated_node_cnt)(const ir_graph *irg) {