diff options
author | Richard Henderson <rth@redhat.com> | 2004-01-13 09:36:22 +0000 |
---|---|---|
committer | Richard Henderson <rth@redhat.com> | 2004-01-13 09:36:22 +0000 |
commit | dc927809b187986876a69419df68c83623b79ab3 (patch) | |
tree | f75494c0271c80684cb560e5b08019f9b5e23090 /nptl/sysdeps/alpha | |
parent | 141749ca169d3a5f3a328d3cb91473e3af4256b1 (diff) | |
download | glibc-dc927809b187986876a69419df68c83623b79ab3.tar.gz glibc-dc927809b187986876a69419df68c83623b79ab3.tar.xz glibc-dc927809b187986876a69419df68c83623b79ab3.zip |
* sysdeps/alpha/Makefile: New file. * sysdeps/alpha/tcb-offsets.sym: New file. * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (SINGLE_THREAD_P): Use MULTIPLE_THREADS_OFFSET to implement !libpthread !libc version.
* sysdeps/unix/sysv/linux/alpha/lowlevellock.h: Rewrite based on powerpc version. 2004-01-13 Richard Henderson <rth@redhat.com> * sysdeps/alpha/Makefile: New file. * sysdeps/alpha/tcb-offsets.sym: New file. * sysdeps/unix/sysv/linux/alpha/sysdep-cancel.h (SINGLE_THREAD_P): Use MULTIPLE_THREADS_OFFSET to implement !libpthread !libc version. * sysdeps/unix/sysv/linux/alpha/lowlevellock.h: Rewrite based on powerpc version.
Diffstat (limited to 'nptl/sysdeps/alpha')
-rw-r--r-- | nptl/sysdeps/alpha/Makefile | 21 | ||||
-rw-r--r-- | nptl/sysdeps/alpha/tcb-offsets.sym | 12 |
2 files changed, 33 insertions, 0 deletions
diff --git a/nptl/sysdeps/alpha/Makefile b/nptl/sysdeps/alpha/Makefile new file mode 100644 index 0000000000..88c106bbbf --- /dev/null +++ b/nptl/sysdeps/alpha/Makefile @@ -0,0 +1,21 @@ +# Copyright (C) 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 +# modify it under the terms of the GNU Lesser General Public +# License as published by the Free Software Foundation; either +# version 2.1 of the License, or (at your option) any later version. +# +# The GNU C Library is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# Lesser General Public License for more details. +# +# You should have received a copy of the GNU Lesser General Public +# License along with the GNU C Library; if not, write to the Free +# Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA +# 02111-1307 USA. + +ifeq ($(subdir),csu) +gen-as-const-headers += tcb-offsets.sym +endif diff --git a/nptl/sysdeps/alpha/tcb-offsets.sym b/nptl/sysdeps/alpha/tcb-offsets.sym new file mode 100644 index 0000000000..3f6433d5e9 --- /dev/null +++ b/nptl/sysdeps/alpha/tcb-offsets.sym @@ -0,0 +1,12 @@ +#include <sysdep.h> +#include <tls.h> + +-- + +-- Abuse tls.h macros to derive offsets relative to the thread register. +# define __builtin_thread_pointer() ((void *) 0) +# define thread_offsetof(mem) ((void *) &THREAD_SELF->mem - (void *) 0) + +#if TLS_MULTIPLE_THREADS_IN_TCB +MULTIPLE_THREADS_OFFSET thread_offsetof (header.multiple_threads) +#endif |