about summary refs log tree commit diff
path: root/elf/rtld.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2002-03-15 03:16:52 +0000
committerUlrich Drepper <drepper@redhat.com>2002-03-15 03:16:52 +0000
commit5c82e15e8646cd7d229bcd8287d01875e12df0b3 (patch)
tree14c2843a36f2ba9014790a44a5eb9451afefede3 /elf/rtld.c
parent36461455978549862873b9fa1117de21984dceac (diff)
downloadglibc-5c82e15e8646cd7d229bcd8287d01875e12df0b3.tar.gz
glibc-5c82e15e8646cd7d229bcd8287d01875e12df0b3.tar.xz
glibc-5c82e15e8646cd7d229bcd8287d01875e12df0b3.zip
Update.
2002-03-14  Ulrich Drepper  <drepper@redhat.com>

	* elf/dl-minimal.c (malloc): Declare _end as hidden.
	(__errno_location): New function.  Declare errno as hidden.
	* elf/rtld.c (_dl_argc): Define as hidden.
	(_dl_skip_args): Define as hidden.
	(_begin, _end): Declare as hidden.
	* sysdeps/generic/dl-sysdep.c (_end): Declare as hidden.
	* sysdeps/generic/entry.h (_start): Declare as hidden.
	* sysdeps/generic/ldsodefs.h (_dl_argc): Declare as hidden.
	* sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Declare
	_dl_runtime_resolve and _dl_runtime_profile as hidden.
	(RTLD_START): Use GOTOFF to access _dl_skip_args and _dl_fini.
Diffstat (limited to 'elf/rtld.c')
-rw-r--r--elf/rtld.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/elf/rtld.c b/elf/rtld.c
index 97acf20b60..57b9e5ff03 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -58,10 +58,12 @@ enum mode { normal, list, verify, trace };
    all the entries.  */
 static void process_envvars (enum mode *modep);
 
-int _dl_argc;
+int _dl_argc attribute_hidden;
 char **_dl_argv = NULL;
 INTDEF(_dl_argv)
-unsigned int _dl_skip_args;	/* Nonzero if we were run directly.  */
+
+/* Nonzero if we were run directly.  */
+unsigned int _dl_skip_args attribute_hidden;
 
 /* Set nonzero during loading and initialization of executable and
    libraries, cleared before the executable's entry point runs.  This
@@ -216,7 +218,8 @@ _dl_start_final (void *arg, struct link_map *bootstrap_map_p,
      way to do this so we use this trick.  gcc never inlines functions
      which use `alloca'.  */
   ElfW(Addr) *start_addr = alloca (sizeof (ElfW(Addr)));
-  extern char _begin[], _end[];
+  extern char _begin[] attribute_hidden;
+  extern char _end[] attribute_hidden;
 #ifdef USE_TLS
   ElfW(Ehdr) *ehdr;
   ElfW(Phdr) *phdr;