diff options
author | Ulrich Drepper <drepper@redhat.com> | 2004-01-14 00:24:36 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 2004-01-14 00:24:36 +0000 |
commit | ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed (patch) | |
tree | b6887613d1be5146b86b758a4cb137c301d4d899 /sysdeps/generic/ldsodefs.h | |
parent | b177ed2b58d4db52e9dac00ab6575213817cd9ea (diff) | |
download | glibc-ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed.tar.gz glibc-ea4f25a7f9adb67c2a19c48b453ee52fd65a57ed.tar.xz 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/ldsodefs.h')
-rw-r--r-- | sysdeps/generic/ldsodefs.h | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/sysdeps/generic/ldsodefs.h b/sysdeps/generic/ldsodefs.h index 852cf51280..f511c5d36f 100644 --- a/sysdeps/generic/ldsodefs.h +++ b/sysdeps/generic/ldsodefs.h @@ -456,6 +456,14 @@ extern void **_dl_initial_error_catch_tsd (void) __attribute__ ((const)) extern int _dl_make_stack_executable (void **stack_endp) internal_function; rtld_hidden_proto (_dl_make_stack_executable) +/* Variable pointing to the end of the stack (or close to it). This value + must be constant over the runtime of the application. Some programs + might use the variable which results in copy relocations on some + platforms. But this does not matter, ld.so can always use the local + copy. */ +extern void *__libc_stack_end; +rtld_hidden_proto (__libc_stack_end) + /* Parameters passed to the dynamic linker. */ extern int _dl_argc attribute_hidden; extern char **_dl_argv; |