ldi YL, lo8(r2) (.text+0xa0): undefined reference to `r2´
#define data r2
; Mueve los datos de la SRAM a los registros
pop_reg:
ldi YL, lo8(data_buff)
ldi ZL, lo8(data)
rjmp memcpy
; Mueve los datos de los registros a la SRAM
push_reg:
ldi YL, lo8(data)
ldi ZL, lo8(data_buff)
rjmp memcpy
; Mueve 8 datos desde la posición Y hasta la posición Z
memcpy:
ldi r_index, 8
memcpy_1:
ld temp0, Y+
st Z+, temp0
dec r_index
brne memcpy_1
ret
a ver si esto te sirve
http://www.avr-asm-tutorial.net/avr_en/beginner/REGISTER.html
ldi ZL, LOW(data_buff)