This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Value profile based optimizations, part 1
Hello,
> > + safe_insert_insn_on_edge (sequence, e);
>
> There will deifnitly be plaftorms not being able to save the flags
> registers and so on. Perhaps safe_insert_insn_on_edge should return
> false in such case and we should simply refuse to profile that value.
> (this is probably saner behaviour than raw abort even when abort will
> probably force us to add neccesary patterns). But this can be done later.
it is already done this way.
> > + if (flag_profile_values)
> > + {
> > + life_analysis (get_insns (), NULL, PROP_DEATH_NOTES);
> > + find_values_to_profile (&n_values, &values);
> > + allocate_reg_info (max_reg_num (), FALSE, FALSE);
>
> Please switch the current profiling code to safe insertion too once the
> patch is approved. That would fix s390 misscompilation.
OK, here it will be more tricky. In the above case it did not matter
when the profiling code was not inserted; here we will have to cancel
profiling of whole functions.
Zdenek