Andreas Schwab [Sun, 10 Aug 2008 08:43:09 +0000 (08:43 +0000)]
2008-08-10 Joseph Myers <joseph@codesourcery.com>
* sysdeps/m68k/bits/byteswap.h: Allow inclusion from <endian.h>.
(__bswap_constant_16): Define.
(__bswap_16): Allow arguments with side effects.
(__bswap_constant_32): Ensure result is unsigned.
(__bswap_32): Define as inline function in fallback case.
(__bswap_constant_64): Define.
(__bswap_64): Use it for constant arguments.
* sysdeps/m68k/bits/setjmp.h (__jmp_buf): Give name to structure
type.
* sysdeps/m68k/m680x0/fpu/bits/mathinline.h: Only allow inclusion
from <math.h>. Do not use extern inline directly.
* sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Include <bits/uio.h>.
(O_CLOEXEC, SYNC_FILE_RANGE_WAIT_BEFORE, SYNC_FILE_RANGE_WRITE,
SYNC_FILE_RANGE_WAIT_AFTER, SPLICE_F_MOVE, SPLICE_F_NONBLOCK,
SPLICE_F_MORE, SPLICE_F_GIFT): Define.
(sync_file_range, vmsplice, splice, tee): Declare.
* sysdeps/unix/sysv/linux/m68k/bits/mman.h (MADV_REMOVE): Define.
* sysdeps/unix/sysv/linux/m68k/bits/poll.h (POLLMSG, POLLREMOVE,
POLLRDHUP): Define.
* sysdeps/unix/sysv/linux/m68k/bits/stat.h (UTIME_NOW,
UTIME_OMIT): Define.
* sysdeps/unix/sysv/linux/m68k/kernel-features.h: New.
* sysdeps/unix/sysv/linux/m68k/sys/user.h: New.
Carlos O'Donell [Thu, 7 Aug 2008 23:52:34 +0000 (23:52 +0000)]
2008-08-07 Helge Deller <deller@gmx.de>
* sysdeps/unix/sysv/linux/hppa/ucontext_i.sym: New file.
* sysdeps/unix/sysv/linux/hppa/Makefile: New file.
* sysdeps/unix/sysv/linux/hppa/getcontext.S: New file.
* sysdeps/unix/sysv/linux/hppa/makecontext.c: New file.
* sysdeps/unix/sysv/linux/hppa/setcontext.S: New file.
* sysdeps/unix/sysv/linux/hppa/swapcontext.c: New file.
* sysdeps/arm/eabi/fgetexcptflg.c: New.
* sysdeps/arm/eabi/fsetexcptflg.c (__fesetexceptflag): Operate on
set exception flags, not on mask of enabled exceptions.
Carlos O'Donell [Tue, 17 Jun 2008 11:45:52 +0000 (11:45 +0000)]
2008-06-17 Aurelian Jarno <aurelien@aurel32.net>
Carlos O'Donell <carlos@systemhalted.org>
[BZ #6037]
* sysdeps/unix/sysv/linux/hppa/bits/atomic.h: Check for -11
(-EAGAIN) instead of 11. Loop again when the kernel
returns -45 (-EDEADLOCK). Add back memory clobber.
Do not initialize lws_ret and lws_errno.
* sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list: Add
truncate and ftruncate systems calls.
* sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: Make an
empty file.
* sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: Ditto.
Explicitly get address of _DYNAMIC.
* sysdeps/m68k/dl-machine.h (elf_machine_dynamic): Retrieve _DYNAMIC
from GOT instead of assuming value at GOT pointer.
* sysdeps/unix/sysv/linux/mips/bits/siginfo.h (struct siginfo):
Reorganize to match other architectures. Replace _timer._timer1
and _timer._timer2 with _timer.si_tid, _timer.si_overrun, and
_timer.si_sigval. Correct the type of _sigpoll.si_band.
(si_timerid, si_overrun): Define.
(__SIGEV_PAD_SIZE): Correct for __WORDSIZE == 64.
(__pthread_attr_s): Remove declaration.
(struct sigevent): Remove XXX. Add _tid.
* sysdeps/arm/nptl/tls.h (THREAD_GSCOPE_RESET_FLAG): Use
lll_futex_wake not lll_private_futex_wake.
* sysdeps/unix/sysv/linux/arm/bits/fcntl.h (O_CLOEXEC): Define.
* sysdeps/unix/sysv/linux/arm/eabi/sysdep.h: Include <tls.h>
* sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.c
(__lll_lock_wait_private, __lll_lock_wait): New.
(__lll_timedlock_wait): Don't include in libc.so; Take private
argument. Use atomic_compare_and_exchange_bool_acq.
* sysdeps/unix/sysv/linux/arm/nptl/lowlevellock.h: Renamed all
lll_mutex_* resp. lll_robust_mutex_* macros to lll_*
resp. lll_robust_*. Renamed all LLL_MUTEX_LOCK_* macros to
LLL_LOCK_*. Include <kernel-features.h>.
(LLL_LOCK_INITIALIZER): Remove duplicate definition.
(__lll_private_flag): Define.
(lll_futex_timed_wait): Pass private flag to syscall.
(lll_futex_wake): Likewise.
(lll_private_futex_wait, lll_private_futex_timed_wait,
lll_private_futex_wake): Remove.
(lll_robust_dead, lll_futex_requeue): Take private arguments.
(lll_futex_wake_unlock): Pass private flag to syscall.
(__lll_robust_trylock): Convert to macro.
(__lll_robust_lock_wait): Add private argument.
(__lll_lock_wait_private, __lll_lock_wait): Declare.
(__lll_lock): Convert to macro. Take private argument.
(__lll_cond_lock): Likewise.
(lll_lock, lll_cond_lock): Take private arguments.
(__lll_robust_lock): Take private argument.
(__lll_timedlock_wait, __lll_robust_timedlock_wait): Take private
arguments.
(__lll_timedlock, __lll_robust_timedlock): Convert to macros.
Take private arguments.
(lll_timedlock, lll_robust_timedlock): Take private arguments.
(__lll_unlock, __lll_robust_unlock): Convert to macros. Take
private arguments.
(lll_unlock, lll_robust_unlock): Take private arguments.
(__lll_mutex_unlock_force, lll_mutex_unlock_force, lll_lock_t,
lll_trylock, lll_lock, lll_unlock, lll_islocked): Remove.
(lll_wait_tid): Pass LLL_SHARED to lll_futex_wait.
(__lll_cond_wait, __lll_cond_timedwait, __lll_cond_wake,
__lll_cond_broadcast, lll_cond_wait, lll_cond_timedwait,
lll_cond_wake, lll_cond_broadcast): Remove.
* sysdeps/unix/sysv/linux/arm/nptl/pthread_once.c
(clear_once_control, __pthread_once): Use lll_futex_wake not
lll_private_futex_wake.
* sysdeps/powerpc/nofpu/fsetexcptflg.c (__fesetexceptflag): Do not
clobber other exceptions.
* sysdeps/powerpc/nofpu/feupdateenv.c (__feupdateenv): Raise new
exceptions.
* sysdeps/powerpc/nofpu/fraiseexcpt.c (__feraiseexcept): Handle
multiple new exceptions if some are disabled.
* sysdeps/powerpc/nofpu/sim-full.c (__simulate_exceptions): Likewise.
Jakub Jelinek [Thu, 16 Aug 2007 21:03:08 +0000 (21:03 +0000)]
* sysdeps/unix/sysv/linux/alpha/lowlevellock.h
(__lll_robust_timedlock): Pass private as last argument to
__lll_robust_timedlock_wait.
(__lll_unlock): Fix a pasto.
* sysdeps/unix/sysv/linux/mips/dl-cache.h (_DL_CACHE_DEFAULT_ID):
New macros for the (n)64 and n32 ABIs.
(_dl_cache_check_flags): Define if _DL_CACHE_DEFAULT_ID has been.
Ulrich Drepper [Wed, 1 Aug 2007 04:21:31 +0000 (04:21 +0000)]
Renamed all lll_mutex_* resp. lll_robust_mutex_* macros to lll_* resp.
lll_robust_*. Renamed all __lll_mutex_* resp. __lll_robust_mutex_*
inline functions to __lll_* resp. __lll_robust_*.
(LLL_MUTEX_LOCK_INITIALIZER): Remove.
(lll_mutex_dead): Add private argument.
(__lll_lock_wait_private): New prototype.
(__lll_lock_wait, __lll_robust_lock_wait, __lll_lock_timedwait,
__lll_robust_lock_timedwait): Add private argument to prototypes.
(__lll_lock): Add private argument, if it is constant LLL_PRIVATE,
call __lll_lock_wait_private, otherwise pass private to
__lll_lock_wait.
(__lll_robust_lock, __lll_cond_lock, __lll_timedlock,
__lll_robust_timedlock): Add private argument, pass it to
__lll_*wait functions.
(__lll_unlock): Add private argument, if it is constant LLL_PRIVATE,
call __lll_unlock_wake_private, otherwise pass private to
__lll_unlock_wake.
(__lll_robust_unlock): Add private argument, pass it to
__lll_robust_unlock_wake.
(lll_lock, lll_robust_lock, lll_cond_lock, lll_timedlock,
lll_robust_timedlock, lll_unlock, lll_robust_unlock): Add private
argument, pass it through to __lll_* inline function.
(__lll_mutex_unlock_force, lll_mutex_unlock_force): Remove.
(lll_lock_t): Remove.
(__lll_cond_wait, __lll_cond_timedwait, __lll_cond_wake,
__lll_cond_broadcast, lll_cond_wait, lll_cond_timedwait,
lll_cond_wake, lll_cond_broadcast): Remove.
* sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise.c: New file.
* sysdeps/unix/sysv/linux/mips/mips32/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/mips/mips32/readahead.c: New file.
* sysdeps/unix/sysv/linux/mips/mips32/sync_file_range.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n32/posix_fadvise64.c: New file.
* sysdeps/unix/sysv/linux/mips/mips64/n32/syscalls.list: New file.
* sysdeps/alpha/fpu/bits/mathinline.h (__isnanl): Don't define
if __NO_LONG_DOUBLE_MATH.
* sysdeps/unix/sysv/linux/alpha/ioperm.c: If BWX insns not
available in the compiler, add .arch directive to ethe assembly.
2007-05-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/alpha/fpu/s_nearbyint.c (nearbyintl): Fix version on
compat_symbol to GLIBC_2_1.
* sysdeps/alpha/fpu/s_fmin.S (fminl): Likewise.
* sysdeps/alpha/fpu/s_trunc.c (truncl): Likewise.
* sysdeps/alpha/fpu/s_fmax.S (fmaxl): Likewise.
* sysdeps/alpha/fpu/s_lrint.c (lrintl, llrintl): Likewise.
* sysdeps/alpha/fpu/s_lround.c (lroundl, llroundl): Likewise.
* sysdeps/alpha/fpu/s_round.c (roundl): Likewise.
* sysdeps/alpha/fpu/s_isnan.c (isnanl): Provide compat_symbol in
libc, not libm.
(__isnanl): New compat_symbol.
* sysdeps/alpha/fpu/s_llround.c: New file.
* sysdeps/alpha/fpu/s_llroundf.c: New file.
* sysdeps/alpha/fpu/s_lround.c: New file.
* sysdeps/alpha/fpu/s_lroundf.c: New file.
* sysdeps/alpha/fpu/s_round.c: New file.
* sysdeps/alpha/fpu/s_roundf.c: New file.
* sysdeps/alpha/fpu/s_trunc.c: New file.
* sysdeps/alpha/fpu/s_truncf.c: New file.
* sysdeps/alpha/fpu/s_fmax.S: New file.
* sysdeps/alpha/fpu/s_fmaxf.S: New file.
* sysdeps/alpha/fpu/s_fmin.S: New file.
* sysdeps/alpha/fpu/s_fminf.S: New file.
* sysdeps/alpha/fpu/s_isnan.c: New file.
* sysdeps/alpha/fpu/s_isnanf.c: New file.
* sysdeps/alpha/fpu/s_llrint.c: New file.
* sysdeps/alpha/fpu/s_llrintf.c: New file.
* sysdeps/alpha/fpu/s_lrint.c: New file.
* sysdeps/alpha/fpu/s_lrintf.c: New file.
* sysdeps/alpha/fpu/s_nearbyint.c: New file.
* sysdeps/alpha/fpu/s_nearbyintf.c: New file.