[PATCH 0/5] Add support for C11 threads.h
Juan Manuel Torres Palma
j.m.torrespalma@gmail.com
Mon Aug 10 14:38:00 GMT 2015
From: Juan Manuel Torres Palma <jmtorrespalma@gmail.com>
This patchset adds support for the header threads.h defined in ISO C11
standard. The implementation is based on POSIX threads because both
APIs have many similarities and many of their functions have exactly
the same functionality.
Juan Manuel Torres Palma (5):
Clean pthread types namespace for all archs.
Clean pthread functions namespaces for C11 threads
Add C11 threads.h support.
Add manual documentation for threads.h
Add test cases for ISO C11 threads
bits/pthreadtypes-common.h | 43 +++
bits/thread-shared-types.h | 1 +
conform/Makefile | 7 +-
conform/data/threads.h-data | 56 ++++
include/stdc-predef.h | 2 -
include/threads.h | 198 +++++++++++++
manual/Makefile | 3 +-
manual/isothreads.texi | 326 +++++++++++++++++++++
misc/Versions | 1 +
nptl/Makefile | 20 +-
nptl/Versions | 16 +-
nptl/__thrd_err_map.h | 43 +++
nptl/allocatestack.c | 22 +-
nptl/call_once.c | 29 ++
nptl/cnd_broadcast.c | 30 ++
nptl/cnd_destroy.c | 29 ++
nptl/cnd_init.c | 29 ++
nptl/cnd_signal.c | 30 ++
nptl/cnd_timedwait.c | 33 +++
nptl/cnd_wait.c | 31 ++
nptl/mtx_destroy.c | 28 ++
nptl/mtx_init.c | 54 ++++
nptl/mtx_lock.c | 31 ++
nptl/mtx_timedlock.c | 35 +++
nptl/mtx_trylock.c | 31 ++
nptl/mtx_unlock.c | 31 ++
nptl/pthreadP.h | 6 +
nptl/pthread_cancel.c | 5 +-
nptl/pthread_create.c | 18 +-
nptl/pthread_detach.c | 3 +-
nptl/pthread_equal.c | 2 +-
nptl/pthread_exit.c | 4 +-
nptl/pthread_getspecific.c | 2 +-
nptl/pthread_join.c | 3 +-
nptl/pthread_key_create.c | 2 +-
nptl/pthread_key_delete.c | 3 +-
nptl/pthread_mutex_destroy.c | 2 +-
nptl/pthread_mutex_init.c | 2 +-
nptl/pthread_mutex_lock.c | 2 +-
nptl/pthread_mutex_timedlock.c | 3 +-
nptl/pthread_mutex_trylock.c | 2 +-
nptl/pthread_mutex_unlock.c | 2 +-
nptl/pthread_mutexattr_init.c | 2 +-
nptl/pthread_mutexattr_settype.c | 2 +-
nptl/pthread_self.c | 2 +-
nptl/pthread_setspecific.c | 2 +-
nptl/thrd_create.c | 32 ++
nptl/thrd_current.c | 28 ++
nptl/thrd_detach.c | 32 ++
nptl/thrd_equal.c | 28 ++
nptl/thrd_exit.c | 34 +++
nptl/thrd_join.c | 48 +++
nptl/thrd_sleep.c | 34 +++
nptl/thrd_yield.c | 29 ++
nptl/tpp.c | 4 +-
nptl/tss_create.c | 32 ++
nptl/tss_delete.c | 30 ++
nptl/tss_get.c | 30 ++
nptl/tss_set.c | 30 ++
nptl/tst-call-once.c | 77 +++++
nptl/tst-cnd-basic.c | 92 ++++++
nptl/tst-cnd-broadcast.c | 95 ++++++
nptl/tst-cnd-timedwait.c | 104 +++++++
nptl/tst-mtx-basic.c | 112 +++++++
nptl/tst-mtx-recursive.c | 57 ++++
nptl/tst-mtx-timedlock.c | 124 ++++++++
nptl/tst-mtx-trylock.c | 114 +++++++
nptl/tst-thrd-basic.c | 63 ++++
nptl/tst-thrd-detach.c | 61 ++++
nptl/tst-thrd-sleep.c | 71 +++++
nptl/tst-tss-basic.c | 70 +++++
posix/Makefile | 3 +-
sysdeps/aarch64/nptl/bits/pthreadtypes.h | 42 +--
sysdeps/aarch64/nptl/bits/thread-shared-types.h | 75 +++++
sysdeps/arm/nptl/bits/pthreadtypes.h | 45 +--
sysdeps/arm/nptl/bits/thread-shared-types.h | 78 +++++
sysdeps/hppa/nptl/bits/pthreadtypes.h | 73 +----
sysdeps/hppa/nptl/bits/thread-shared-types.h | 98 +++++++
sysdeps/ia64/nptl/bits/pthreadtypes.h | 44 +--
sysdeps/ia64/nptl/bits/thread-shared-types.h | 73 +++++
sysdeps/m68k/nptl/bits/pthreadtypes.h | 45 +--
sysdeps/m68k/nptl/bits/thread-shared-types.h | 80 +++++
sysdeps/microblaze/nptl/bits/pthreadtypes.h | 43 +--
sysdeps/microblaze/nptl/bits/thread-shared-types.h | 76 +++++
sysdeps/mips/nptl/bits/pthreadtypes.h | 64 +---
sysdeps/mips/nptl/bits/thread-shared-types.h | 99 +++++++
sysdeps/nacl/libpthread.abilist | 27 ++
sysdeps/nios2/nptl/bits/pthreadtypes.h | 45 +--
sysdeps/nios2/nptl/bits/thread-shared-types.h | 77 +++++
sysdeps/posix/gethostname.c | 2 +-
sysdeps/s390/nptl/bits/pthreadtypes.h | 89 +-----
sysdeps/s390/nptl/bits/thread-shared-types.h | 123 ++++++++
sysdeps/sh/nptl/bits/pthreadtypes.h | 45 +--
sysdeps/sh/nptl/bits/thread-shared-types.h | 78 +++++
sysdeps/sparc/nptl/bits/pthreadtypes.h | 64 +---
sysdeps/sparc/nptl/bits/thread-shared-types.h | 103 +++++++
sysdeps/tile/nptl/bits/pthreadtypes.h | 63 +---
sysdeps/tile/nptl/bits/thread-shared-types.h | 101 +++++++
sysdeps/unix/sysv/linux/aarch64/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/alpha/bits/pthreadtypes.h | 44 +--
.../sysv/linux/alpha/bits/thread-shared-types.h | 77 +++++
sysdeps/unix/sysv/linux/alpha/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/arm/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/hppa/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/i386/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/ia64/libpthread.abilist | 27 ++
.../sysv/linux/m68k/coldfire/libpthread.abilist | 27 ++
.../unix/sysv/linux/m68k/m680x0/libpthread.abilist | 27 ++
.../unix/sysv/linux/microblaze/libpthread.abilist | 27 ++
.../unix/sysv/linux/mips/mips32/libpthread.abilist | 27 ++
.../unix/sysv/linux/mips/mips64/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/nios2/libpthread.abilist | 27 ++
.../unix/sysv/linux/powerpc/bits/pthreadtypes.h | 59 +---
.../sysv/linux/powerpc/bits/thread-shared-types.h | 110 +++++++
.../linux/powerpc/powerpc32/libpthread.abilist | 27 ++
.../linux/powerpc/powerpc64/libpthread.abilist | 27 ++
.../sysv/linux/s390/s390-32/libpthread.abilist | 27 ++
.../sysv/linux/s390/s390-64/libpthread.abilist | 27 ++
sysdeps/unix/sysv/linux/sh/libpthread.abilist | 27 ++
.../sysv/linux/sparc/sparc32/libpthread.abilist | 27 ++
.../sysv/linux/sparc/sparc64/libpthread.abilist | 27 ++
.../linux/tile/tilegx/tilegx32/libpthread.abilist | 27 ++
.../linux/tile/tilegx/tilegx64/libpthread.abilist | 27 ++
.../sysv/linux/tile/tilepro/libpthread.abilist | 27 ++
.../unix/sysv/linux/x86_64/64/libpthread.abilist | 27 ++
.../unix/sysv/linux/x86_64/x32/libpthread.abilist | 27 ++
sysdeps/x86/bits/pthreadtypes.h | 76 +----
sysdeps/x86/bits/thread-shared-types.h | 116 ++++++++
128 files changed, 4667 insertions(+), 877 deletions(-)
create mode 100644 bits/pthreadtypes-common.h
create mode 100644 bits/thread-shared-types.h
create mode 100644 conform/data/threads.h-data
create mode 100644 include/threads.h
create mode 100644 manual/isothreads.texi
create mode 100644 nptl/__thrd_err_map.h
create mode 100644 nptl/call_once.c
create mode 100644 nptl/cnd_broadcast.c
create mode 100644 nptl/cnd_destroy.c
create mode 100644 nptl/cnd_init.c
create mode 100644 nptl/cnd_signal.c
create mode 100644 nptl/cnd_timedwait.c
create mode 100644 nptl/cnd_wait.c
create mode 100644 nptl/mtx_destroy.c
create mode 100644 nptl/mtx_init.c
create mode 100644 nptl/mtx_lock.c
create mode 100644 nptl/mtx_timedlock.c
create mode 100644 nptl/mtx_trylock.c
create mode 100644 nptl/mtx_unlock.c
create mode 100644 nptl/thrd_create.c
create mode 100644 nptl/thrd_current.c
create mode 100644 nptl/thrd_detach.c
create mode 100644 nptl/thrd_equal.c
create mode 100644 nptl/thrd_exit.c
create mode 100644 nptl/thrd_join.c
create mode 100644 nptl/thrd_sleep.c
create mode 100644 nptl/thrd_yield.c
create mode 100644 nptl/tss_create.c
create mode 100644 nptl/tss_delete.c
create mode 100644 nptl/tss_get.c
create mode 100644 nptl/tss_set.c
create mode 100644 nptl/tst-call-once.c
create mode 100644 nptl/tst-cnd-basic.c
create mode 100644 nptl/tst-cnd-broadcast.c
create mode 100644 nptl/tst-cnd-timedwait.c
create mode 100644 nptl/tst-mtx-basic.c
create mode 100644 nptl/tst-mtx-recursive.c
create mode 100644 nptl/tst-mtx-timedlock.c
create mode 100644 nptl/tst-mtx-trylock.c
create mode 100644 nptl/tst-thrd-basic.c
create mode 100644 nptl/tst-thrd-detach.c
create mode 100644 nptl/tst-thrd-sleep.c
create mode 100644 nptl/tst-tss-basic.c
create mode 100644 sysdeps/aarch64/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/arm/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/hppa/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/ia64/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/m68k/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/microblaze/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/mips/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/nios2/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/s390/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/sh/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/sparc/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/tile/nptl/bits/thread-shared-types.h
create mode 100644 sysdeps/unix/sysv/linux/alpha/bits/thread-shared-types.h
create mode 100644 sysdeps/unix/sysv/linux/powerpc/bits/thread-shared-types.h
create mode 100644 sysdeps/x86/bits/thread-shared-types.h
--
2.1.0
More information about the Libc-alpha
mailing list