Commit Graph

7 Commits

Author SHA1 Message Date
Carlos O'Donell
b80ec53691 Add correct aligment to pthread_*_t structures.
In the switch to NPTL the pthrad_mutex_t, pthread_cond_t,
and pthread_rwlock_t structures were made binary compatible
with the Linuxthread versions. However, their aligment when
embedded in other structures was changed. When rebuilding
libstdc++ this was detected, and the following changes return
the structures to their original Linuxthreads alignments.

2009-11-25  Carlos O'Donell  <carlos@codesourcery.com>

	* sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h:
	Use correct alignment for pthread_mutex_t, pthread_cond_t,
	and pthread_rwlock_t.
2009-11-25 18:18:56 -05:00
Carlos O'Donell
be0f2008ac Implement new NPTL POSIX Threads ABI for HPPA.
This version of the NPTL POSIX thread ABI for hppa does
not break backwards compatibility with the the old
Linuxthreads ABI, and is therefore suitable for release
by distributions.

	sysdeps/unix/sysv/linux/hppa/
	* internaltypes.h: New file.

	sysdeps/unix/sysv/linux/hppa/nptl/
	* pthreadP.h: New file.
	* pthread.h: New file.
	* pthread_cond_broadcast.c: New file.
	* pthread_cond_destroy.c: New file.
	* pthread_cond_init.c: New file.
	* pthread_cond_signal.c: New file.
	* pthread_cond_timedwait.c: New file.
	* pthread_cond_wait.c: New file.
	* bits/pthreadtypes.h: Make pthread_mutex_t,
	pthread_rwlock_t, and pthread_cond_t backwards
	compatible.
2009-09-08 14:32:53 -04:00
Carlos O'Donell
6f5d2fa8aa 2009-02-25 Carlos O'Donell <carlos@codesourcery.com>
* sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h:
	Adjust comment. Sort macros alphabetically. Remove old
	lock comments.
2009-02-26 21:36:13 +00:00
Carlos O'Donell
b599860dc8 2007-07-28 Carlos O'Donell <carlos@systemhalted.org>
* sysdeps/unix/sysv/linux/hppa/nptl/internaltypes.h: Remove.
	* sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h
	(pthread_rwlock_t): Split __flags into __pad2, __pad1, __shared,
	and __flags. Update comments. Update copyright.
	* sysdeps/hppa/nptl/tls.h: Define THREAD_GSCOPE_FLAG_UNUSED,
	THREAD_GSCOPE_FLAG_USED, THREAD_GSOPE_FLAG_WAIT,
	THREAD_GSCOPE_RSEET_FLAG, THREAD_GSCOPE_SET_FLAG, THREAD_GSCOPE_WAIT.
	Update copyright.
	* sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.c: Update copyright.
	(__lll_lock_wait): Call lll_futex_wait with LLL_SHARED.
	(__lll_timedlock_wait): Call lll_futex_timed_wait with LLL_SHARED.
	(lll_unlock_Wake_cb): Use lll_private_futex_wake.
	(___lll_timedwait_tid): Call lll_futex_timed_wait with LLL_SAHRED.
	* sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h: Define
	FUTEX_PRIVATE_FLAG, LLL_PRIVATE, LLL_SHARED, lll_private_futex_wait,
	lll_private_futex_timed_wait, lll_private_Futex_wake. Add private
	argument to lll_futex_wait, lll_futex_timed_wait, lll_futex_wake,
	lll_futex_wake_unlock.
	* sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c: Update copyright.
	(clear_once_control): Use lll_private_futex_wake.
	(__pthread_once): Use lll_private_futex_wait, and
	lll_private_futex_wake.

2007-07-28  Randolph Chung  <tausq@debian.org>

	* sysdeps/hppa/nptl/tls.h (DB_THREAD_SELF): Fix definition.
2007-07-28 21:26:44 +00:00
Carlos O'Donell
90e01f41f9 2007-05-17 Carlos O'Donell <carlos@systemhalted.org>
* sysdeps/unix/sysv/linux/hppa/nptl/bits/semaphore.h
	(SEM_VALUE_MAX): Remove.
2007-05-18 02:02:51 +00:00
Carlos O'Donell
259437280c 2006-07-24 Carlos O'Donell <carlos@systemhalted.org>
* sysdeps/unix/sysv/linux/hppa/nptl/bits/pthreadtypes.h:
	__SIZEOF_PTHREAD_COND_T is 64 bytes. Remove __PAD_ATOMIC_LOCK_T.
2006-07-25 01:58:10 +00:00
Carlos O'Donell
da1ea0f056 2006-07-13 Carlos O'Donell <carlos@systemhalted.org>
* sysdeps/unix/sysv/linux/hppa/xstat.c: New file.
	* sysdeps/unix/sysv/linux/hppa/lxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/hppa/fxstat.c: Likewise.
	* sysdeps/unix/sysv/linux/hppa/fxstatat.c: Likewise.

2006-07-13  Carlos O'Donell  <carlos@systemhalted.org>

	* sysdeps/hppa/nptl/Makefile: New file
	* sysdeps/hppa/nptl/jmpbuf-unwind.h: Likewise
	* sysdeps/hppa/nptl/pthread_spin_lock.c: Likewise
	* sysdeps/hppa/nptl/pthread_spin_trylock.c: Likewise
	* sysdeps/hppa/nptl/pthread_spin_unlock.c: Likewise
	* sysdeps/hppa/nptl/pthreaddef.h: Likewise
	* sysdeps/hppa/nptl/tcb-offsets.sym: Likewise
	* sysdeps/hppa/nptl/tls.h: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/bits: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/createthread.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/fork.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/internaltypes.h: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/libc-lowlevellock.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/lowlevellock.h: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/pt-initfini.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/pt-vfork.S: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/pthread_once.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/sysdep-cancel.h: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/unwind-forcedunwind.c: Likewise
	* sysdeps/unix/sysv/linux/hppa/nptl/unwind-resume.c: Likewise
2006-07-14 13:51:24 +00:00