X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbemodule.c;h=deba9245db4c7817fa05f270dd9448dd562686f9;hb=3e2a1de2fc4b08ebd26778c1eac1a8bd9751d90f;hp=619e8633960be04c0606a5d92bb950c2d0585240;hpb=d0b3166918a09be4d589cdaaa49f5d2a0a360816;p=libfirm diff --git a/ir/be/bemodule.c b/ir/be/bemodule.c index 619e86339..deba9245d 100644 --- a/ir/be/bemodule.c +++ b/ir/be/bemodule.c @@ -24,15 +24,15 @@ * @date 29.09.2005 * @version $Id$ */ -#ifndef HAVE_CONFIG_H #include "config.h" -#endif #include +#include #include "bemodule_t.h" #include "xmalloc.h" +void be_init_abi(void); void be_init_sched(void); void be_init_blocksched(void); void be_init_spill(void); @@ -40,11 +40,16 @@ void be_init_spilloptions(void); void be_init_listsched(void); void be_init_schedrss(void); void be_init_chordal(void); +void be_init_pbqp_coloring(void); void be_init_chordal_main(void); -void be_init_copycoal(void); +void be_init_chordal_common(void); +void be_init_copyopt(void); +void be_init_copyheur(void); void be_init_copyheur2(void); void be_init_copyheur4(void); -void be_init_copyheur5(void); +void be_init_copyilp2(void); +void be_init_copypbqp(void); +void be_init_copynone(void); void be_init_copystat(void); void be_init_daemelspill(void); void be_init_dbgout(void); @@ -52,6 +57,7 @@ void be_init_arch_ia32(void); void be_init_arch_ppc32(void); void be_init_arch_mips(void); void be_init_arch_arm(void); +void be_init_arch_sparc(void); void be_init_arch_sta(void); void be_init_arch_TEMPLATE(void); void be_init_ilpsched(void); @@ -61,9 +67,9 @@ void be_init_ra(void); void be_init_spillbelady(void); void be_init_spillbelady2(void); void be_init_spillbelady3(void); -//void be_init_spilllinearscan(void); void be_init_ssaconstr(void); void be_init_stabs(void); +void be_init_pref_alloc(void); void be_init_ifg(void); void be_init_irgmod(void); void be_init_loopana(void); @@ -81,12 +87,13 @@ void be_quit_pbqp(void); */ void be_init_modules(void) { - static int run_once = 0; + static bool run_once = false; if (run_once) return; - run_once = 1; + run_once = true; + be_init_abi(); be_init_irgmod(); be_init_loopana(); be_init_live(); @@ -99,20 +106,29 @@ void be_init_modules(void) be_init_listsched(); be_init_schedrss(); be_init_chordal_main(); + be_init_chordal_common(); be_init_chordal(); - be_init_copycoal(); - be_init_copyheur2(); + be_init_copyopt(); be_init_copyheur4(); -// be_init_copyheur5(); + be_init_copyheur(); + be_init_copyheur2(); +#ifdef WITH_ILP + be_init_copyilp2(); +#endif +#ifdef FIRM_KAPS + be_init_pbqp_coloring(); + be_init_copypbqp(); +#endif + be_init_copynone(); be_init_copystat(); be_init_peephole(); be_init_ra(); be_init_spillbelady(); be_init_spillbelady2(); be_init_spillbelady3(); -// be_init_spilllinearscan(); be_init_daemelspill(); be_init_ssaconstr(); + be_init_pref_alloc(); be_init_state(); be_init_ifg(); be_init_stabs(); @@ -121,6 +137,7 @@ void be_init_modules(void) be_init_arch_ppc32(); be_init_arch_mips(); be_init_arch_arm(); + be_init_arch_sparc(); be_init_arch_TEMPLATE(); #ifdef WITH_ILP @@ -148,7 +165,7 @@ void be_quit_modules(void) //--------------------------------------------------------------------------- typedef struct module_opt_data_t { - const void **var; + void **var; be_module_list_entry_t * const *list_head; } module_opt_data_t; @@ -241,7 +258,7 @@ int dump_opt_module_vals(char *buf, size_t buflen, const char *name, * Add a new module to list. */ void be_add_module_to_list(be_module_list_entry_t **list_head, const char *name, - const void *module) + void *module) { be_module_list_entry_t *entry = XMALLOC(be_module_list_entry_t); entry->name = name;