[uClibc-cvs] svn commit: trunk/uClibc: ldso/ldso libc/stdlib

jocke at uclibc.org jocke at uclibc.org
Sat May 21 21:40:15 UTC 2005


Author: jocke
Date: 2005-05-21 15:40:14 -0600 (Sat, 21 May 2005)
New Revision: 10394

Log:
Enable new FINI processing. ldso now passes a FINI function
ptr to crt. Only PowerPC and x86 support this currently.


Modified:
   trunk/uClibc/ldso/ldso/ldso.c
   trunk/uClibc/libc/stdlib/atexit.c


Changeset:
Modified: trunk/uClibc/ldso/ldso/ldso.c
===================================================================
--- trunk/uClibc/ldso/ldso/ldso.c	2005-05-21 21:31:36 UTC (rev 10393)
+++ trunk/uClibc/ldso/ldso/ldso.c	2005-05-21 21:40:14 UTC (rev 10394)
@@ -806,17 +806,7 @@
 			(*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",
 			 _dl_symbol_tables, NULL, ELF_RTYPE_CLASS_PLT);

Modified: trunk/uClibc/libc/stdlib/atexit.c
===================================================================
--- trunk/uClibc/libc/stdlib/atexit.c	2005-05-21 21:31:36 UTC (rev 10393)
+++ trunk/uClibc/libc/stdlib/atexit.c	2005-05-21 21:40:14 UTC (rev 10394)
@@ -239,11 +239,8 @@
 	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




More information about the uClibc-cvs mailing list