- be_opt_register();
- firm_init_options(NULL, 0, NULL);
-
- firm_parameter_t params;
- memset(¶ms, 0, sizeof(params));
-
- params.size = sizeof(params);
- params.enable_statistics = 0;
- params.initialize_local_func = uninitialized_local_var;
- params.cc_mask = 0;
- params.builtin_dbg = NULL;
-
- /* initialize backend */
- be_params = be_init();
- be_set_debug_retrieve(retrieve_dbg);
- params.arch_op_settings = be_params->arch_op_settings;
- if_conv_info = be_params->if_conv_info;
-
- (void) if_conv_info; /* avoid unused warning */
-
- /* intialize firm itself */
- init_firm(¶ms);
- dbg_init(NULL, NULL, dbg_snprint);
-
- set_opt_constant_folding(1);
- set_opt_unreachable_code(1);
- set_opt_control_flow_straightening(1);
- set_opt_control_flow_weak_simplification(1);
- set_opt_control_flow_strong_simplification(1);
- set_opt_dyn_meth_dispatch(1);
- set_opt_normalize(1);
- set_opt_precise_exc_context(0);
- set_opt_strength_red(0);
- set_opt_fragile_ops(0);
- set_opt_optimize_class_casts(0);
- set_opt_suppress_downcast_optimization(0);
- set_opt_remove_confirm(1);
- set_opt_scalar_replacement(1);
- set_opt_ldst_only_null_ptr_exceptions(1);
- set_opt_alias_analysis(1);