birthpoints in rtl.

Paolo Bonzini bonzini@gnu.org
Thu Feb 28 13:32:00 GMT 2008


> Thanks for the quick response.  As it turns out, the libcall issue will
> soon be gone, as bonzini will be deleting them.  We have finally
> overcome that issue. 

Not really.  There seems always to be something that prevents them from 
being deleted, and I have no time to spend on GCC at work right now.  I 
believe Steven Bosscher has more detail on that than I do.

But I don't think that they influence birthpoints, which seems to be 
just a way to factor use-def/def-use chains (yes, analogy with the name 
of FUD chains is not by chance) without introducing phi functions.  phi 
operands would be a birthpoint's reaching defs, in practice, right?

> I believe that what i am proposing is actually currently called (or at
> least related to) factored use def chains,

FUD chains are basically SSA without subscripts -- and hence, without 
overlapping live ranges.

>> Ian is right, subregs were a problem (and strict_low_part).  I don't
>> recall offhand if it was "normal" subregs or paradoxicals (or both)
>> that caused pain.

I doubt paradoxical subregs cause any pain.

>> I haven't looked at the PR in question, but you could probably punt
>> SUBREGs and get the benefits you want for real code on most ports.
>> Yes, someone can (and probably will) contrive an example which does
>> the same thing as your problem PR, but which is littered with SUBREGs
>> in all the "right" places.  But the question I think we have to ask at
>> that point is whether or not such code is something we absolutely have
>> to worry about from a compile-time or optimization standpoint.

Agreed.

Paolo



More information about the Gcc mailing list