Subversion Repositories pentevo

Rev

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