This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [commited] profile updating


> Jan Hubicka wrote:
> 
> >> Is it possible to add some verify_profile stuff which aborts if the
> >> profile info is incorrect? I think this would be the safest way.
> >
> > This is, very unfortunately ineed, impossible in general.
> > Basically in some optimizations you have no other choice but keep
> > profile inconsistent.
> 
> OK. What about something less ambitious - can we at least have a simple
> out-of-band value to which the profile info is reset when e.g. an edge is
> redirected, so that we can later detect if the developer at least cared of
> updating the field?

This is also quite dificult - in the wast majority cases the edge itself
beging redirected won't change any profile info.
It is the path of edges the edge is redirected over that is dificult to
figure out a low level in redirect_edge (this is why we need to rely on
caller to update it).  But I might try to experiment with some setting
on the target block of the edge being redirected, but we need to
preserve it's profile too as the profile updating code usually just
adjust it instead of recomputing from scratch.

Honza
> 
> Giovanni Bajo
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]