[aarch64-port-dev ] RFR: Add support for G1GC

Andrew Haley aph at redhat.com
Fri Mar 21 15:44:25 UTC 2014


On 03/21/2014 01:59 PM, Edward Nevill wrote:
>> What is the commented-out code for?  Why is this particular set of registers
>> > pushed?
> It should be push(r0, r1), the push of rscratch1, rscratch2 is
> unnecessary.
> 
> r0 needs to be saved, I also push r1 because it is free and because
> I need to save r0..r7 around the call to g1_wb_post later and by
> saving r1 here I only have to save r2..r7 later.

But why do you not need to save all registers?  This is in the middle
of C1-generated code, isn't it?  So anything may be live.  And the
native code you're calling may trash these registers.  I think you need
everything up to r18, excluding rscratch1 and rscratch2.

Andrew.


More information about the aarch64-port-dev mailing list