projects
/
libfirm
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
added new nodes for intrinsic lowering
[libfirm]
/
ir
/
be
/
bemain.c
diff --git
a/ir/be/bemain.c
b/ir/be/bemain.c
index
8ed05fd
..
30a0cc4
100644
(file)
--- a/
ir/be/bemain.c
+++ b/
ir/be/bemain.c
@@
-186,8
+186,16
@@
int be_parse_arg(const char *arg) {
#endif /* WITH_LIBCORE */
}
#endif /* WITH_LIBCORE */
}
+/** The be parameters returned by default, all off. */
+const static backend_params be_params = {
+ NULL,
+ NULL,
+ 0,
+ NULL,
+};
-void be_init(void)
+/* Initialize the Firm backend. Must be run BEFORE init_firm()! */
+const backend_params *be_init(void)
{
be_opt_register();
{
be_opt_register();
@@
-197,6
+205,10
@@
void be_init(void)
be_copy_opt_init();
copystat_init();
phi_class_init();
be_copy_opt_init();
copystat_init();
phi_class_init();
+
+ if (isa_if->get_params)
+ return isa_if->get_params();
+ return &be_params;
}
static be_main_env_t *be_init_env(be_main_env_t *env, FILE *file_handle)
}
static be_main_env_t *be_init_env(be_main_env_t *env, FILE *file_handle)
@@
-364,7
+376,7
@@
static void be_main_loop(FILE *file_handle)
be_abi_fix_stack_bias(birg.abi);
arch_code_generator_done(birg.cg);
be_abi_fix_stack_bias(birg.abi);
arch_code_generator_done(birg.cg);
- dump(DUMP_FINAL, irg, "-end", dump_ir_block_graph_sched);
+ dump(DUMP_FINAL, irg, "-end", dump_ir_
ext
block_graph_sched);
be_abi_free(birg.abi);
// free_ir_graph(irg);
be_abi_free(birg.abi);
// free_ir_graph(irg);