about summary refs log tree commit diff
path: root/nptl/sysdeps/unix/sysv
Commit message (Collapse)AuthorAgeFilesLines
* Update.Ulrich Drepper2003-03-1811-505/+86
| | | | | | | | | | | | | | | | | | | | * sysdeps/unix/sysv/linux/ia64/pthread_once.c: Use __builtin_expect. Use __lll_add instead of spelling it out. Use protected symbol names. * sysdeps/unix/sysv/linux/ia64/sem_post.c: Use __builtin_expect. Use __lll_add. * sysdeps/unix/sysv/linux/ia64/lowlevellock.h (__lll_compare_and_swap): Renamed from lll_compare_and_swap. Use new name where necessary. (__lll_add): Defined. (__lll_dec_if_positive): Defined. (__lll_test_and_set): Defined. * sysdeps/ia64/pthread_spin_init.c: Removed. * sysdeps/unix/sysv/linux/ia64/lowlevelmutex.c: Removed. * sysdeps/unix/sysv/linux/ia64/sem_trywait.c: Removed. * sysdeps/unix/sysv/linux/ia64/sem_wait.c: Removed. * sysdeps/unix/sysv/linux/ia64/lowlevellock.c: Removed. * sysdeps/unix/sysv/linux/ia64/libc-lowlevellock.c: Removed. * sysdeps/unix/sysv/linux/ia64/libc-lowlevelmutex.c: Removed. * sysdeps/unix/sysv/linux/ia64/sem_timedwait.c: Removed.
* Update.Ulrich Drepper2003-03-181-0/+1
| | | | | | | 2003-03-17 Ulrich Drepper <drepper@redhat.com> * sysdeps/generic/libc-start.c [!SHARED && !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
* pthread_spin_unlock implementation for Linux/i386.Ulrich Drepper2003-03-181-0/+1
|
* 2003-03-17 Roland McGrath <roland@redhat.com>Roland McGrath2003-03-181-1/+4
| | | | | * sysdeps/unix/sysv/linux/lowlevellock.c (__lll_lock_wait): Formatting tweaks.
* (lll_unlock_wake_cb): Correct last patch. (__lll_timedwait_tid): Don't check ↵Ulrich Drepper2003-03-182-4/+7
| | | | abstime for NULL pointer.
* Add __builtin_expect where appropriate.Ulrich Drepper2003-03-184-138/+130
|
* PowerPC port contributed by Paul Mackerras <paulus@samba.org>.Roland McGrath2003-03-178-7/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sysdeps/pthread/pthread_spin_init.c: New file. * sysdeps/pthread/pthread_spin_unlock.c: New file. * sysdeps/powerpc/Makefile: New file. * sysdeps/powerpc/pthread_spin_lock.c: New file. * sysdeps/powerpc/pthread_spin_trylock.c: New file. * sysdeps/powerpc/pthreaddef.h: New file. * sysdeps/powerpc/tcb-offsets.sym: New file. * sysdeps/powerpc/td_ta_map_lwp2thr.c: New file. * sysdeps/powerpc/tls.h: New file. * sysdeps/powerpc/bits/atomic.h: New file. * sysdeps/unix/sysv/linux/libc-lowlevelmutex.c: New file. * sysdeps/unix/sysv/linux/libc-lowlevellock.c: New file. * sysdeps/unix/sysv/linux/lowlevellock.c: New file. * sysdeps/unix/sysv/linux/lowlevelmutex.c: New file. * sysdeps/unix/sysv/linux/sem_post.c: New file. * sysdeps/unix/sysv/linux/sem_timedwait.c: New file. * sysdeps/unix/sysv/linux/sem_trywait.c: New file. * sysdeps/unix/sysv/linux/sem_wait.c: New file. * sysdeps/unix/sysv/linux/powerpc/Makefile: New file. * sysdeps/unix/sysv/linux/powerpc/createthread.c: New file. * sysdeps/unix/sysv/linux/powerpc/fork.c: New file. * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: New file. * sysdeps/unix/sysv/linux/powerpc/pt-vfork.S: New file. * sysdeps/unix/sysv/linux/powerpc/pthread_once.c: New file. * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: New file. * sysdeps/unix/sysv/linux/powerpc/bits/semaphore.h: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: New file. * sysdeps/unix/sysv/linux/ia64/lowlevellock.c: Use __gettimeofday, not gettimeofday. * sysdeps/unix/sysv/linux/ia64/lowlevelmutex.c: Likewise. * sysdeps/unix/sysv/linux/ia64/sem_timedwait.c: Likewise. * sysdeps/unix/sysv/linux/s390/lowlevellock.c: Likewise. * sysdeps/unix/sysv/linux/s390/lowlevelmutex.c: Likewise. * sysdeps/unix/sysv/linux/s390/sem_timedwait.c: Likewise.
* 2003-03-17 Roland McGrath <roland@redhat.com>Roland McGrath2003-03-1716-0/+1147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PowerPC port contributed by Paul Mackerras <paulus@samba.org>. * sysdeps/pthread/pthread_spin_init.c: New file. * sysdeps/pthread/pthread_spin_unlock.c: New file. * sysdeps/powerpc/Makefile: New file. * sysdeps/powerpc/pthread_spin_lock.c: New file. * sysdeps/powerpc/pthread_spin_trylock.c: New file. * sysdeps/powerpc/pthreaddef.h: New file. * sysdeps/powerpc/tcb-offsets.sym: New file. * sysdeps/powerpc/td_ta_map_lwp2thr.c: New file. * sysdeps/powerpc/tls.h: New file. * sysdeps/powerpc/bits/atomic.h: New file. * sysdeps/unix/sysv/linux/libc-lowlevelmutex.c: New file. * sysdeps/unix/sysv/linux/libc-lowlevellock.c: New file. * sysdeps/unix/sysv/linux/lowlevellock.c: New file. * sysdeps/unix/sysv/linux/sem_post.c: New file. * sysdeps/unix/sysv/linux/sem_timedwait.c: New file. * sysdeps/unix/sysv/linux/sem_trywait.c: New file. * sysdeps/unix/sysv/linux/powerpc/Makefile: New file. * sysdeps/unix/sysv/linux/powerpc/createthread.c: New file. * sysdeps/unix/sysv/linux/powerpc/fork.c: New file. * sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: New file. * sysdeps/unix/sysv/linux/powerpc/pt-vfork.S: New file. * sysdeps/unix/sysv/linux/powerpc/pthread_once.c: New file. * sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: New file. * sysdeps/unix/sysv/linux/powerpc/bits/semaphore.h: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: New file. * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep-cancel.h: New file.
* Update.Ulrich Drepper2003-03-1710-46/+39
| | | | | | | | | | | 2003-03-17 Ulrich Drepper <drepper@redhat.com> * localedata/en_ZA: hanged %x for LC_TIME to use dd/mm/ccyy. Added ^ to LC_MESSAGES regex "^[yY].*". Confirmed LC_PAPER adn LC_MEASUREMENT settings. Added country and language names to LC_ADDRESS. Added missing info for LC_TELEPHONE. Patch by Dwayne Bailey <dwayne@obsidian.co.za>.
* Load correct registers.Ulrich Drepper2003-03-171-5/+5
|
* (__lll_lock_wait): Remove jump prediction suffix.Ulrich Drepper2003-03-174-14/+17
|
* Update.Ulrich Drepper2003-03-161-7/+21
| | | | | | | | 2003-03-16 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here, not at function level. * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
* Update.Ulrich Drepper2003-03-162-6/+12
| | | | | | 2003-03-16 Ulrich Drepper <drepper@redhat.com> * tst-rwlock6.c: Add some more status output.
* Really use R12 and r13.Ulrich Drepper2003-03-161-6/+6
|
* More random patches.Ulrich Drepper2003-03-155-14/+48
|
* * sysdeps/unix/sysv/linux/s390/s390-32/sysdep-cancel.hJakub Jelinek2003-03-151-1/+1
| | | | | | | | | (SINGLE_THREAD): Use `header' prefix instead of `header.data'. * sysdeps/sh/tcb-offsets.sym (MULTIPLE_THREADS_OFFSET): Likewise. * sysdeps/sh/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define. * sysdeps/unix/sysv/linux/ia64/sysdep-cancel.h (SINGLE_THREAD_P): Use `header.' prefix. * sysdeps/ia64/tcb-offsets.sym (MULTIPLE_THREADS_OFFSET): Likewise.
* (SINGLE_THREAD): Use `header' prefix instead of `header.data'.Jakub Jelinek2003-03-151-1/+1
|
* Use 64-bit loading.Ulrich Drepper2003-03-151-1/+1
|
* Update.Ulrich Drepper2003-03-151-1/+2
| | | | | | | | | | 2003-03-15 Ulrich Drepper <drepper@redhat.com> * sysdeps/x86_64/pthreaddef.h (CURRENT_STACK_FRAME): Don't use __builtin_frame_address, use stack pointer. * sysdeps/unix/sysv/linux/jmp-unwind.c: Use CURRENT_STACK_FRAME instead of __builtin_frame_pointer.
* Update.Ulrich Drepper2003-03-1512-144/+177
| | | | | * tst-basic1.c (do_test): Add cast to avoid warning. * tst-basic2.c (do_test): Likewise.
* Use correct amount of stack correction.Ulrich Drepper2003-03-141-1/+1
|
* 2003-03-14 Roland McGrath <roland@redhat.com>Roland McGrath2003-03-143-3/+5
| | | | | | | | | | | | | | | | | | | | | | * descr.h (struct pthread): Move the union out of [!TLS_DTV_AT_TP], so we always define the padding space. [!TLS_DTV_AT_TP]: Give tcbhead_t field a name, `header', since GCC stopped supporting its own extensions fully. [TLS_MULTIPLE_THREADS_IN_TCB]: Put `multiple_threads' inside a wrapper struct also called `header', so `header.multiple_threads' is the field name to use on all machines. * allocatestack.c (allocate_stack): Use `header.' prefix. * sysdeps/pthread/createthread.c (create_thread): Likewise. * pthread_create.c (__pthread_create_2_1): Likewise. * sysdeps/i386/tls.h (INSTALL_NEW_DTV, THREAD_DTV): Likewise. (THREAD_SELF): Likewise. * sysdeps/x86_64/tls.h: Likewise. * sysdeps/unix/sysv/linux/i386/sysdep-cancel.h (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/sh/sysdep-cancel.h (SINGLE_THREAD_P): Likewise. * sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h (SINGLE_THREAD_P): Likewise.
* * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-lineRoland McGrath2003-03-131-43/+24
| | | | entries in the map file match too.
* 2003-03-13 Jakub Jelinek <jakub@redhat.com>Roland McGrath2003-03-131-0/+2
| | | | | * sysdeps/unix/sysv/linux/fork.c (__libc_fork): Only declare and set PPID if [! NDEBUG].
* Update.Ulrich Drepper2003-03-131-1/+1
| | | | | | | | | | | | | | | | | | | 2003-03-13 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN, ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3, ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define. (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it. Make syscall arguments clobbered by the syscall. (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5, ASM_ARGS_6): Change constraints from r to index of corresponding output register. * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap ptid and ctid to match kernel. * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise. * sysdeps/powerpc/powerpc64/elf/configure.in: Remove * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
* Update.Ulrich Drepper2003-03-137-32/+46
| | | | | | | | | | | | | | | | | | | | | * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add libc_multiple_threads. * sysdeps/unix/sysv/linux/libc_pthread_init.c: Move definition of __libc_multiple_threads to... * sysdeps/unix/sysv/linux/libc_multiple_threads.c: ...here. New file. * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Remove unnecessary versioning. * sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_once.S (__pthread_once_internal): Define. * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Use shlib-compat.h macros instead of .symver directly. * sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise.
* Use shlib-compat.h macros instead of .symver directly.Ulrich Drepper2003-03-133-6/+6
|
* Update.Ulrich Drepper2003-03-128-9/+413
| | | | | | | | | | | | | | | | | | | | | | | | | 2003-03-12 Ulrich Drepper <drepper@redhat.com> * sysdeps/x86_64/tls.h [__ASSEMBLER__]: Include tcb-offsets.h. * sysdeps/x86_64/tcb-offsets.sym: New file. * sysdeps/x86_64/Makefile: New file. * sysdeps/i386/tcb-offsets.sym: Add SELF. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Use SELF to access own pthread_t in TCB. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedrdlock.S: New file. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_timedwrlock.S: New file. * sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h (pthread_cond_t): Add padding.
* (pthread_cond_t): Add padding.Ulrich Drepper2003-03-121-0/+1
|
* * pthread-errnos.sym: New file.Roland McGrath2003-03-123-10/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Makefile (gen-as-const-headers): New variable, list that file. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Include generated header <pthread-errnos.h> instead of defining errno values here. * sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/sh/lowlevelmutex.S: Likewise. * sysdeps/i386/i486/pthread_spin_trylock.S: Likewise. * sysdeps/x86_64/pthread_spin_trylock.S: Likewise. * sysdeps/sh/pthread_spin_trylock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/fork.c: Add an assert to check that CLONE_CHILD_SETTID worked.
* 2003-03-12 Roland McGrath <roland@redhat.com>Roland McGrath2003-03-1229-102/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * pthread-errnos.sym: New file. * Makefile (gen-as-const-headers): New variable, list that file. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Include generated header <pthread-errnos.h> instead of defining errno values here. * sysdeps/unix/sysv/linux/i386/i486/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise. * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/sh/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_wrlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedwrlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_timedrdlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_cond_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/sh/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/sh/lowlevellock.S: Likewise. * sysdeps/i386/i486/pthread_spin_trylock.S: Likewise. * sysdeps/x86_64/pthread_spin_trylock.S: Likewise. * sysdeps/sh/pthread_spin_trylock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: Likewise.
* Update.Ulrich Drepper2003-03-123-0/+474
| | | | | | * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_rdlock.S: New file. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_wrlock.S: New file. * sysdeps/unix/sysv/linux/x86_64/pthread_rwlock_unlock.S: New file.
* Update.Ulrich Drepper2003-03-126-10/+259
| | | | | | | | | | | | | | | | | | 2003-03-12 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedwrlock.S (__pthread_rwlock_timedwrlock): Add missing opcode suffix. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_timedrdlock.S (__pthread_rwlock_timedrdlock): Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_wrlock.S (__pthread_rwlock_wrlock): Likewise. * sysdeps/unix/sysv/linux/i386/i486/pthread_rwlock_rdlock.S (__pthread_rwlock_rdlock): Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: New file. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Return result of lock re-get if it fails.
* Return result of lock re-get if it fails.Ulrich Drepper2003-03-121-2/+3
|
* Update.Ulrich Drepper2003-03-1211-27/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: Fix asm syntax. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: Likewise. * sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. * sysdeps/x86_64/tls.h (THREAD_SELF, THREAD_GETMEM, THREAD_GETMEM_NC, THREAD_SETMEM, THREAD_SETMEM_NC): Correct asm syntax. * allocatestack.c [! TLS_MULTIPLE_THREADS_IN_TCB] (allocate_stack): Initialize *__libc_multiple_threads_ptr not __libc_multiple_threads. * sysdeps/pthread/createthread.c [! TLS_MULTIPLE_THREADS_IN_TCB] (create_thread): Likewise. Define __pthread_multiple_threads and __libc_multiple_threads_ptr. * init.c (__pthread_initialize_minimal_internal): Initialize __libc_multiple_threads_ptr if necessary. * pthreadP.h: Adjust prototype for __libc_pthread_init. Declare __pthread_multiple_threads and __libc_multiple_threads_ptr. * sysdeps/unix/sysv/linux/libc_pthread_init.c: Define __libc_multiple_threads. (__libc_pthread_init): Return pointer to __libc_pthread_init if necessary. * sysdeps/i386/tls.h (THREAD_SETMEM): Fix one-byte variant. (THREAD_SETMEM_NC): Likewise. * sysdeps/x86_64/pthread_spin_trylock.c: Removed. * sysdeps/x86_64/pthread_spin_trylock.S: New file. * sysdeps/x86_64/pthread_spin_unlock.c: Removed. * sysdeps/x86_64/pthread_spin_unlock.S: New file. * sysdeps/i386/i486/pthread_spin_trylock.S (pthread_spin_trylock): Eliminate one entire instruction.
* Update.Ulrich Drepper2003-03-115-8/+11
| | | | | | | | | | | | | * cancellation.c (__pthread_enable_asynccancel_2): New function. * pthreadP.h: Declare __pthread_enable_asynccancel_2. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S (__pthread_cond_timedwait): Use __pthread_enable_asynccancel_2 instead of __pthread_enable_asynccancel. * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S (__pthread_cond_wait): Likewise. * sysdeps/pthread/pthread_cond_timedwait.c (__pthread_cond_timedwait): Likewise. * sysdeps/pthread/pthread_cond_wait.c (__pthread_cond_wait): Likewise.
* Update.Ulrich Drepper2003-03-115-16/+26
| | | | | | | | | | | | | | | | | | | | | 2003-03-11 Ulrich Drepper <drepper@redhat.com> * sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S (__condvar_cleanup): Wake up all waiters in case we got signaled after being woken up but before disabling asynchronous cancellation. * sysdeps/pthread/pthread_cond_wait.c (__condvar_cleanup): Likewise. * sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S (__condvar_cleanup): Likewise. * init.c (__NR_set_tid_address): If already defined, don't redefine. Make it an error if architecture has no #if case. Add x86-64. * sysdeps/unix/sysv/linux/x86_64/Makefile: Add flags for pt-initfini.s generation. * sysdeps/x86_64/tls.h: Include <asm/prctl.h>. (TLS_INIT_TP): Fix typo.
* Update.Ulrich Drepper2003-03-119-18/+18
| | | | | | | | 2003-03-11 Martin Schwidefsky <schwidefsky@de.ibm.com> * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define to __NR_pread if not defined. (__NR_pwrite64): Define to __NR_pwrite if not defined.
* Update.Ulrich Drepper2003-03-118-0/+8
| | | | | | | | | | | * sysdeps/unix/sysv/linux/ia64/system.c: New file. * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with kernel >= 2.5.64. 2003-03-11 Jakub Jelinek <jakub@redhat.com> * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
* pthread_cond_wait implementation for Linux/x86-64.Ulrich Drepper2003-03-111-0/+265
|
* * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,Roland McGrath2003-03-1117-0/+1344
| | | | | | | | | | | | allocate space even for the trailing '/'. Reported by John Reiser <jreiser@BitWagon.com>. * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6, ASM_CLOBBERS_6): Define. (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6. * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments to match IA-32 order. * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
* pthread_cond_signal implementation for Linux/x86-64.Ulrich Drepper2003-03-112-0/+202
|
* Update.Ulrich Drepper2003-03-115-2/+350
| | | | | | | | | | * sysdeps/unix/sysv/linux/x86_64/sem_post.S: New file. * sysdeps/unix/sysv/linux/x86_64/sem_trywait.S: New file. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: New file. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: New file. * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Fix error value in unused code.
* Update.Ulrich Drepper2003-03-113-12/+130
| | | | | | * sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: New file * sysdeps/unix/sysv/linux/sh/pthread_barrier_wait.S: Likewise.
* Update.Ulrich Drepper2003-03-112-1/+12
| | | | | | | | * sysdeps/unix/sysv/linux/Makefile (gen-as-const-headers): Add lowlevelbarrier.sym. * sysdeps/unix/sysv/linux/lowlevelbarrier.sym: New file. * sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Include lowlevelbarrier.h and don't define offsets locally.
* Update.Ulrich Drepper2003-03-114-9/+203
| | | | | | | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (__lll_mutex_lock_wait): Reverse order of first two parameters. (__lll_mutex_timedlock_wait): Likewise. (lll_mutex_lock): Adjust asm for that. (lll_mutex_timedlock): Likewise. Mark cx, cc, r10 as clobbered. (lll_lock): Adjust asm for operand order change. * sysdeps/unix/sysv/linux/x86_64/lowlevelmutex.S: New file. * sysdeps/unix/sysv/linux/x86_64/libc-lowlevelmutex.S: New file.
* Update.Ulrich Drepper2003-03-113-2/+200
| | | | | | | | * sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (__lll_lock_wait): Reverse order of parameters. (__lll_timedwait_tid): Remove regparms attribute. * sysdeps/unix/sysv/linux/x86_64/lowlevellock.S: New file. * sysdeps/unix/sysv/linux/x86_64/libc-lowlevellock.S: New file.
* Update.Ulrich Drepper2003-03-111-3/+1
| | | | | * sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S (__lll_timedwait_tid): Remove one unnecessary instruction.
* Update.Ulrich Drepper2003-03-104-342/+8
| | | | | | | | | | | | | * sysdeps/unix/sysv/linux/sh/lowlevelmutex.S: Define __lll_mutex_timedlock_wait only for NOT_IN_libc. * sysdeps/unix/sysv/linux/sh/libc-lowlevelmutex.S: Include lowlevelmutex.S. * sysdeps/unix/sysv/linux/sh/lowlevellock.S: Define lll_unlock_wake_cb, __lll_wait_tid, and __lll_timedwait_tid only for NOT_IN_libc. * sysdeps/unix/sysv/linux/sh/libc-lowlevellock.S: Include lowlevellock.S.
* Update.Ulrich Drepper2003-03-102-72/+15
| | | | | | | | | * sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Don't define LOCK is already defined. Don't define __lll_mutex_timedlock_wait for libc.so. * sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: Only define LOCK here (if UP is not defined). The actual code is in lowlevelmutex.S.