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.