X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fbe%2Fbemain.c;h=b6a5320c1d3feb5918cb49ee9a658150aefb2a22;hb=16cd557c101a0e9283182877b6c2362d548d02a5;hp=a8692d4286bdc7928ca8db0810cd3a08bb05ec07;hpb=07d9b80184025b7568f711ed17eafc99301e4577;p=libfirm diff --git a/ir/be/bemain.c b/ir/be/bemain.c index a8692d428..b6a5320c1 100644 --- a/ir/be/bemain.c +++ b/ir/be/bemain.c @@ -14,6 +14,7 @@ #include "irprog.h" #include "irgraph.h" +#include "irdump.h" #include "be_t.h" #include "bera_t.h" @@ -21,11 +22,15 @@ #include "besched_t.h" #include "belistsched.h" #include "belive_t.h" -#include "bephicongr_t.h" #include "beutil.h" +#include "phiclass_t.h" #include "bechordal.h" +#include "bechordal.h" +#include "bephiopt.h" #include "phistat.h" +#define DUMP_LOCAL 1 + #define N_PHASES 256 typedef struct _be_graph_info_t { @@ -94,7 +99,8 @@ void be_init(void) be_liveness_init(); be_numbering_init(); be_ra_init(); - be_phi_congr_class_init(); + be_ra_chordal_init(); + be_phi_opt_init(); } extern void be_ra_chordal(ir_graph *irg); @@ -106,15 +112,18 @@ static void be_main_loop(void) for(i = 0, n = get_irp_n_irgs(); i < n; ++i) { ir_graph *irg = get_irp_irg(i); + localize_consts(irg); + if (DUMP_LOCAL) { + dump_consts_local(0); + dump_ir_block_graph(irg, "-local"); + } + be_numbering(irg); list_sched(irg, trivial_selector, NULL); be_liveness(irg); be_ra_chordal(irg); - be_phi_congr_classes(irg); - - - dump_allocated_irg(irg); - + //be_phi_opt(irg); + //be_phi_destruction(irg); be_ra_chordal_done(irg); be_numbering_done(irg); @@ -124,5 +133,4 @@ static void be_main_loop(void) void be_main(int argc, const char *argv[]) { be_main_loop(); - do_phi_statistics(); }