diff options
author | Carlos O'Donell <carlos@systemhalted.org> | 2014-09-07 16:18:06 -0400 |
---|---|---|
committer | Carlos O'Donell <carlos@systemhalted.org> | 2014-09-07 22:08:36 -0400 |
commit | d83f0734e1522a5e5ea2494565f4dcd25a86d6a0 (patch) | |
tree | 9bda9b95797d592780251903ec6a5a5917a63f6e | |
parent | 21c83793a223666b8cfe438d81615941896b355c (diff) | |
download | glibc-d83f0734e1522a5e5ea2494565f4dcd25a86d6a0.zip glibc-d83f0734e1522a5e5ea2494565f4dcd25a86d6a0.tar.gz glibc-d83f0734e1522a5e5ea2494565f4dcd25a86d6a0.tar.bz2 |
HPPA: Transition to new non-addon NPTL.
Merge roland/nptl-hppa to master, update and test for hppa-linux-gnu.
This commit squashes and commits the work done by Roland McGrath on
roland/nptl-hppa to migrate hppa to the new non-addon NPTL. Some
additional tweaks were required for tcb-offsets.sym to work correctly
along with clone.S (unique to hppa).
-rw-r--r-- | ChangeLog | 38 | ||||
-rw-r--r-- | sysdeps/hppa/nptl/bits/pthreadtypes.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h) | 0 | ||||
-rw-r--r-- | sysdeps/hppa/nptl/bits/semaphore.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h) | 0 | ||||
-rw-r--r-- | sysdeps/hppa/nptl/tcb-offsets.sym | 2 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/arch-fork.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/fork.c) | 5 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/clone.S | 3 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/lowlevellock.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/nptl/clone.S | 3 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c | 20 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pt-vfork.S (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread.h) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthreadP.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread_cond_broadcast.c (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread_cond_destroy.c (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread_cond_init.c (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread_cond_signal.c (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread_cond_timedwait.c (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/pthread_cond_wait.c (renamed from sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c) | 0 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h (renamed from sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h) | 0 |
19 files changed, 42 insertions, 29 deletions
@@ -1,3 +1,41 @@ +2014-09-07 Roland McGrath <roland@hack.frob.com> + Carlos O'Donell <carlos@systemhalted.org> + + * sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c: File removed. + * sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h: Moved ... + * sysdeps/unix/sysv/linux/hppa/lowlevellock.h: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S: Moved ... + * sysdeps/unix/sysv/linux/hppa/pt-vfork.S: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread.h: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread.h: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthreadP.h: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread_cond_broadcast.c: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread_cond_destroy.c: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread_cond_init.c: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread_cond_signal.c: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread_cond_timedwait.c: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c: Moved ... + * sysdeps/unix/sysv/linux/hppa/pthread_cond_wait.c: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h: Moved ... + * sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h: Moved ... + * sysdeps/hppa/nptl/bits/pthreadtypes.h: ... here. + * sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h: Moved ... + * sysdeps/hppa/nptl/bits/semaphore.h: ... here. + * sysdeps/unix/sysv/linux/hppa/clone.S: Include <tcb-offsets.h>. + Deconditionalize the code that was previously under [RESET_PID]. + * sysdeps/unix/sysv/linux/hppa/nptl/clone.S: File removed. + * sysdeps/unix/sysv/linux/hppa/arch-fork.h: New file. + * sysdeps/unix/sysv/linux/hppa/nptl/fork.c: File removed. + * sysdeps/hppa/nptl/tcb-offsets.sym: Include pthread.h and don't + include sysdep.h. + 2014-09-08 Allan McRae <allan@archlinux.org> * version.h (RELEASE): Set to "development". diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h b/sysdeps/hppa/nptl/bits/pthreadtypes.h index d6fdc2c..d6fdc2c 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h +++ b/sysdeps/hppa/nptl/bits/pthreadtypes.h diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h b/sysdeps/hppa/nptl/bits/semaphore.h index 9d68d44..9d68d44 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h +++ b/sysdeps/hppa/nptl/bits/semaphore.h diff --git a/sysdeps/hppa/nptl/tcb-offsets.sym b/sysdeps/hppa/nptl/tcb-offsets.sym index f3cc826..c2f326e 100644 --- a/sysdeps/hppa/nptl/tcb-offsets.sym +++ b/sysdeps/hppa/nptl/tcb-offsets.sym @@ -1,4 +1,4 @@ -#include <sysdep.h> +#include <pthread.h> #include <tls.h> RESULT offsetof (struct pthread, result) diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/fork.c b/sysdeps/unix/sysv/linux/hppa/arch-fork.h index 3c21f5a..f4241fa 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/fork.c +++ b/sysdeps/unix/sysv/linux/hppa/arch-fork.h @@ -1,4 +1,5 @@ -/* Copyright (C) 2005-2014 Free Software Foundation, Inc. +/* ARCH_FORK definition for Linux fork implementation. HPPA version. + Copyright (C) 2005-2014 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 @@ -29,5 +30,3 @@ INLINE_SYSCALL (clone, 5, \ CLONE_CHILD_SETTID | CLONE_CHILD_CLEARTID | SIGCHLD, \ NULL, NULL, NULL, &THREAD_SELF->tid) - -#include <nptl/sysdeps/unix/sysv/linux/fork.c> diff --git a/sysdeps/unix/sysv/linux/hppa/clone.S b/sysdeps/unix/sysv/linux/hppa/clone.S index 1a3c6c8..ac8c468 100644 --- a/sysdeps/unix/sysv/linux/hppa/clone.S +++ b/sysdeps/unix/sysv/linux/hppa/clone.S @@ -24,6 +24,7 @@ #include <sysdep.h> #define _ERRNO_H 1 #include <bits/errno.h> +#include <tcb-offsets.h> /* Non-thread code calls __clone with the following parameters: int clone(int (*fn)(void *arg), @@ -131,7 +132,6 @@ ENTRY(__clone) ldwm -64(%sp), %r4 .LthreadStart: -#ifdef RESET_PID # define CLONE_VM_BIT 23 /* 0x00000100 */ # define CLONE_THREAD_BIT 15 /* 0x00010000 */ /* Load original clone flags. @@ -150,7 +150,6 @@ ENTRY(__clone) stw %ret0, PID_THREAD_OFFSET(%r26) stw %ret0, TID_THREAD_OFFSET(%r26) 1: -#endif /* Load up the arguments. */ ldw -60(%sp), %arg0 ldw -64(%sp), %r22 diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h b/sysdeps/unix/sysv/linux/hppa/lowlevellock.h index fb61d0c..fb61d0c 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h +++ b/sysdeps/unix/sysv/linux/hppa/lowlevellock.h diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/clone.S b/sysdeps/unix/sysv/linux/hppa/nptl/clone.S deleted file mode 100644 index 23750b3..0000000 --- a/sysdeps/unix/sysv/linux/hppa/nptl/clone.S +++ /dev/null @@ -1,3 +0,0 @@ -#define RESET_PID -#include <tcb-offsets.h> -#include "../clone.S" diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c b/sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c deleted file mode 100644 index 8f50fed..0000000 --- a/sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c +++ /dev/null @@ -1,20 +0,0 @@ -/* low level locking for pthread library. Generic futex-using version. - Copyright (C) 2003-2014 Free Software Foundation, Inc. - This file is part of the GNU C Library. - Contributed by Paul Mackerras <paulus@au.ibm.com>, 2003. - - 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, see - <http://www.gnu.org/licenses/>. */ - -#include "lowlevellock.c" diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S b/sysdeps/unix/sysv/linux/hppa/pt-vfork.S index 4bf14ef..4bf14ef 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S +++ b/sysdeps/unix/sysv/linux/hppa/pt-vfork.S diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread.h b/sysdeps/unix/sysv/linux/hppa/pthread.h index 8fbc1a4..8fbc1a4 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread.h +++ b/sysdeps/unix/sysv/linux/hppa/pthread.h diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h b/sysdeps/unix/sysv/linux/hppa/pthreadP.h index 744b5b0..744b5b0 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthreadP.h +++ b/sysdeps/unix/sysv/linux/hppa/pthreadP.h diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c b/sysdeps/unix/sysv/linux/hppa/pthread_cond_broadcast.c index 23526c6..23526c6 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_broadcast.c +++ b/sysdeps/unix/sysv/linux/hppa/pthread_cond_broadcast.c diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c b/sysdeps/unix/sysv/linux/hppa/pthread_cond_destroy.c index b90355c..b90355c 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_destroy.c +++ b/sysdeps/unix/sysv/linux/hppa/pthread_cond_destroy.c diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c b/sysdeps/unix/sysv/linux/hppa/pthread_cond_init.c index 38a282a..38a282a 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_init.c +++ b/sysdeps/unix/sysv/linux/hppa/pthread_cond_init.c diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c b/sysdeps/unix/sysv/linux/hppa/pthread_cond_signal.c index 2f6e8e1..2f6e8e1 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_signal.c +++ b/sysdeps/unix/sysv/linux/hppa/pthread_cond_signal.c diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c b/sysdeps/unix/sysv/linux/hppa/pthread_cond_timedwait.c index e53136b..e53136b 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_timedwait.c +++ b/sysdeps/unix/sysv/linux/hppa/pthread_cond_timedwait.c diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c b/sysdeps/unix/sysv/linux/hppa/pthread_cond_wait.c index c53bc98..c53bc98 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/pthread_cond_wait.c +++ b/sysdeps/unix/sysv/linux/hppa/pthread_cond_wait.c diff --git a/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h index 6f1c9d7..6f1c9d7 100644 --- a/sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h +++ b/sysdeps/unix/sysv/linux/hppa/sysdep-cancel.h |