start register allocator again, fix typo
[libfirm] / ir / be / mips / bearch_mips.c
index e309730..f03afaa 100644 (file)
@@ -27,6 +27,7 @@
 #include "../be.h"
 #include "../beabi.h"
 #include "../bemachine.h"
+#include "../bemodule.h"
 
 #include "bearch_mips_t.h"
 
@@ -517,7 +518,7 @@ static void mips_emit_and_done(void *self) {
        free(cg);
 }
 
-static void *mips_cg_init(const be_irg_t *birg);
+static void *mips_cg_init(be_irg_t *birg);
 
 static const arch_code_generator_if_t mips_code_gen_if = {
        mips_cg_init,
@@ -534,7 +535,7 @@ static const arch_code_generator_if_t mips_code_gen_if = {
 /**
  * Initializes the code generator.
  */
-static void *mips_cg_init(const be_irg_t *birg) {
+static void *mips_cg_init(be_irg_t *birg) {
        mips_isa_t      *isa = (mips_isa_t *)birg->main_env->arch_env->isa;
        mips_code_gen_t *cg  = xmalloc(sizeof(*cg));
 
@@ -969,9 +970,10 @@ static const backend_params *mips_get_libfirm_params(void) {
 }
 
 #ifdef WITH_LIBCORE
-static void mips_register_options(lc_opt_entry_t *ent)
+void be_init_arch_mips(void)
 {
 }
+BE_REGISTER_MODULE_CONSTRUCTOR(be_init_arch_mips);
 #endif /* WITH_LIBCORE */
 
 const arch_isa_if_t mips_isa_if = {
@@ -989,7 +991,4 @@ const arch_isa_if_t mips_isa_if = {
        mips_get_libfirm_params,
        mips_get_allowed_execution_units,
        mips_get_machine,
-#ifdef WITH_LIBCORE
-       mips_register_options
-#endif
 };