This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH v6 0/8] Add support for ISO C threads.h
- From: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- To: libc-alpha at sourceware dot org
- Date: Tue, 27 Jun 2017 15:31:24 -0300
- Subject: [PATCH v6 0/8] Add support for ISO C threads.h
- Authentication-results: sourceware.org; auth=none
This is a new update for C11 threads support based on my previous [1]
version. The main changes from previous version are:
- Split the C11 implementation in 5 patches to simplify it: one for
thrd_* function, one for mtx_*, one for call_once, one for cnd_*,
one for tss_*, and one for the abilist files update.
- Fix some ChangeLog references for 2.25 version.
The idea is still to propose for 2.26. Based on previous discussion
there is no impending issue regarding C11 DRs related to threads to
avoid a POSIX based C11 thread implementation.
I tested this without regression with a full make/check on
x86_64-linux-gnu, i686-linux-gnu, powerpc64le-linux-gnu,
powerpc-linux-gnu, aarch64-linux-gnu, arm-linux-gnueabihf,
sparc64-linux-gnu, and sparcv9-linux-gnu.
[1] https://sourceware.org/ml/libc-alpha/2017-06/msg00853.html
Adhemerval Zanella (7):
nptl: Add C11 threads thrd_* functions
nptl: Add C11 threads mtx_* functions
nptl: Add C11 threads call_once functions
nptl: Add C11 threads cnd_* functions
nptl: Add C11 threads tss_* functions
nptl: Add abilist symbols for C11 threads
nptl: Add test cases for ISO C11 threads
Juan Manuel Torres Palma (1):
Add manual documentation for threads.h
ChangeLog | 174 ++++++++++
conform/Makefile | 7 +-
conform/data/threads.h-data | 57 ++++
include/stdc-predef.h | 3 -
manual/Makefile | 2 +-
manual/isothreads.texi | 355 +++++++++++++++++++++
nptl/Makefile | 15 +-
nptl/Versions | 9 +
nptl/call_once.c | 27 ++
nptl/cnd_broadcast.c | 28 ++
nptl/cnd_destroy.c | 28 ++
nptl/cnd_init.c | 27 ++
nptl/cnd_signal.c | 28 ++
nptl/cnd_timedwait.c | 31 ++
nptl/cnd_wait.c | 28 ++
nptl/descr.h | 2 +
nptl/mtx_destroy.c | 27 ++
nptl/mtx_init.c | 48 +++
nptl/mtx_lock.c | 28 ++
nptl/mtx_timedlock.c | 31 ++
nptl/mtx_trylock.c | 29 ++
nptl/mtx_unlock.c | 28 ++
nptl/pthreadP.h | 3 +
nptl/pthread_create.c | 18 +-
nptl/thrd_create.c | 30 ++
nptl/thrd_current.c | 26 ++
nptl/thrd_detach.c | 30 ++
nptl/thrd_equal.c | 26 ++
nptl/thrd_exit.c | 27 ++
nptl/thrd_join.c | 32 ++
nptl/thrd_priv.h | 46 +++
nptl/thrd_sleep.c | 41 +++
nptl/thrd_yield.c | 29 ++
nptl/tss_create.c | 29 ++
nptl/tss_delete.c | 27 ++
nptl/tss_get.c | 27 ++
nptl/tss_set.c | 28 ++
nptl/tst-call-once.c | 66 ++++
nptl/tst-cnd-basic.c | 68 ++++
nptl/tst-cnd-broadcast.c | 83 +++++
nptl/tst-cnd-timedwait.c | 70 ++++
nptl/tst-mtx-basic.c | 73 +++++
nptl/tst-mtx-recursive.c | 45 +++
nptl/tst-mtx-timedlock.c | 98 ++++++
nptl/tst-mtx-trylock.c | 90 ++++++
nptl/tst-thrd-detach.c | 52 +++
nptl/tst-thrd-sleep.c | 51 +++
nptl/tst-tss-basic.c | 75 +++++
sysdeps/nptl/threads.h | 200 ++++++++++++
sysdeps/unix/sysv/linux/aarch64/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/alpha/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/arm/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/hppa/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/i386/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/ia64/libpthread.abilist | 26 ++
.../sysv/linux/m68k/coldfire/libpthread.abilist | 26 ++
.../unix/sysv/linux/m68k/m680x0/libpthread.abilist | 26 ++
.../unix/sysv/linux/microblaze/libpthread.abilist | 26 ++
.../unix/sysv/linux/mips/mips32/libpthread.abilist | 26 ++
.../unix/sysv/linux/mips/mips64/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/nios2/libpthread.abilist | 26 ++
.../linux/powerpc/powerpc32/libpthread.abilist | 26 ++
.../linux/powerpc/powerpc64/libpthread-le.abilist | 26 ++
.../linux/powerpc/powerpc64/libpthread.abilist | 26 ++
.../sysv/linux/s390/s390-32/libpthread.abilist | 26 ++
.../sysv/linux/s390/s390-64/libpthread.abilist | 26 ++
sysdeps/unix/sysv/linux/sh/libpthread.abilist | 26 ++
.../sysv/linux/sparc/sparc32/libpthread.abilist | 26 ++
.../sysv/linux/sparc/sparc64/libpthread.abilist | 26 ++
.../linux/tile/tilegx/tilegx32/libpthread.abilist | 26 ++
.../linux/tile/tilegx/tilegx64/libpthread.abilist | 26 ++
.../sysv/linux/tile/tilepro/libpthread.abilist | 26 ++
.../unix/sysv/linux/x86_64/64/libpthread.abilist | 26 ++
.../unix/sysv/linux/x86_64/x32/libpthread.abilist | 26 ++
74 files changed, 3040 insertions(+), 12 deletions(-)
create mode 100644 conform/data/threads.h-data
create mode 100644 manual/isothreads.texi
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_priv.h
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-detach.c
create mode 100644 nptl/tst-thrd-sleep.c
create mode 100644 nptl/tst-tss-basic.c
create mode 100644 sysdeps/nptl/threads.h
--
2.7.4