svn commit: trunk/uClibc: ldso/ldso/arm libc/sysdeps/linux/arm
psm at uclibc.org
psm at uclibc.org
Tue Jan 31 23:31:33 UTC 2006
Author: psm
Date: 2006-01-31 15:31:32 -0800 (Tue, 31 Jan 2006)
New Revision: 13767
Log:
s:THUMB_INTERWORK:USE_BX:, thx Khem Raj
Modified:
trunk/uClibc/ldso/ldso/arm/dl-startup.h
trunk/uClibc/libc/sysdeps/linux/arm/clone.S
trunk/uClibc/libc/sysdeps/linux/arm/vfork.S
Changeset:
Modified: trunk/uClibc/ldso/ldso/arm/dl-startup.h
===================================================================
--- trunk/uClibc/ldso/ldso/arm/dl-startup.h 2006-01-31 22:59:12 UTC (rev 13766)
+++ trunk/uClibc/ldso/ldso/arm/dl-startup.h 2006-01-31 23:31:32 UTC (rev 13767)
@@ -1,9 +1,13 @@
/* vi: set sw=4 ts=4: */
/*
* Architecture specific code used by dl-startup.c
- * Copyright (C) 2000-2004 by Erik Andersen <andersen at codepoet.org>
+ * Copyright (C) 2000-2006 Erik Andersen <andersen at uclibc.org>
+ *
+ * Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
*/
+#include <features.h>
+
#if !defined(__thumb__)
__asm__(
" .text\n"
@@ -41,7 +45,7 @@
" ldr r0, .L_FINI_PROC\n"
" ldr r0, [sl, r0]\n"
" @ jump to the user_s entry point\n"
-#if defined(__THUMB_INTERWORK__)
+#if defined(__USE_BX__)
" bx r6\n"
#else
" mov pc, r6\n"
@@ -107,7 +111,11 @@
" ldr r0, .L_FINI_PROC\n"
" ldr r0, [r7, r0]\n"
" @ jump to the user_s entry point\n"
+#if defined(__USE_BX__)
" bx r6\n"
+#else
+ " mov pc, r6\n"
+#endif
"\n\n"
".L_GET_GOT:\n"
" .word _GLOBAL_OFFSET_TABLE_ - .L_GOT_GOT - 4\n"
Modified: trunk/uClibc/libc/sysdeps/linux/arm/clone.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/arm/clone.S 2006-01-31 22:59:12 UTC (rev 13766)
+++ trunk/uClibc/libc/sysdeps/linux/arm/clone.S 2006-01-31 23:31:32 UTC (rev 13767)
@@ -52,7 +52,7 @@
DO_CALL (clone)
movs a1, a1
blt __error
-#if defined(__THUMB_INTERWORK__)
+#if defined(__USE_BX__)
bxne lr
#else
movne pc, lr
Modified: trunk/uClibc/libc/sysdeps/linux/arm/vfork.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/arm/vfork.S 2006-01-31 22:59:12 UTC (rev 13766)
+++ trunk/uClibc/libc/sysdeps/linux/arm/vfork.S 2006-01-31 23:31:32 UTC (rev 13767)
@@ -26,7 +26,7 @@
#ifdef __NR_vfork
DO_CALL (vfork)
cmn r0, #4096
-#if defined(__THUMB_INTERWORK__)
+#if defined(__USE_BX__)
bxcc lr
#else
movcc pc, lr
@@ -43,7 +43,7 @@
cmn r0, #4096
/* Syscall worked. Return to child/parent */
-#if defined(__THUMB_INTERWORK__)
+#if defined(__USE_BX__)
bxcc lr
#else
movcc pc, lr
More information about the uClibc-cvs
mailing list