diff options
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/ChangeLog | 9 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h | 17 | ||||
-rw-r--r-- | nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h | 17 |
3 files changed, 19 insertions, 24 deletions
diff --git a/nptl/ChangeLog b/nptl/ChangeLog index 753289261c..aa422d3c46 100644 --- a/nptl/ChangeLog +++ b/nptl/ChangeLog @@ -1,3 +1,12 @@ +2003-01-07 Jakub Jelinek <jakub@redhat.com> + + * sysdeps/unix/sysv/linux/i386/dl-sysdep.h + (RTLD_CORRECT_DYNAMIC_WEAK): Remove. + (DL_SYSINFO_IMPLEMENTATION): Change into .text section and back. + * sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h + (RTLD_CORRECT_DYNAMIC_WEAK): Remove. + (DL_SYSINFO_IMPLEMENTATION): Change into .text section and back. + 2003-01-06 Jakub Jelinek <jakub@redhat.com> * pthreadP.h (LIBC_CANCEL_HANDLED): Define. diff --git a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h index 5e59962a48..4c29c150f7 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h +++ b/nptl/sysdeps/unix/sysv/linux/i386/dl-sysdep.h @@ -1,5 +1,5 @@ /* System-specific settings for dynamic linker code. IA-32 version. - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2003 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 @@ -34,15 +34,6 @@ # define RTLD_PRIVATE_ERRNO 0 #endif -/* This configuration has in libc.so cancellable functions and other - functions which have to behave differently if the application uses - threads. It is not necessary that the thread library's definitions - are used. Therefore we can finally enabled the correct handling - of weak definitions in ld.so. See rtld.c. */ - -#define RTLD_CORRECT_DYNAMIC_WEAK 1 - - /* Traditionally system calls have been made using int $0x80. A second method was introduced which, if possible, will use the sysenter/syscall instructions. To signal the presence and where to @@ -58,12 +49,14 @@ extern void _dl_sysinfo_int80 (void) attribute_hidden; # define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80 # define DL_SYSINFO_IMPLEMENTATION \ - asm (".type _dl_sysinfo_int80,@function\n\t" \ + asm (".text\n\t" \ + ".type _dl_sysinfo_int80,@function\n\t" \ ".hidden _dl_sysinfo_int80\n" \ "_dl_sysinfo_int80:\n\t" \ "int $0x80;\n\t" \ "ret;\n\t" \ - ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80"); + ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \ + ".previous"); #endif #endif /* dl-sysdep.h */ diff --git a/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h b/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h index d7328fe219..b880238a93 100644 --- a/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h +++ b/nptl/sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h @@ -1,5 +1,5 @@ /* System-specific settings for dynamic linker code. IA-32 version. - Copyright (C) 2002 Free Software Foundation, Inc. + Copyright (C) 2002, 2003 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 @@ -34,15 +34,6 @@ # define RTLD_PRIVATE_ERRNO 0 #endif -/* This configuration has in libc.so cancellable functions and other - functions which have to behave differently if the application uses - threads. It is not necessary that the thread library's definitions - are used. Therefore we can finally enabled the correct handling - of weak definitions in ld.so. See rtld.c. */ - -#define RTLD_CORRECT_DYNAMIC_WEAK 1 - - /* Traditionally system calls have been made using int $0x80. A second method was introduced which, if possible, will use the sysenter/syscall instructions. To signal the presence and where to @@ -55,12 +46,14 @@ extern void _dl_sysinfo_int80 (void) attribute_hidden; # define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80 # define DL_SYSINFO_IMPLEMENTATION \ - asm (".type _dl_sysinfo_int80,@function\n\t" \ + asm (".text\n\t" \ + ".type _dl_sysinfo_int80,@function\n\t" \ ".hidden _dl_sysinfo_int80\n" \ "_dl_sysinfo_int80:\n\t" \ "int $0x80;\n\t" \ "ret;\n\t" \ - ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80"); + ".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \ + ".previous"); #endif #endif /* dl-sysdep.h */ |