projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added Makefile for make environment
[libfirm]
/
ir
/
be
/
bechordal_main.c
diff --git
a/ir/be/bechordal_main.c
b/ir/be/bechordal_main.c
index
b301eee
..
b374aff
100644
(file)
--- a/
ir/be/bechordal_main.c
+++ b/
ir/be/bechordal_main.c
@@
-49,9
+49,9
@@
#include "bespillilp.h"
#endif /* WITH_ILP */
#include "bespillilp.h"
#endif /* WITH_ILP */
+#include "becopystat.h"
#include "becopyopt.h"
#include "bessadestr.h"
#include "becopyopt.h"
#include "bessadestr.h"
-#include "becopystat.h"
void be_ra_chordal_check(be_chordal_env_t *chordal_env) {
void be_ra_chordal_check(be_chordal_env_t *chordal_env) {
@@
-240,11
+240,11
@@
static void dump(unsigned mask, ir_graph *irg,
if(cls) {
char buf[256];
snprintf(buf, sizeof(buf), "-%s%s", cls->name, suffix);
if(cls) {
char buf[256];
snprintf(buf, sizeof(buf), "-%s%s", cls->name, suffix);
-
dump_func(irg, buf
);
+
be_dump(irg, buf, dump_func
);
}
else
}
else
-
dump_func(irg, suffix
);
+
be_dump(irg, suffix, dump_func
);
}
}
}
}
@@
-260,9
+260,9
@@
static void be_ra_chordal_main(const be_irg_t *bi)
chordal_env.opts = &options;
chordal_env.irg = irg;
chordal_env.opts = &options;
chordal_env.irg = irg;
- chordal_env.dbg = firm_dbg_register("firm.be.chordal");
- chordal_env.birg = bi;
+ chordal_env.birg = bi;
chordal_env.dom_front = be_compute_dominance_frontiers(irg);
chordal_env.dom_front = be_compute_dominance_frontiers(irg);
+ FIRM_DBG_REGISTER(chordal_env.dbg, "firm.be.chordal");
obstack_init(&chordal_env.obst);
obstack_init(&chordal_env.obst);
@@
-292,9
+292,6
@@
static void be_ra_chordal_main(const be_irg_t *bi)
be_liveness(irg);
be_check_pressure(&chordal_env);
be_liveness(irg);
be_check_pressure(&chordal_env);
- be_liveness(irg);
- be_check_pressure(&chordal_env);
-
/* Color the graph. */
be_ra_chordal_color(&chordal_env);
dump(BE_CH_DUMP_CONSTR, irg, chordal_env.cls, "-color", dump_ir_block_graph_sched);
/* Color the graph. */
be_ra_chordal_color(&chordal_env);
dump(BE_CH_DUMP_CONSTR, irg, chordal_env.cls, "-color", dump_ir_block_graph_sched);
@@
-304,8
+301,17
@@
static void be_ra_chordal_main(const be_irg_t *bi)
be_ifg_check(chordal_env.ifg);
/* copy minimization */
be_ifg_check(chordal_env.ifg);
/* copy minimization */
- copystat_collect_cls(&chordal_env);
+#ifdef COPYOPT_STAT
co_compare_solvers(&chordal_env);
co_compare_solvers(&chordal_env);
+#else
+ {
+ copy_opt_t *co = new_copy_opt(&chordal_env, co_get_costs_loop_depth);
+ co_build_ou_structure(co);
+ co_solve_heuristic(co);
+ co_free_ou_structure(co);
+ free_copy_opt(co);
+ }
+#endif
dump(BE_CH_DUMP_COPYMIN, irg, chordal_env.cls, "-copymin", dump_ir_block_graph_sched);
be_ra_chordal_check(&chordal_env);
dump(BE_CH_DUMP_COPYMIN, irg, chordal_env.cls, "-copymin", dump_ir_block_graph_sched);
be_ra_chordal_check(&chordal_env);