X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbemodule.c;h=24958988431efb60e9fcdd192aa5100b5bb27c2b;hb=2232b14b4acf810ae96a69d1d2a33cf150b695d9;hp=4a035689619e244167ca2cd43058bdb02bd91b6a;hpb=75b78dc47d9f1310e0f07bc306b314e89bc5c50c;p=libfirm diff --git a/ir/be/bemodule.c b/ir/be/bemodule.c index 4a0356896..249589884 100644 --- a/ir/be/bemodule.c +++ b/ir/be/bemodule.c @@ -27,44 +27,48 @@ #include "config.h" #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); void be_init_spilloptions(void); void be_init_listsched(void); -void be_init_schedrss(void); +void be_init_sched_rand(void); +void be_init_sched_normal(void); +void be_init_sched_regpress(void); +void be_init_sched_trace(void); +void be_init_sched_trivial(void); void be_init_chordal(void); +void be_init_pbqp_coloring(void); void be_init_chordal_main(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_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); 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_amd64(void); void be_init_arch_sta(void); +void be_init_arch_sparc(void); void be_init_arch_TEMPLATE(void); -void be_init_ilpsched(void); void be_init_copyilp(void); void be_init_peephole(void); void be_init_ra(void); void be_init_spillbelady(void); -void be_init_spillbelady2(void); -void be_init_spillbelady3(void); void be_init_ssaconstr(void); void be_init_stabs(void); -void be_init_straight_alloc(void); -void be_init_ifg(void); +void be_init_pref_alloc(void); void be_init_irgmod(void); void be_init_loopana(void); void be_init_spillslots(void); @@ -81,12 +85,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(); @@ -96,44 +101,41 @@ void be_init_modules(void) be_init_spill(); be_init_spilloptions(); be_init_dbgout(); + be_init_listsched(); - be_init_schedrss(); + be_init_sched_normal(); + be_init_sched_trace(); + be_init_sched_regpress(); + be_init_sched_rand(); + be_init_sched_trivial(); + be_init_chordal_main(); + be_init_chordal_common(); be_init_chordal(); be_init_copyopt(); be_init_copyheur4(); be_init_copyheur(); be_init_copyheur2(); -#ifdef WITH_ILP be_init_copyilp2(); -#endif -#ifdef FIRM_KAPS - be_init_copypbqp(); -#endif + be_init_pbqp_coloring(); be_init_copynone(); be_init_copystat(); be_init_peephole(); be_init_ra(); be_init_spillbelady(); - be_init_spillbelady2(); - be_init_spillbelady3(); be_init_daemelspill(); be_init_ssaconstr(); - be_init_straight_alloc(); + be_init_pref_alloc(); be_init_state(); - be_init_ifg(); be_init_stabs(); be_init_arch_ia32(); - be_init_arch_ppc32(); - be_init_arch_mips(); be_init_arch_arm(); + be_init_arch_sparc(); + be_init_arch_amd64(); be_init_arch_TEMPLATE(); -#ifdef WITH_ILP - be_init_ilpsched(); be_init_copyilp(); -#endif /* WITH_ILP */ #if PLUGIN_IR_BE_STA be_init_arch_sta(); @@ -166,7 +168,7 @@ typedef struct module_opt_data_t { static int set_opt_module(const char *name, lc_opt_type_t type, void *data, size_t length, ...) { - module_opt_data_t *moddata = data; + module_opt_data_t *moddata = (module_opt_data_t*)data; int res = 0; va_list args; const char *opt; @@ -192,10 +194,10 @@ static int set_opt_module(const char *name, lc_opt_type_t type, void *data, /** * Dump the names of all registered module options. */ -int dump_opt_module(char *buf, size_t buflen, const char *name, - lc_opt_type_t type, void *data, size_t length) +static int dump_opt_module(char *buf, size_t buflen, const char *name, + lc_opt_type_t type, void *data, size_t length) { - module_opt_data_t *moddata = data; + module_opt_data_t *moddata = (module_opt_data_t*)data; const be_module_list_entry_t *module; (void) name; (void) type; @@ -215,10 +217,10 @@ int dump_opt_module(char *buf, size_t buflen, const char *name, /** * Dump the values of all register module options. */ -int dump_opt_module_vals(char *buf, size_t buflen, const char *name, - lc_opt_type_t type, void *data, size_t len) +static int dump_opt_module_vals(char *buf, size_t buflen, const char *name, + lc_opt_type_t type, void *data, size_t len) { - module_opt_data_t *moddata = data; + module_opt_data_t *moddata = (module_opt_data_t*)data; char *p = buf; const be_module_list_entry_t *module; (void) name; @@ -226,7 +228,7 @@ int dump_opt_module_vals(char *buf, size_t buflen, const char *name, (void) len; for (module = *(moddata->list_head); module != NULL; module = module->next) { - size_t len = strlen(module->name); + size_t name_len = strlen(module->name); if (module != *(moddata->list_head)) { p = strncat(p, ", ", buflen - 1); @@ -235,10 +237,10 @@ int dump_opt_module_vals(char *buf, size_t buflen, const char *name, p = strncat(p, module->name, buflen - 1); - if (len >= buflen) + if (name_len >= buflen) break; - buflen -= len; + buflen -= name_len; } return strlen(buf);