From: Adhemerval Zanella Date: Sun, 13 Nov 2022 18:49:27 +0000 (-0300) Subject: stdlib: Move _IO_cleanup to call_function_static_weak X-Git-Tag: glibc-2.37~89 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5dcd2d0ad02ff12c76355ef4f40947c1857ac482;p=thirdparty%2Fglibc.git stdlib: Move _IO_cleanup to call_function_static_weak Reviewed-by: Florian Weimer --- diff --git a/Makerules b/Makerules index a41491429ee..3226b7a12bc 100644 --- a/Makerules +++ b/Makerules @@ -568,9 +568,6 @@ $(common-objpfx)shlib.lds: $(common-objpfx)config.make $(..)Makerules PROVIDE(__start___libc_subfreeres = .);\ __libc_subfreeres : { *(__libc_subfreeres) }\ PROVIDE(__stop___libc_subfreeres = .);\ - PROVIDE(__start___libc_atexit = .);\ - __libc_atexit : { *(__libc_atexit) }\ - PROVIDE(__stop___libc_atexit = .);\ PROVIDE(__start___libc_IO_vtables = .);\ __libc_IO_vtables : { *(__libc_IO_vtables) }\ PROVIDE(__stop___libc_IO_vtables = .);\ diff --git a/libio/genops.c b/libio/genops.c index 1b629eb6954..8a7fc4f7c57 100644 --- a/libio/genops.c +++ b/libio/genops.c @@ -1115,5 +1115,3 @@ _IO_list_resetlock (void) #endif } libc_hidden_def (_IO_list_resetlock) - -text_set_element(__libc_atexit, _IO_cleanup); diff --git a/stdlib/exit.c b/stdlib/exit.c index 10c44e1449e..98579fbda88 100644 --- a/stdlib/exit.c +++ b/stdlib/exit.c @@ -20,11 +20,9 @@ #include #include #include +#include #include "exit.h" -#include "set-hooks.h" -DEFINE_HOOK (__libc_atexit, (void)) - /* Initialize the flag that indicates exit function processing is complete. See concurrency notes in stdlib/exit.h where __exit_funcs_lock is declared. */ @@ -128,7 +126,7 @@ __run_exit_handlers (int status, struct exit_function_list **listp, __libc_lock_unlock (__exit_funcs_lock); if (run_list_atexit) - RUN_HOOK (__libc_atexit, ()); + call_function_static_weak (_IO_cleanup); _exit (status); }