ir_graph *prof_init_irg = be_profile_instrument(prof_filename);
initialize_birg(&birgs[num_birgs], prof_init_irg, &env);
num_birgs++;
- pset_insert_ptr(env.arch_env->constructor_entities, get_irg_entity(prof_init_irg));
+ set_method_img_section(get_irg_entity(prof_init_irg), section_constructors);
}
else {
be_profile_read(prof_filename);
);
BE_TIMER_PUSH(t_other); /* t_other */
- birg->execfreqs = compute_execfreq(irg, 10);
+ /**
+ * Create execution frequencies from profile data or estimate some
+ */
+ if(be_profile_has_data()) {
+ birg->execfreqs = be_create_execfreqs_from_profile(irg);
+ } else {
+ birg->execfreqs = compute_execfreq(irg, 10);
+ }
BE_TIMER_ONLY(num_nodes_b = get_num_reachable_nodes(irg));