diff options
author | Roland McGrath <roland@gnu.org> | 2002-09-29 21:41:17 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 2002-09-29 21:41:17 +0000 |
commit | cc590e1d4e84f931a954a06a5f743d8f61090713 (patch) | |
tree | f4db9fd3bc07c4e1346f3d488d2e62b192356baa /sysdeps/unix/sysv/linux | |
parent | 330fad29701ee2ae7b9f794f628a113b6f73d698 (diff) | |
download | glibc-cc590e1d4e84f931a954a06a5f743d8f61090713.tar.gz glibc-cc590e1d4e84f931a954a06a5f743d8f61090713.tar.xz glibc-cc590e1d4e84f931a954a06a5f743d8f61090713.zip |
2002-09-29 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/sysdep.S [USE_TLS && HAVE___THREAD]: Define errno in .tbss. * sysdeps/unix/x86_64/sysdep.S [USE_TLS && HAVE___THREAD]: Use TLS access for setting errno.
Diffstat (limited to 'sysdeps/unix/sysv/linux')
-rw-r--r-- | sysdeps/unix/sysv/linux/x86_64/sysdep.S | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/sysdeps/unix/sysv/linux/x86_64/sysdep.S b/sysdeps/unix/sysv/linux/x86_64/sysdep.S index b8eccc8b9f..00086ca1e4 100644 --- a/sysdeps/unix/sysv/linux/x86_64/sysdep.S +++ b/sysdeps/unix/sysv/linux/x86_64/sysdep.S @@ -17,6 +17,7 @@ 02111-1307 USA. */ #include <sysdep.h> +#include <tls.h> /* The Linux version is in fact x86-64/ELF and the start.? file for this system (sysdeps/x86_64/elf/start.S) is also used by The Hurd. This file @@ -24,13 +25,22 @@ define it somewhere else. ...and this place is here. */ +#if USE_TLS && HAVE___THREAD + .section .tbss +#else .bss +#endif .globl errno .type errno,@object .size errno,4 + .globl _errno + .type _errno,@object + .size _errno,4 + .align 4 errno: +_errno: .space 4 -weak_alias (errno, _errno) + /* The following code is only used in the shared library when we compile the reentrant version. Otherwise each system call defines |