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