[OpenBIOS] [RFC 3/3] ppc: RTAS WIP

Alexander Graf agraf at suse.de
Fri Oct 15 12:26:50 CEST 2010


On 15.10.2010, at 00:38, Alexander Graf wrote:

> 
> Am 15.10.2010 um 00:17 schrieb Andreas Färber <andreas.faerber at web.de>:

[snip]

> /* saving non-volatile registers */
> 
>> +    stw r13,  8(r4)
> 
> I would recommend multiplying here:
> 
> stw r13, (3 * 4)(r4)
> 
> That makes it more readable.
> 
>> +    stw r14, 12(r4)
>> +    stw r15, 16(r4)
>> +    stw r16, 20(r4)
>> +    stw r17, 24(r4)
>> +    stw r18, 28(r4)
>> +    stw r19, 32(r4)
>> +    stw r20, 36(r4)
>> +    stw r21, 40(r4)
>> +    stw r22, 44(r4)
>> +    stw r23, 48(r4)
>> +    stw r24, 52(r4)
>> +    stw r25, 56(r4)
>> +    stw r26, 60(r4)
>> +    stw r27, 64(r4)
>> +    stw r28, 68(r4)
>> +    stw r29, 72(r4)
>> +    stw r30, 76(r4)
>> +    stw r31, 80(r4)

Actually thinking about this a bit more, r13-r31 are already defined non-volatile by the C ABI, so you can be sure that the C function you're calling doesn't clobber them. You don't need to manually save/restore them :).

Alex




More information about the OpenBIOS mailing list