aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/generic/libc-start.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2004-01-14 00:24:36 +0000
committerUlrich Drepper <drepper@redhat.com>2004-01-14 00:24:36 +0000
commitea4f25a7f9adb67c2a19c48b453ee52fd65a57ed (patch)
treeb6887613d1be5146b86b758a4cb137c301d4d899 /sysdeps/generic/libc-start.c
parentb177ed2b58d4db52e9dac00ab6575213817cd9ea (diff)
downloadglibc-ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed.tar
glibc-ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed.tar.gz
glibc-ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed.tar.bz2
glibc-ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed.zip
Update.
2004-01-13 Ulrich Drepper <drepper@redhat.com> * sysdeps/x86_64/dl-machine.h: Include <tls.h>. * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here. * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with rtld_hidden_def and move into .data.rel.ro section. * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with rtld_hidden_proto. * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here if !SHARED. * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable): Move common code in front. Use __builtin_expect.
Diffstat (limited to 'sysdeps/generic/libc-start.c')
-rw-r--r--sysdeps/generic/libc-start.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/sysdeps/generic/libc-start.c b/sysdeps/generic/libc-start.c
index e297b0a424..716bbc7018 100644
--- a/sysdeps/generic/libc-start.c
+++ b/sysdeps/generic/libc-start.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 1998,1999,2000,2001,2002,2003 Free Software Foundation, Inc.
+/* Copyright (C) 1998-2003, 2004 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@@ -105,10 +105,11 @@ LIBC_START_MAIN (int (*main) (int, char **, char ** MAIN_AUXVEC_DECL),
INIT_ARGV_and_ENVIRON;
- /* Store the lowest stack address. */
+#ifndef SHARED
+ /* Store the lowest stack address. This is done in ld.so if this is
+ the code for the DSO. */
__libc_stack_end = stack_end;
-#ifndef SHARED
# ifdef HAVE_AUX_VECTOR
/* First process the auxiliary vector since we need to find the
program header to locate an eventually present PT_TLS entry. */