Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1029 | chrv | 1 | #ifndef GETFARADDRESS_H |
2 | #define GETFARADDRESS_H |
||
3 | |||
4 | |||
5 | #define GET_FAR_ADDRESS(var) \ |
||
6 | ({ \ |
||
7 | uint_farptr_t tmp; \ |
||
8 | \ |
||
9 | __asm__ __volatile__( \ |
||
10 | \ |
||
11 | "ldi %A0, lo8(%1)" "\n\t" \ |
||
12 | "ldi %B0, hi8(%1)" "\n\t" \ |
||
13 | "ldi %C0, hh8(%1)" "\n\t" \ |
||
14 | "clr %D0" "\n\t" \ |
||
15 | : \ |
||
16 | "=d" (tmp) \ |
||
17 | : \ |
||
18 | "p" (&(var)) \ |
||
19 | ); \ |
||
20 | tmp; \ |
||
21 | }) |
||
22 | |||
23 | #endif |
||
24 |