diff options
Diffstat (limited to 'nptl')
-rw-r--r-- | nptl/Makefile | 2 | ||||
-rw-r--r-- | nptl/Versions | 5 | ||||
-rw-r--r-- | nptl/pthread_barrier_wait.c | 14 |
3 files changed, 16 insertions, 5 deletions
diff --git a/nptl/Makefile b/nptl/Makefile index 54cf04b..90c8f2e 100644 --- a/nptl/Makefile +++ b/nptl/Makefile @@ -75,6 +75,7 @@ routines = \ pthread_attr_setsigmask_internal \ pthread_barrier_destroy \ pthread_barrier_init \ + pthread_barrier_wait \ pthread_cleanup_upto \ pthread_cond_broadcast \ pthread_cond_destroy \ @@ -189,7 +190,6 @@ libpthread-routines = \ pthread_attr_setstack \ pthread_attr_setstackaddr \ pthread_attr_setstacksize \ - pthread_barrier_wait \ pthread_barrierattr_destroy \ pthread_barrierattr_getpshared \ pthread_barrierattr_init \ diff --git a/nptl/Versions b/nptl/Versions index 4716c3f..944c2e1 100644 --- a/nptl/Versions +++ b/nptl/Versions @@ -108,6 +108,7 @@ libc { __pthread_rwlock_wrlock; pthread_barrier_destroy; pthread_barrier_init; + pthread_barrier_wait; pthread_condattr_getpshared; pthread_condattr_setpshared; pthread_mutex_timedlock; @@ -222,6 +223,7 @@ libc { mtx_unlock; pthread_barrier_destroy; pthread_barrier_init; + pthread_barrier_wait; pthread_cond_clockwait; pthread_condattr_getclock; pthread_condattr_getpshared; @@ -312,6 +314,7 @@ libc { __pthread_attr_setaffinity_np; __pthread_attr_setsigmask_internal; __pthread_barrier_init; + __pthread_barrier_wait; __pthread_cleanup_pop; __pthread_cleanup_push; __pthread_cleanup_upto; @@ -372,7 +375,6 @@ libpthread { GLIBC_2.2 { pthread_attr_getstack; pthread_attr_setstack; - pthread_barrier_wait; pthread_barrierattr_destroy; pthread_barrierattr_init; pthread_barrierattr_setpshared; @@ -448,7 +450,6 @@ libpthread { GLIBC_PRIVATE { __libpthread_freeres; - __pthread_barrier_wait; __pthread_clock_gettime; __pthread_clock_settime; __pthread_get_minstack; diff --git a/nptl/pthread_barrier_wait.c b/nptl/pthread_barrier_wait.c index 90ffd67..4f8abe1 100644 --- a/nptl/pthread_barrier_wait.c +++ b/nptl/pthread_barrier_wait.c @@ -20,6 +20,7 @@ #include <sysdep.h> #include <futex-internal.h> #include <pthreadP.h> +#include <shlib-compat.h> /* Wait on the barrier. @@ -92,7 +93,7 @@ If we do not spin, it is quite likely that at least some other threads will have called futex_wait already. */ int -__pthread_barrier_wait (pthread_barrier_t *barrier) +___pthread_barrier_wait (pthread_barrier_t *barrier) { struct pthread_barrier *bar = (struct pthread_barrier *) barrier; @@ -220,4 +221,13 @@ __pthread_barrier_wait (pthread_barrier_t *barrier) /* Return a special value for exactly one thread per round. */ return i % count == 0 ? PTHREAD_BARRIER_SERIAL_THREAD : 0; } -weak_alias (__pthread_barrier_wait, pthread_barrier_wait) +versioned_symbol (libc, ___pthread_barrier_wait, pthread_barrier_wait, + GLIBC_2_34); +versioned_symbol (libc, ___pthread_barrier_wait, __pthread_barrier_wait, + GLIBC_PRIVATE); +libc_hidden_ver (___pthread_barrier_wait, __pthread_barrier_wait) + +#if OTHER_SHLIB_COMPAT (libpthread, GLIBC_2_2, GLIBC_2_34) +compat_symbol (libpthread, ___pthread_barrier_wait, pthread_barrier_wait, + GLIBC_2_2); +#endif |