Ulrich Drepper
18627f615b
Define atomic_compare_and_exchange_val_acq, atomic_compare_and_exchange_val_rel, atomic_compare_and_exchange_bool_acq, and atomic_compare_and_exchange_bool_rel instead of atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
2003-03-21 07:37:36 +00:00
Alexandre Oliva
d20152e148
* sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs. * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust. * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
...
* sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
* sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
* sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
2003-03-20 22:29:44 +00:00
Alexandre Oliva
4b5e1c5f0e
* sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset into high and low halves on n64. * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise. * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
...
2003-03-20 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
into high and low halves on n64.
* sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
* sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
* sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2003-03-20 20:58:02 +00:00
Ulrich Drepper
6848aba6c3
Update.
...
2003-03-20 Ulrich Drepper <drepper@redhat.com>
* include/atomic.h (atomic_decrement_if_positive): Adjust for the
correct atomic_compare_and_exchange_acq semantics.
2003-03-20 19:44:18 +00:00
Ulrich Drepper
972209dd7a
(atomic_decrement_if_positive): Adjust for the correct atomic_compare_and_exchange_acq semantics.
2003-03-20 19:42:54 +00:00
Alexandre Oliva
f1f8a9ec6f
* sysdeps/mips/ieee754.h: Remove excess #endif.
...
2003-03-20 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/ieee754.h: Remove excess #endif.
2003-03-20 17:59:45 +00:00
Roland McGrath
2ff16e041a
* sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
...
variable. Remove superfluous memory clobber.
* include/atomic.h: Syntax braino fix.
* posix/tst-nice.c (do_test): Use %m formats instead of printing errno
in decimal. Don't bail if niced at start. Just check that nice call
bumps the total at all.
2003-03-20 11:40:51 +00:00
Roland McGrath
41f3e892d8
2003-03-20 Roland McGrath <roland@redhat.com>
...
* posix/tst-nice.c (do_test): Use %m formats instead of printing errno
in decimal. Don't bail if niced at start. Just check that nice call
bumps the total at all.
2003-03-20 11:40:36 +00:00
Ulrich Drepper
b1aea0989d
Update.
...
2003-03-20 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/ia64/lowlevellock.h: Include <atomic.h>.
Remove __lll_add, __lll_dev_if_positive, and __lll_test_and_set
definitions. Replace uses with calls to atomic_* functions.
* sysdeps/unix/sysv/linux/powerpc/lowlevellock.h: Likewise.
* sysdeps/unix/sysv/linux/lowlevellock.c: Replace __lll_add and
__lll_test_and_set calls with atomic_exchange_and_add and
atomic_exchange calls respectively.
* sysdeps/unix/sysv/linux/sem_post.c: Likewise.
* sysdeps/unix/sysv/linux/sem_timedwait.c: Likewise.
* sysdeps/unix/sysv/linux/sem_trywait.c: Likewise.
* sysdeps/unix/sysv/linux/sem_wait.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/pthread_once.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/sem_port.c: Likewise.
* sysdeps/unix/sysv/linux/powerpc/pthread_once.c: Likewise.
* allocatestack.c (allocate_stack): Assume atomic_exchange_and_add
returns the old value.
2003-03-20 10:29:20 +00:00
Ulrich Drepper
9daba4f4b9
Replace __lll_add calls with atomic_exchange_and_add calls respectively.
2003-03-20 10:28:06 +00:00
Alexandre Oliva
53fcb88501
* sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers, including pc, gp, sp and fp, as long long. * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux. * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments. Add gp argument, and set gp in the jmpbuf to it. * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
...
2003-03-20 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
including pc, gp, sp and fp, as long long.
* sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
* sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
Add gp argument, and set gp in the jmpbuf to it.
* sysdeps/mips/setjmp_aux.c: Revert to o32-only.
2003-03-20 10:27:55 +00:00
Ulrich Drepper
7793bf7fd7
Replace __lll_add and __lll_test_and_set calls with atomic_exchange_and_add and atomic_exchange call respectively.
2003-03-20 10:23:47 +00:00
Ulrich Drepper
f79466a8e9
Update.
...
2003-03-20 Ulrich Drepper <drepper@redhat.com>
* include/atomic.h: Define atomic_exchange and
atomic_decrement_if_positive if not already defined. Add some
__builtin_expect.
* sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
* sysdeps/x86_64/bits/atomic.h: Likewise.
* sysdeps/ia64/bits/atomic.h: Pretty printing. Define atomic_exchange.
* sysdeps/powerpc/bits/atomic.h: Pretty printing. Define
atomic_exchange, atomic_exchange_and_add, and
atomic_decrement_if_positive
2003-03-20 10:18:24 +00:00
Ulrich Drepper
5132931e18
Define atomic_exchange and atomic_decrement_if_positive if not already defined. Add some __builtin_expect.
2003-03-20 10:11:43 +00:00
Roland McGrath
100a7100a7
* sysdeps/s390/pthread_spin_lock.c (pthread_spin_lock): Use type
...
int for variable OLDVAL and correct inline assembler contraint.
* sysdeps/s390/pthread_spin_trylock.c (pthread_spin_trylock): Use
type int for variable OLD.
* sysdeps/s390/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define it
only for s390-32.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep-cancel.h
(SINGLE_THREAD_P): Use global variable __local_multiple_threads
instead of multiple_threads field in the TCB.
2003-03-20 09:51:17 +00:00
Roland McGrath
7d0878cc83
Merged sh[34].*-.*-linux.* lists.
2003-03-20 09:28:07 +00:00
Ulrich Drepper
3dbe0d9517
Change atomic_exchange_and_add to return the old value.
2003-03-20 09:03:23 +00:00
Ulrich Drepper
91958edc84
(allocate_stack): Assume atomic_exchange_and_add returns the old value.
2003-03-20 08:58:35 +00:00
Alexandre Oliva
bfd49d5558
* sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend with a single instruction.
...
* sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
with a single instruction.
2003-03-20 07:54:56 +00:00
Alexandre Oliva
50449bed17
* sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define properly for n64. (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr type. (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf Word before comparing with gotsym. Take reloc_addr argument as void*. Remove the code added for the compiler to drop any alignment assumptions.
...
2003-03-20 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
properly for n64.
(elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
type.
(elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
Word before comparing with gotsym. Take reloc_addr argument as
void*. Remove the code added for the compiler to drop any
alignment assumptions.
2003-03-20 07:54:21 +00:00
Ulrich Drepper
4009bf4044
Update.
...
2003-03-19 Ulrich Drepper <drepper@redhat.com>
* Makefile (distribute): Add include/atomic.h and bits/atomic.h.
* include/atomic.h: New file.
* sysdeps/i386/i486/bits/atomic.h: New file.
* sysdeps/x86_64/bits/atomic.h: New file.
* sysdeps/s390/bits/atomic.h: New file.
* sysdeps/sh/bits/atomic.h: New file.
* sysdeps/ia64/bits/atomic.h: New file.
* sysdeps/powerpc/bits/atomic.h: New file.
* sysdeps/generic/bits/atomic.h: New file.
* sysdeps/i386/i486/atomicity.h: Removed.
* sysdeps/x86_64/atomicity.h: Removed.
* sysdeps/s390/s390-32/atomicity.h: Removed.
* sysdeps/s390/s390-64/atomicity.h: Removed.
* sysdeps/ia64/atomicity.h: Removed.
* sysdeps/powerpc/powerpc32/atomicity.h: Removed.
* sysdeps/powerpc/powerpc64/atomicity.h: Removed.
* elf/dl-profile.c: Use atomic.h instead of atomicity.h. Adjust
use of macros from atomicity.h to new names and semantics.
* gmon_mcount.c: Likewise.
* malloc/set-freeres.c: Likewise.
* nscd/cache.c: Likewise.
* stdlib/cxa_finalize.c: Likewise.
* sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
* sysdeps/mips/ieee754.h: New file, suitable to replace both
* stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
2003-03-20 07:19:17 +00:00
Ulrich Drepper
85b5767c57
Update.
...
* stdlib/strtod.c (INTERNAL): While eating trailing zeros handling
hexdigits correctly. Reported by Fred Tydeman <tydeman@tybor.com>.
* stdlib/tst-strtod.c: Add test for the bug.
2003-03-20 01:10:57 +00:00
Ulrich Drepper
350e9b8552
(INTERNAL): While eating trailing zeros handling hexdigits correctly.
2003-03-20 01:00:46 +00:00
Alexandre Oliva
ce3a4adf6d
* sysdeps/mips/ieee754.h: New file, suitable to replace both ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept mips-specific for now.
...
2003-03-19 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/ieee754.h: New file, suitable to replace both
../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
mips-specific for now.
2003-03-20 00:39:32 +00:00
Ulrich Drepper
8c937b8439
Update.
...
2003-03-19 Ulrich Drepper <drepper@redhat.com>
* posix/tst-nice.c (do_test): Remove invalid of return value.
Don't run test if initial level != 0.
2003-03-19 23:03:56 +00:00
Ulrich Drepper
cb8ed9413e
Update.
...
2003-03-19 Amos Waterland <apw@us.ibm.com>
* posix/tst-nice.c: New file.
* posix/Makefile (tests): Add tst-nice.
2003-03-19 22:36:57 +00:00
Ulrich Drepper
560a784f03
Update.
...
2003-03-19 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/Makefile: Fix cut&paste error.
2003-03-19 19:15:36 +00:00
Ulrich Drepper
95767b36d4
Update.
...
2003-03-19 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread_cond_broadcast.c: Release lock before
signalling waiters.
2003-03-19 09:52:49 +00:00
Ulrich Drepper
bbb9ba4324
(__pthread_cond_broadcast): Release lock before waking waiters.
2003-03-19 09:42:14 +00:00
Roland McGrath
ca341eb2bd
(__lll_test_and_set): Fix typos.
2003-03-19 09:08:47 +00:00
Roland McGrath
9465949559
* abilist: New directory of libfoo.abilist files maintained using
...
scripts/merge-abilist.awk and "make update-abi" rules.
* Makefile (distribute): Add abilist/*.abilist.
* Makerules [$(build-shared) = yes] [$(subdir)] (tests):
Depend on check-abi.
2003-03-19 08:27:55 +00:00
Roland McGrath
043ad426e7
* Versions (libpthread: GLIBC_2.2): Remove
...
pthread_barrierattr_getpshared, never really existed.
(libpthread: GLIBC_2.0): Move __pthread_initialize to ...
(libpthread: GLIBC_PRIVATE): ... here.
2003-03-19 03:34:48 +00:00
Roland McGrath
8a477363f4
2003-03-18 Roland McGrath <roland@redhat.com>
...
* Versions (libpthread: GLIBC_2.3.2): Move pthread_tryjoin_np and
pthread_timedjoin_np to ...
(libpthread: GLIBC_2.3.3): ... here.
(libpthread: GLIBC_2.2): Move pthread_barrierattr_getpshared there too.
2003-03-19 03:25:04 +00:00
Ulrich Drepper
00bd9cc9ab
Remove unnecessary instruction in case clock_gettime isn't available.
2003-03-19 02:27:27 +00:00
Ulrich Drepper
ac9e0aa1b0
Update.
...
* Makefile (tests): Add tst-cond11.
* tst-cond11.c: New file.
2003-03-19 00:38:11 +00:00
Ulrich Drepper
604b15cf5f
Test pthread_condattr_[sg]etclock.
2003-03-19 00:34:59 +00:00
Roland McGrath
32a448ed15
* configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
...
* configure: Regenerated.
* sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
2003-03-19 00:34:41 +00:00
Roland McGrath
5c2d8a8736
2003-03-18 Roland McGrath <roland@redhat.com>
...
* sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
2003-03-19 00:34:10 +00:00
Ulrich Drepper
dacb2bad80
Update.
...
2003-03-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
correctly.
2003-03-18 23:50:44 +00:00
Ulrich Drepper
a14b373c5d
Update.
...
2003-03-18 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/memcpy.S: New file.
2003-03-18 23:00:03 +00:00
Ulrich Drepper
ee2af3e835
Reorder struct passed to cleanup handler to eliminate one more instruction.
2003-03-18 22:20:54 +00:00
Roland McGrath
8cfb7315ea
* td_thr_event_getmsg.c (td_thr_event_getmsg): Splice the thread out
...
of the ->nextevent linkage.
* td_ta_event_getmsg.c (td_ta_event_getmsg): Runtime error instead of
assert for reading TD_EVENT_NONE. Clear the event buffer after
reading it. Add a sanity check for foo->nextevent = foo.
2003-03-18 21:13:51 +00:00
Roland McGrath
90758db434
2003-03-18 Roland McGrath <roland@redhat.com>
...
* td_thr_event_getmsg.c (td_thr_event_getmsg): Splice the thread out
of the ->nextevent linkage.
2003-03-18 21:13:42 +00:00
Ulrich Drepper
856874c5e9
(__pthread_cond_init): Handle NULL cond_attr parameter.
2003-03-18 20:08:20 +00:00
Ulrich Drepper
24a49f38ad
Update.
...
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h
(pthrad_cond_t): Replace __unused field with __clock.
* sysdeps/pthread/pthread_cond_wait.c: Release condvar lock before
waken all waiters in cleanup handler.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_wait.S: Likewise.
2003-03-18 18:56:16 +00:00
Ulrich Drepper
d5cb838958
Update.
...
2003-03-18 Ulrich Drepper <drepper@redhat.com>
* Versions.def: Add GLIBC_2.3.3 for libpthread.
2003-03-18 11:25:37 +00:00
Ulrich Drepper
86a9ee5e87
Update.
...
2003-03-18 Ulrich Drepper <drepper@redhat.com>
* pthread_condattr_getclock.c: New file.
* pthread_condattr_setclock.c: New file.
* sysdeps/pthread/pthread.h: Declare these new functions.
* Versions [GLIBC_2.3.3] (libpthread): Add the new functions.
* Makefile (libpthread-routines): Add the new functions.
* sysdeps/unix/sysv/linux/internaltypes.h (struct pthread_condattr):
Renamed field to value. Document use of the bits.
* pthread_condattr_getpshared.c: Adjust for struct pthread_condattr
change.
* pthread_condattr_setpshared.c: Likewise.
* sysdeps/unix/sysv/linux/lowlevelcond.sym: Add cond_clock symbol.
* sysdeps/unix/sysv/linux/i386/bits/pthreadtypes.h (pthread_cond_t):
Add __clock field.
* sysdeps/unix/sysv/linux/ia64/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/powerpc/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/s390/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/sh/bits/pthreadtypes.h: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S:
Implement clock selection.
* sysdeps/pthread/pthread_cond_timedwait.c: Likewise.
* pthread-errnos.sym: Add ENOSYS.
* sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
_POSIX_CLOCK_SELECTION.
* sysdeps/unix/sysv/linux/i386/bits/posix_opt.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S: Remove
invalid .size directive.
2003-03-18 11:17:57 +00:00
Ulrich Drepper
4773086e04
Update.
...
* 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.
2003-03-18 05:31:53 +00:00
Ulrich Drepper
970269474a
Update.
...
2003-03-17 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/libc-start.c [!SHARED &&
!LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
2003-03-18 01:56:11 +00:00
Ulrich Drepper
09044a7360
pthread_spin_unlock implementation for Linux/i386.
2003-03-18 01:52:02 +00:00