The assembler supports several modifiers when using relocatable addresses in AVR instruction operands. The general syntax is the following:
modifier(relocatable-expression)
lo8
hi8
For example
ldi r26, lo8(sym+10)
ldi r27, hi8(sym+10)
hh8
hlo8
hhi8
For example
ldi r26, lo8(285774925)
ldi r27, hi8(285774925)
ldi r28, hlo8(285774925)
ldi r29, hhi8(285774925)
; r29,r28,r27,r26 = 285774925
pm_lo8
pm_hi8
pm_hh8