From 39d1a8c871a46e603a60f210b6aa19bf7d1eedc4 Mon Sep 17 00:00:00 2001 From: Joakim Tjernlund Date: Sat, 31 Mar 2007 13:36:07 +0000 Subject: Update comment regarding passing dl_fini. --- libc/sysdeps/linux/powerpc/crt1.S | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'libc/sysdeps/linux/powerpc/crt1.S') diff --git a/libc/sysdeps/linux/powerpc/crt1.S b/libc/sysdeps/linux/powerpc/crt1.S index 8798849b3..4f1494a8f 100644 --- a/libc/sysdeps/linux/powerpc/crt1.S +++ b/libc/sysdeps/linux/powerpc/crt1.S @@ -74,8 +74,11 @@ _start: lwz r4,0(r9) /* find argv one word offset from the stack pointer */ addi r5,r9,4 - mr r8,r3 /* Pass _dl_fini from ldso or NULL if statically linked - Note: using r3 instead of r7, since linux 2.6 clobbers r7 */ + mr r8,r3 /* Pass _dl_fini from ldso or NULL if statically linked */ + /* Note: PPC depends on the kernel to zero r3 before */ + /* handing over to user space, otherwise static apps */ + /* will SEGV during exit() */ + /* Ok, now run uClibc's main() -- shouldn't return */ #ifdef __PIC__ lwz r6,_init@got(r31) -- cgit v1.2.3