diff options
author | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2015-04-18 22:38:29 +0200 |
---|---|---|
committer | Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> | 2015-04-22 20:00:09 +0200 |
commit | 298f58e073b2782bd264edea969769b7b5e7cf41 (patch) | |
tree | afeaaa378491494099bd01b60c3ebff8bb8d3433 /libc/sysdeps/linux | |
parent | 7c78a5c52b2db6bb0d6e163b38897a003a289958 (diff) |
arm: Fix POP_RET for armv4t && interworking
It seems the condition was reversed which lead to e.g. arm-920t being
confused
Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com>
Diffstat (limited to 'libc/sysdeps/linux')
-rw-r--r-- | libc/sysdeps/linux/arm/bits/arm_asm.h | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/libc/sysdeps/linux/arm/bits/arm_asm.h b/libc/sysdeps/linux/arm/bits/arm_asm.h index 04664b376..898a78bcc 100644 --- a/libc/sysdeps/linux/arm/bits/arm_asm.h +++ b/libc/sysdeps/linux/arm/bits/arm_asm.h @@ -13,12 +13,12 @@ unified assembly syntax. */ #define IT(t, cond) /* Code to return from a thumb function stub. */ -#ifdef __ARM_ARCH_4T__ -#define POP_RET pop {r2, pc} -#else -#define POP_RET pop {r2, r3}; bx r3 -#endif -#endif +# if defined __ARM_ARCH_4T__ && defined __THUMB_INTERWORK__ +# define POP_RET pop {r2, r3}; bx r3 +# else +# define POP_RET pop {r2, pc} +# endif +#endif /* __thumb2__ */ #if defined(__ARM_ARCH_6M__) /* Force arm mode to flush out errors on M profile cores. */ |