]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/l4re-core/uclibc/lib/contrib/uclibc/libc/sysdeps/linux/arm/bits/arm_asm.h
Update
[l4.git] / l4 / pkg / l4re-core / uclibc / lib / contrib / uclibc / libc / sysdeps / linux / arm / bits / arm_asm.h
1 /* Various definitons used the the ARM uClibc assembly code.  */
2 #ifndef _ARM_ASM_H
3 #define _ARM_ASM_H
4
5 #ifdef __thumb2__
6 # ifdef __ASSEMBLER__
7 .thumb
8 .syntax unified
9 # endif /* __ASSEMBLER__ */
10 #define IT(t, cond) i##t cond
11 #else
12 /* XXX: This can be removed if/when we require an assembler that supports
13    unified assembly syntax.  */
14 #define IT(t, cond)
15 /* Code to return from a thumb function stub.  */
16 #ifdef __ARM_ARCH_4T__
17 #define POP_RET pop     {r2, pc}
18 #else
19 #define POP_RET pop     {r2, r3}; bx    r3
20 #endif
21 #endif
22
23 #if defined(__ARM_ARCH_6M__)
24 /* Force arm mode to flush out errors on M profile cores.  */
25 #undef IT
26 #define THUMB1_ONLY 1
27 #endif
28
29 #endif /* _ARM_ASM_H */