IRA has been merged into trunk

Vladimir Makarov vmakarov@redhat.com
Thu Aug 28 23:28:00 GMT 2008


Joseph S. Myers wrote:
> On Tue, 26 Aug 2008, Vladimir Makarov wrote:
>
>>  Recently I got an approval of the last part of IRA -- reload
>> changes.  Therefore I've just merged IRA into mainline.
>
> Thus, we start the 30-day period before removal of the old allocator, as 
> per <http://gcc.gnu.org/ml/gcc-patches/2008-04/msg01812.html>, with the 
> removal due on or shortly after 25 September.  Will you volunteer to do 
> the removal of the old allocator, including any functions in other files 
> that are no longer needed once it is removed?
>
Yes, I could do that and probably it is more easier to do it for me than 
for anybody else.
> We need to warn maintainers of the unconverted targets about this.  Could 
> you
>
> (a) provide any pointers to guidance for target maintainers converting 
> their targets, to go in this warning;
>
The conversion is easy they should only define IRA_COVER_CLASSES in the 
target machine-dependent file (.h file).

I'd recommend to

o read description of macro IRA_COVER_CLASSES in GCC documentation first
o look at IRA_COVER_CLASSES definitions in the targets with already 
ported IRA:
   x86/x86_64, ppc, itanium, arm, sparc, s390, sh, bfin, spu, avr, 
alpha, mn10300.

In worst case (I think the worst case will be MIPS targets), there may 
be several variants of the macro definition.  In such cases it is hard 
to say what variant will be best with the performance point of view 
without some analysis.  Unfortunately, choice of the variants can not be 
algorithmized, otherwise I'd have rid off the macro.  If target 
maintainers have any questions about IRA_COVER_CLASSES definition, I am 
ready to help them.  I am ready to look at all their target macro 
definitions.
> (b) confirm that the test for whether a target is converted is whether it 
> defines IRA_COVER_CLASSES?
>
Yes, that is right defining IRA_COVER_CLASSES in the machine-dependent 
file of the target is enough to switch on IRA for the target and even 
make IRA as a default RA.  The old register allocator can be still used 
by option -fno-ira.

> With that information, I can send an announcement to the gcc list and all 
> the listed maintainers of unconverted targets.
>
> Please also write some release notes for gcc-4.4/changes.html about this 
> new feature (figures for improvements on benchmarks might be useful), and 
> probably an announcement for the main htdocs/index.html page as well.
>
Ok, I'll do it tomorrow.



More information about the Gcc-patches mailing list