aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--csu/init-first.c12
-rw-r--r--elf/soinit.c2
-rw-r--r--include/libc-internal.h2
3 files changed, 8 insertions, 8 deletions
diff --git a/csu/init-first.c b/csu/init-first.c
index 1cd8a75098..264e6f348d 100644
--- a/csu/init-first.c
+++ b/csu/init-first.c
@@ -43,12 +43,11 @@ void
__libc_init_first (int argc, char **argv, char **envp)
{
#ifdef SHARED
- /* For DSOs we do not need __libc_init_first but instead _init. */
+ /* For DSOs we do not need __libc_init_first but an ELF constructor. */
}
-void
-attribute_hidden
-_init (int argc, char **argv, char **envp)
+static void __attribute__ ((constructor))
+_init_first (int argc, char **argv, char **envp)
{
#endif
@@ -86,8 +85,9 @@ _init (int argc, char **argv, char **envp)
/* This function is defined here so that if this file ever gets into
ld.so we will get a link error. Having this file silently included
- in ld.so causes disaster, because the _init definition above will
- cause ld.so to gain an init function, which is not a cool thing. */
+ in ld.so causes disaster, because the _init_first definition above
+ will cause ld.so to gain an ELF constructor, which is not a cool
+ thing. */
extern void _dl_start (void) __attribute__ ((noreturn));
diff --git a/elf/soinit.c b/elf/soinit.c
index fe9935732b..538eb68186 100644
--- a/elf/soinit.c
+++ b/elf/soinit.c
@@ -20,7 +20,7 @@ run_hooks (void (*const list[]) (void))
(**list) ();
}
-/* This function will be called from _init in init-first.c. */
+/* This function will be called from _init_first in init-first.c. */
void
__libc_global_ctors (void)
{
diff --git a/include/libc-internal.h b/include/libc-internal.h
index fcd21468c0..4c74f6ba60 100644
--- a/include/libc-internal.h
+++ b/include/libc-internal.h
@@ -24,7 +24,7 @@
/* Initialize the `__libc_enable_secure' flag. */
extern void __libc_init_secure (void);
-/* This function will be called from _init in init-first.c. */
+/* This function will be called from _init_first in init-first.c. */
extern void __libc_global_ctors (void);
/* Discover the tick frequency of the machine if something goes wrong,