Ping: patch to remove the old RA

Jeff Law law@redhat.com
Fri Feb 6 22:00:00 GMT 2009


Vladimir Makarov wrote:
> I have some guesses after working a lot on IRA last few years.
>> Are we typically dealing with constraint mismatches within register 
>> classes?
>>
> It is not a rare event for some irregular file architectures like x86.
It seems to me we ought to be able to model this in the allocator -- 
effectively it's just adding a copy, isn't it?  Of course, if we really 
do instruction selection prior to regalloc, then we can insert the 
appropriate copies prior to allocation and avoid coalescing them away.
>> Is it due to operands living in memory and needing to be moved into 
>> registers?
>>
> That is the most frequent case especially for x86/x86_64.
I suspect if we try to handle these (and we probably should), we're 
going to end up iterating the allocator.


>> Is it secondary reloads because of out of range addresses?
>>
> It is a rare even for most architectures.  But there are a few nasty 
> architectures (as sh or mcore) with tiny displacements where it is 
> very important problem.
>> Secondary memory?
>>
>>
> I don't think it is a frequent event.
There's probably enough commonality in how these are use that we ought 
to be able to handle them reasonably well.  Some of the stranger 
secondary reload cases I'm obviously not too concerned about.


jeff



More information about the Gcc-patches mailing list