master
1#if __HAVE_68881__
2#define FP_SUFFIX ""
3#elif __mcffpu__
4#define FP_SUFFIX "-fp64"
5#else
6#define FP_SUFFIX "-sf"
7#endif
8
9#define LDSO_ARCH "m68k" FP_SUFFIX
10
11#define TPOFF_K (-0x7000)
12
13#define REL_SYMBOLIC R_68K_32
14#define REL_OFFSET R_68K_PC32
15#define REL_GOT R_68K_GLOB_DAT
16#define REL_PLT R_68K_JMP_SLOT
17#define REL_RELATIVE R_68K_RELATIVE
18#define REL_COPY R_68K_COPY
19#define REL_DTPMOD R_68K_TLS_DTPMOD32
20#define REL_DTPOFF R_68K_TLS_DTPREL32
21#define REL_TPOFF R_68K_TLS_TPREL32
22
23#define CRTJMP(pc,sp) __asm__ __volatile__( \
24 "move.l %1,%%sp ; jmp (%0)" : : "r"(pc), "r"(sp) : "memory" )
25
26#define GETFUNCSYM(fp, sym, got) __asm__ ( \
27 ".hidden " #sym "\n" \
28 "lea " #sym "-.-8,%0 \n" \
29 "lea (%%pc,%0),%0 \n" \
30 : "=a"(*fp) : : "memory" )