{
int i;
- set_optimize(1);
- set_opt_constant_folding(firm_opt.const_folding);
- set_opt_algebraic_simplification(firm_opt.const_folding);
- set_opt_cse(firm_opt.cse);
- set_opt_global_cse(0);
-
+ /* initialize implicit opts, just to be sure because really the frontend
+ * should have called it already before starting graph construction */
+ init_implicit_optimizations();
init_statistics();
do_node_verification((firm_verification_t) firm_opt.verify);
firm_opt.alias_analysis = false;
firm_opt.strict_alias = false;
firm_opt.no_alias = false;
+ firm_opt.const_folding = false;
FOR_EACH_OPT(config) {
if (config->flags & OPT_FLAG_ESSENTIAL) {
void firm_option_help(print_option_help_func print_option_help)
{
- print_option_help(firm_options[0].option, firm_options[0].description);
-
FOR_EACH_OPT(config) {
char buf[1024];
char buf2[1024];
break;
}
}
+
+void init_implicit_optimizations(void)
+{
+ set_optimize(1);
+ set_opt_constant_folding(firm_opt.const_folding);
+ set_opt_algebraic_simplification(firm_opt.const_folding);
+ set_opt_cse(firm_opt.cse);
+ set_opt_global_cse(0);
+}