Hi,

On Sun, 6 Nov 2011, Jeff Law wrote:

> > On Fri, 2011-11-04 at 12:25 -0600, Jeff Law wrote:
> >> The only way I can think of to have two pseudos assigned the same
> >> hard reg at the same point in the insn stream is if the two
> >> pseudos are known to have the same value.
> > 
> > Having the same value is the more common way two overlapping
> > pseudos don't conflict, but if one or both of the pseudos are
> > undefined (ie, no definition point), then they won't conflict
> > either.
> However, I'm pretty sure we do not take advantage of the fact that two
> pseudos with the same value with overlapping lifetimes do not conflict
> and thus can live in the same hard reg.  In fact, if you try to
> implement that optimization, you'll find that reload chokes in fun and
> unpleasant ways.  I actually tried this myself a while back ;-)

One source of same valued pseudos are copies, and copy coalescing we (of 
course) do implement.  Peter: it's only other non-trivial sources of 
same-valued-ness that we don't use in the allocator, so don't be too sad 
;-)


Ciao,
Michael.

Reply via email to