svn commit: trunk/uClibc/libc/sysdeps/linux: arm mips

psm at uclibc.org psm at uclibc.org
Wed Sep 28 17:17:22 UTC 2005


Author: psm
Date: 2005-09-28 10:17:20 -0700 (Wed, 28 Sep 2005)
New Revision: 11682

Log:
arm/crt1.S needs features.h and the weak _init/_fini independently of __PIC__. Add these weaks to mips/crt1.S as well.

Modified:
   trunk/uClibc/libc/sysdeps/linux/arm/crt1.S
   trunk/uClibc/libc/sysdeps/linux/mips/crt1.S


Changeset:
Modified: trunk/uClibc/libc/sysdeps/linux/arm/crt1.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/arm/crt1.S	2005-09-28 16:25:57 UTC (rev 11681)
+++ trunk/uClibc/libc/sysdeps/linux/arm/crt1.S	2005-09-28 17:17:20 UTC (rev 11682)
@@ -75,9 +75,16 @@
     pc      r15          program counter
 */
 
-	.text
-	.globl _start
-	.type _start,#function
+#include <features.h>
+
+.text
+	.globl	_start
+	.type	_start,#function
+#ifndef __UCLIBC_CTOR_DTOR__
+	.weak	_init
+	.weak	_fini
+#endif
+
 _start:
 	/* Clear the frame pointer and link register since this is the outermost frame.  */
 	mov fp, #0
@@ -133,13 +140,8 @@
 	.word _init(GOT)
 	.word main(GOT)
 #else
-# ifdef __UCLIBC_CTOR_DTOR__
 	.type _init,%function
 	.type _fini,%function
-# else
-	.weak _fini
-	.weak _init
-# endif
 #endif
 
 /* Define a symbol for the first piece of initialized data.  */

Modified: trunk/uClibc/libc/sysdeps/linux/mips/crt1.S
===================================================================
--- trunk/uClibc/libc/sysdeps/linux/mips/crt1.S	2005-09-28 16:25:57 UTC (rev 11681)
+++ trunk/uClibc/libc/sysdeps/linux/mips/crt1.S	2005-09-28 17:17:20 UTC (rev 11682)
@@ -37,9 +37,9 @@
 
 
 #include <sys/regdef.h>
+#include <features.h>
 
 
-
 /* This is the canonical entry point, usually the first thing in the text
    segment.  The SVR4/Mips ABI (pages 3-31, 3-32) says that when the entry
    point runs, most registers' values are unspecified, except for:
@@ -70,10 +70,14 @@
 */
 
 .text
-	.globl	    __start
-	.type	    __start, at function
-	.type	    _init, at function
-	.type	    _fini, at function
+	.globl	__start
+	.type	__start, at function
+	.type	_init, at function
+	.type	_fini, at function
+#ifndef __UCLIBC_CTOR_DTOR__
+	.weak	_init
+	.weak	_fini
+#endif
 	.type	    main, at function
 	.type	    __uClibc_main, at function
 




More information about the uClibc-cvs mailing list