From df0e39281e8fc368208127c67f0fa2f0dcbcca20 Mon Sep 17 00:00:00 2001 From: Joakim Tjernlund Date: Sat, 21 May 2005 21:40:14 +0000 Subject: Enable new FINI processing. ldso now passes a FINI function ptr to crt. Only PowerPC and x86 support this currently. --- ldso/ldso/ldso.c | 10 ---------- libc/stdlib/atexit.c | 3 --- 2 files changed, 13 deletions(-) diff --git a/ldso/ldso/ldso.c b/ldso/ldso/ldso.c index 54da613aa..c60815aff 100644 --- a/ldso/ldso/ldso.c +++ b/ldso/ldso/ldso.c @@ -806,16 +806,6 @@ void _dl_get_ready_to_run(struct elf_resolve *tpnt, unsigned long load_addr, (*dl_elf_func) (); } } -#ifndef _DL_DO_FINI_IN_LIBC - /* arches that have moved their ldso FINI handling should skip this part */ - { - int (*_dl_atexit) (void *) = (int (*)(void *)) (intptr_t) _dl_find_hash("atexit", - _dl_symbol_tables, NULL, ELF_RTYPE_CLASS_PLT); - - if (_dl_atexit) - (*_dl_atexit) (_dl_fini); - } -#endif /* Find the real malloc function and make ldso functions use that from now on */ _dl_malloc_function = (void* (*)(size_t)) (intptr_t) _dl_find_hash("malloc", diff --git a/libc/stdlib/atexit.c b/libc/stdlib/atexit.c index d5f83ee8e..87a49a015 100644 --- a/libc/stdlib/atexit.c +++ b/libc/stdlib/atexit.c @@ -239,11 +239,8 @@ void exit(int rv) if (__app_fini != NULL) (__app_fini)(); #endif -#ifdef _DL_DO_FINI_IN_LIBC -/* arches that has moved their ldso FINI handling should #define _DL_DO_FINI_IN_LIBC */ if (__rtld_fini != NULL) (__rtld_fini)(); -#endif /* If we are using stdio, try to shut it down. At the very least, * this will attempt to commit all buffered writes. It may also -- cgit v1.2.3