diff options
author | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2005-03-21 10:42:43 +0000 |
---|---|---|
committer | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2005-03-21 10:42:43 +0000 |
commit | 2d31c8c2c6ef432aa8c27defc53036859dd00560 (patch) | |
tree | feb2334f8d5ee81f004c84640746d528949ccb80 | |
parent | 98c8f32c52d179c4f12b6c719dc0f2fceaa3037d (diff) |
Pass _dl_fini function ptr to __uClibc_start_main().
To actually use it, one must define _DL_DO_FINI_IN_LIBC globally.
That will also break ABI for apps linked with previous version of crtX.S.
They must be relinked with this version to work again.
-rw-r--r-- | libc/sysdeps/linux/powerpc/crt0.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/libc/sysdeps/linux/powerpc/crt0.S b/libc/sysdeps/linux/powerpc/crt0.S index fc77bdc99..d2808a7c1 100644 --- a/libc/sysdeps/linux/powerpc/crt0.S +++ b/libc/sysdeps/linux/powerpc/crt0.S @@ -70,6 +70,7 @@ _start: addi r5,r5,1 rlwinm r5,r5,2,0,29 add r5,r5,r4 + mr r8,r7 /* Pass _dl_fini from ldso */ /* Ok, now run uClibc's main() -- shouldn't return */ #if (defined L_crt1 || defined L_Scrt1) && defined __UCLIBC_CTOR_DTOR__ # ifdef L_Scrt1 |