[uClibc-cvs] uClibc/libc/sysdeps/linux/arm crt0.S,1.21,1.22
Erik Andersen
andersen at uclibc.org
Fri May 14 10:51:03 UTC 2004
Update of /var/cvs/uClibc/libc/sysdeps/linux/arm
In directory nail:/tmp/cvs-serv22197/libc/sysdeps/linux/arm
Modified Files:
crt0.S
Log Message:
__data_start needs to be added to all crt0.S files that don't currently
have it. It is used by the boehm gc, amoung other things.
Index: crt0.S
===================================================================
RCS file: /var/cvs/uClibc/libc/sysdeps/linux/arm/crt0.S,v
retrieving revision 1.21
retrieving revision 1.22
diff -u -d -r1.21 -r1.22
--- a/crt0.S 16 Jan 2004 13:43:10 -0000 1.21
+++ b/crt0.S 14 May 2004 10:51:01 -0000 1.22
@@ -18,7 +18,7 @@
NULL
env[0...N] environment variables (pointers)
NULL
-
+
When we are done here, we want
a1=argc
a2=argv[0]
@@ -76,7 +76,7 @@
/* Copy argv pointer into r1 -- which its final resting place */
mov r1, sp
- /* Skip to the end of argv and put a pointer to whatever
+ /* Skip to the end of argv and put a pointer to whatever
we find there (hopefully the environment) in r2 */
add r2, r1, r0, lsl #2
add r2, r2, #4
@@ -114,16 +114,25 @@
*/
.section ".note.ABI-tag", "a"
.align 4
- .long 1f - 0f
- .long 3f - 2f
- .long 1
-0: .asciz "GNU"
-1: .align 4
-2: .long 0
- .long 2,0,0
-3: .align 4
+ .long 1f - 0f
+ .long 3f - 2f
+ .long 1
+0: .asciz "GNU"
+1: .align 4
+2: .long 0
+ .long 2,0,0
+3: .align 4
#if defined L_gcrt1 && defined __UCLIBC_PROFILING__
# include "./gmon-start.S"
#endif
+
+/* Define a symbol for the first piece of initialized data. */
+ .data
+ .globl __data_start
+__data_start:
+ .long 0
+ .weak data_start
+ data_start = __data_start
+
More information about the uClibc-cvs
mailing list