be: Replace generate_emitter.pl by generate_emitter_new.pl.
[libfirm] / ir / common / firm.c
index a6bdfbf..df3ef9c 100644 (file)
@@ -54,6 +54,8 @@
 #include "debugger.h"
 #include "be_t.h"
 #include "irtools.h"
+#include "execfreq_t.h"
+#include "firmstat_t.h"
 
 /* returns the firm root */
 lc_opt_entry_t *firm_opt_get_root(void)
@@ -85,12 +87,12 @@ void ir_init(void)
        init_mode();
        /* initialize tarvals, and floating point arithmetic */
        init_tarval_2();
+       /* initialize node opcodes */
+       firm_init_op();
        /* init graph construction */
        firm_init_irgraph();
        /* kind of obstack initialization */
        firm_init_mangle();
-       /* initialize all op codes an irnode can consist of */
-       init_op();
        /* initialize reassociation */
        firm_init_reassociation();
        /* initialize function call optimization */
@@ -111,7 +113,9 @@ void ir_init(void)
        /* Init architecture dependent optimizations. */
        arch_dep_set_opts(arch_dep_none);
 
-       init_irnode();
+       init_execfreq();
+
+       init_stat();
 
 #ifdef DEBUG_libfirm
        /* integrated debugger extension */
@@ -124,15 +128,16 @@ void ir_finish(void)
 #ifdef DEBUG_libfirm
        firm_finish_debugger();
 #endif
-       free_ir_prog();
+       exit_execfreq();
+       firm_be_finish();
 
+       free_ir_prog();
+       firm_finish_op();
        finish_tarval();
        finish_mode();
        finish_tpop();
        firm_finish_mangle();
        finish_ident();
-
-       firm_be_finish();
 }
 
 unsigned ir_get_version_major(void)