[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [avr-gcc-list] How to reserve registers
From: |
Georg-Johann Lay |
Subject: |
Re: [avr-gcc-list] How to reserve registers |
Date: |
Wed, 04 Jan 2012 14:25:11 +0100 |
User-agent: |
Thunderbird 2.0.0.24 (X11/20100302) |
Paulo Marques wrote:
> push r0
> in r0, SREG
> push r1
> eor r1, r1
> push r2
>
> sec
^^^
Superfluous
> in r2, GPIOR0
> adc r2, r1
Why using ADC? AVR has INC (increment by 1) instruction that works with any
register.
> out GPIOR0, r2
> in r2, GPIOR1
> adc r2, r1
ditto
> out GPIOR1, r2
> in r2, GPIOR2
> adc r2, r1
ditto
> out GPIOR2, r2
> lds r2, high_counter_byte
> adc r2, r1
ditto
> sts high_counter_byte, r2
>
> pop r2
> pop r1
> out SREG, r0
> pop r0
> reti
Re: [avr-gcc-list] How to reserve registers, Volker Kuhlmann, 2012/01/03