From cc590e1d4e84f931a954a06a5f743d8f61090713 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 29 Sep 2002 21:41:17 +0000 Subject: [PATCH] 2002-09-29 Roland McGrath * 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. --- sysdeps/unix/sysv/linux/x86_64/sysdep.S | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) 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 +#include /* 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