libpthread_CSRC := $(filter-out $(SH_PTHREAD_EXCLUDE_LIST),$(libpthread_CSRC))
endif
+ifeq ($(TARGET_ARCH),x86_64)
+X64_PTHREAD_EXCLUDE_LIST = pthread_spin_unlock.c pthread_spin_init.c \
+ pthread_barrier_wait.c pthread_cond_broadcast.c \
+ pthread_cond_signal.c pthread_rwlock_timedrdlock.c \
+ pthread_rwlock_timedwrlock.c pthread_rwlock_unlock.c pthread_rwlock_wrlock.c \
+ pthread_rwlock_rdlock.c pthread_cond_timedwait.c
+
+libpthread_CSRC := $(filter-out $(X64_PTHREAD_EXCLUDE_LIST),$(libpthread_CSRC))
+endif
+
+
CFLAGS-pt-common = -DNOT_IN_libc=1 $(SSP_ALL_CFLAGS)
sem_post.S sem_timedwait.S \
sem_trywait.S sem_wait.S pthread_rwlock_rdlock.S pthread_rwlock_wrlock.S \
pthread_rwlock_timedrdlock.S pthread_rwlock_timedwrlock.S pthread_rwlock_unlock.S \
- pthread_cond_timedwait.S pthread_cond_wait.S
+ pthread_cond_timedwait.S pthread_cond_wait.S pthread_spin_unlock.S
libc_a_SSRC += libc-lowlevellock.S
syscall
jmp 10b
.size __pthread_cond_broadcast, .-__pthread_cond_broadcast
-versioned_symbol (libpthread, __pthread_cond_broadcast, pthread_cond_broadcast,
- GLIBC_2_3_2)
+weak_alias(__pthread_cond_broadcast, pthread_cond_broadcast)
+
callq __lll_mutex_unlock_wake
jmp 6b
.size __pthread_cond_signal, .-__pthread_cond_signal
-versioned_symbol (libpthread, __pthread_cond_signal, pthread_cond_signal,
- GLIBC_2_3_2)
+weak_alias(__pthread_cond_signal, pthread_cond_signal)
#include <sysdep.h>
#include <lowlevelcond.h>
#include <pthread-errnos.h>
+#include <tcb-offsets.h>
#ifdef UP
# define LOCK
#endif
.LENDCODE:
.size __pthread_cond_timedwait, .-__pthread_cond_timedwait
-versioned_symbol (libpthread, __pthread_cond_timedwait, pthread_cond_timedwait,
- GLIBC_2_3_2)
+weak_alias(__pthread_cond_timedwait, pthread_cond_timedwait)
.section .eh_frame,"a",@progbits
#include <sysdep.h>
#include <lowlevelcond.h>
+#include <tcb-offsets.h>
#ifdef UP
# define LOCK
jmp 14b
.LENDCODE:
.size __pthread_cond_wait, .-__pthread_cond_wait
-versioned_symbol (libpthread, __pthread_cond_wait, pthread_cond_wait,
- GLIBC_2_3_2)
+weak_alias(__pthread_cond_wait, pthread_cond_wait)
.section .eh_frame,"a",@progbits
#include <sysdep.h>
#include <lowlevelrwlock.h>
#include <pthread-errnos.h>
+#include <tcb-offsets.h>
#define FUTEX_WAIT 0
#include <sysdep.h>
#include <lowlevelrwlock.h>
#include <pthread-errnos.h>
+#include <tcb-offsets.h>
#define FUTEX_WAIT 0
#include <sysdep.h>
#include <lowlevelrwlock.h>
#include <pthread-errnos.h>
+#include <tcb-offsets.h>
#define FUTEX_WAIT 0
#include <sysdep.h>
#include <lowlevelrwlock.h>
#include <pthread-errnos.h>
+#include <tcb-offsets.h>
#define FUTEX_WAIT 0
-#include <nptl/sysdeps/x86_64/pthread_spin_unlock.S>
+#include <sysdeps/x86_64/pthread_spin_unlock.S>
orl $-1, %eax
retq
.size sem_trywait,.-sem_trywait
- versioned_symbol(libpthread, __new_sem_trywait, sem_trywait, GLIBC_2_1)