X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbemodule.c;h=c8c2116a2758e96ec9eedc29fdc2a904ce83c081;hb=eba5516120eb38bcae5464e628aa0d2cb8708866;hp=ddc39c01ed8921e96cbcdcd13ff617324a03be85;hpb=6981dd3274e6753e50f66c8cbe17b37bd41708e5;p=libfirm diff --git a/ir/be/bemodule.c b/ir/be/bemodule.c index ddc39c01e..c8c2116a2 100644 --- a/ir/be/bemodule.c +++ b/ir/be/bemodule.c @@ -1,13 +1,32 @@ /* - * Author: Matthias Braun - * Date: 29.09.2005 - * Copyright: (c) Universitaet Karlsruhe - * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE. - * CVS-Id: $Id$ + * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. + * + * This file is part of libFirm. + * + * This file may be distributed and/or modified under the terms of the + * GNU General Public License version 2 as published by the Free Software + * Foundation and appearing in the file LICENSE.GPL included in the + * packaging of this file. + * + * Licensees holding valid libFirm Professional Edition licenses may use + * this file in accordance with the libFirm Commercial License. + * Agreement provided with the Software. + * + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. */ -#ifdef HAVE_CONFIG_H -#include "config.h" -#endif /* HAVE_CONFIG_H */ + +/** + * @file + * @brief Backend module interface. + * @author Matthias Braun + * @date 29.09.2005 + * @version $Id$ + */ +#include + +#include "firm_config.h" #include @@ -17,31 +36,49 @@ 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_chordal(void); +void be_init_chordal_main(void); void be_init_copycoal(void); void be_init_copyheur2(void); -void be_init_raextern(void); +void be_init_copyheur3(void); +void be_init_copyheur4(void); +void be_init_copyheur5(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_sta(void); +void be_init_arch_TEMPLATE(void); void be_init_ilpsched(void); void be_init_copyilp(void); void be_init_javacoal(void); +void be_init_peephole(void); void be_init_ra(void); void be_init_spillbelady(void); -void be_init_spillmorgan(void); -void be_init_spillremat(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_ifg(void); +void be_init_irgmod(void); +void be_init_loopana(void); +void be_init_spillslots(void); +void be_init_live(void); +void be_init_state(void); +void be_init_pbqp(void); void be_quit_copystat(void); +void be_quit_pbqp(void); /** - * Driver for module intialization. + * Driver for module initialization. * Call your module initialization function here. */ void be_init_modules(void) @@ -52,44 +89,67 @@ void be_init_modules(void) return; run_once = 1; + be_init_irgmod(); + be_init_loopana(); + be_init_live(); + be_init_spillslots(); be_init_sched(); be_init_blocksched(); be_init_spill(); + be_init_spilloptions(); + be_init_dbgout(); be_init_listsched(); be_init_schedrss(); + be_init_chordal_main(); be_init_chordal(); be_init_copycoal(); be_init_copyheur2(); - be_init_raextern(); + be_init_copyheur4(); +// be_init_copyheur5(); be_init_copystat(); + be_init_peephole(); be_init_ra(); be_init_spillbelady(); - be_init_spillmorgan(); + be_init_spillbelady2(); + be_init_spillbelady3(); +// be_init_spilllinearscan(); + be_init_daemelspill(); + be_init_ssaconstr(); + 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_TEMPLATE(); #ifdef WITH_ILP be_init_ilpsched(); be_init_copyilp(); - be_init_spillremat(); #endif /* WITH_ILP */ #ifdef WITH_JVM + be_init_copyheur3(); be_init_javacoal(); #endif /* WITH_JVM */ #if PLUGIN_IR_BE_STA be_init_arch_sta(); #endif /* PLUGIN_IR_BE_STA */ + +#ifdef FIRM_GRGEN_BE + be_init_pbqp(); +#endif } void be_quit_modules(void) { be_quit_copystat(); +#ifdef FIRM_GRGEN_BE + be_quit_pbqp(); +#endif } //--------------------------------------------------------------------------- @@ -111,6 +171,8 @@ static int set_opt_module(const char *name, lc_opt_type_t type, void *data, va_list args; const char *opt; const be_module_list_entry_t *module; + (void) type; + (void) name; va_start(args, length); opt = va_arg(args, const char*); @@ -135,6 +197,9 @@ int dump_opt_module(char *buf, size_t buflen, const char *name, { module_opt_data_t *moddata = data; const be_module_list_entry_t *module; + (void) name; + (void) type; + (void) length; for (module = *(moddata->list_head); module != NULL; module = module->next) { if (module->data == *(moddata->var)) { @@ -156,6 +221,9 @@ int dump_opt_module_vals(char *buf, size_t buflen, const char *name, module_opt_data_t *moddata = data; char *p = buf; const be_module_list_entry_t *module; + (void) name; + (void) type; + (void) len; for (module = *(moddata->list_head); module != NULL; module = module->next) { size_t len = strlen(module->name);