[git commit] arm: Fix POP_RET for armv4t && interworking

Bernhard Reutner-Fischer rep.dot.nop at gmail.com
Wed Apr 22 18:00:09 UTC 2015


commit: http://git.uclibc.org/uClibc/commit/?id=298f58e073b2782bd264edea969769b7b5e7cf41
branch: http://git.uclibc.org/uClibc/commit/?id=refs/heads/master

It seems the condition was reversed which lead to e.g. arm-920t being
confused

Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop at gmail.com>
---
 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 04664b3..898a78b 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.  */


More information about the uClibc-cvs mailing list