Age | Commit message (Collapse) | Author |
|
2003-02-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/libc-lock.h (__libc_once): Set control
variable for non-libpthread case to the same value the
pthread_once function would use.
|
|
2003-02-04 Ulrich Drepper <drepper@redhat.com>
* iconvdata/Makefile: Add rules to build and run bug-iconv3.
* iconvdata/bug-iconv3.c: New file.
|
|
2002-10-07 Wolfram Gloger <wg@malloc.de>
* malloc/malloc.c (sYSMALLOc): Only check for breakage due
to foreign sbrk()'s if arena is contiguous. Bug report from
Bruno Haible <bruno@clisp.org>.
2003-01-30 Jakub Jelinek <jakub@redhat.com>
* sysdeps/s390/libc-tls.c: Include stdlib.h.
2003-01-30 Jakub Jelinek <jakub@redhat.com>
* stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
ps.__count.
2003-01-30 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
restoring of %r6.
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise. Use
64-bit load.
Patch by Martin Schwidefsky <schwidefsky@de.ibm.com>.
2003-01-30 Jakub Jelinek <jakub@redhat.com>
* elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
(allocate_static_tls): ...here. Add __attribute_noinline__.
Don't return on failure.
(_dl_reloc_bad_type): Add __attribute_noinline__.
* elf/do-rel.h (elf_dynamic_do_rel): Add
__attribute__((always_inline)).
* elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
elf_machine_rel_relative, elf_machine_rela_relative,
elf_machine_lazy_rel): Add prototypes with
__attribute__((always_inline)).
2003-01-29 David Mosberger <davidm@hpl.hp.com>
* elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
|
|
2003-01-27 Martin Schwidefsky <schwidefsky@de.ibm.com>
* elf/elf.h: Add new s390 relocs.
* elf/tls-macros.h: Add s390 versions.
* sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
* sysdeps/s390/dl-tls.h: New file.
* sysdeps/s390/libc-tls.c: New file.
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
relocs for class PLT.
(elf_machine_rela): Handle TLS relocs.
* sysdeps/s390/s390-64/dl-machine.h: Likewise.
* sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
* sysdeps/s390/s390-64/elf/configure.in: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
CLONE_CHILD_*TID flags.
* sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
bit offset.
* sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
(SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
(SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
variants.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
(SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
(SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
variants.
|
|
* stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
instead of __libc_cleanup_region_start and _IO_cleanup_region_end
instead of __libc_cleanup_region_end.
* sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
as first parameter to __libc_cleanup_region_start.
|
|
2003-01-08 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
argument.
(INTERNAL_SYSCALL_DECL): Define.
2003-01-06 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
argument.
(INTERNAL_SYSCALL_DECL): Define.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
(INLINE_SYSCALL): Adjust.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
add err argument to INTERNAL_SYSCALL* macros.
* sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
* sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
* sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
* sysdeps/unix/sysv/linux/m68k/getpagesize.c (__getpagesize):
Likewise.
* sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
* sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
|
|
2003-01-04 Franz Sirl <Franz.Sirl-kernel@lauterbach.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep-cancel.h: New file.
* sysdeps/unix/sysv/linux/powerpc/powerpc32/Makefile: New file.
|
|
2003-01-02 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
sigaction): Protect weak_alias and libc_hidden_weak with
#ifndef LIBC_SIGACTION.
* sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
sigaction): Likewise.
* sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
sigaction): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
sigaction): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
sigaction): Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
sigaction): Likewise.
* sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
sigaction): Likewise.
* sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
sigaction): Likewise. Remove SIGCANCEL handling here.
* sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
Likewise.
|
|
* io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
* sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
nsec resolution changes.
(xstat64_conv): Likewise.
(xstat32_conv): Likewise.
* sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
struct kernel_stat.
* sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
structs stat and stat64.
* time/time.h (__timespec_defined): Define for __USE_MISC.
2002-12-31 Ulrich Drepper <drepper@redhat.com>
* include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
and __libc_current_sigrtmax.
2002-12-31 Jakub Jelinek <jakub@redhat.com>
* include/errno.h (__errno_location): Add prototype.
Use libc_hidden_proto unconditionally.
* include/netdb.h (__h_errno_location): Use libc_hidden_proto
unconditionally.
* include/resolv.h (__res_state): Likewise.
* hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
* include/sys/socket.h (accept): Add libc_hidden_proto.
* include/errno.h (__errno_location): Likewise.
* include/netdb.h (__h_errno_location): Likewise.
* include/resolv.h (__res_state): Likewise.
* include/unistd.h (__lseek): Likewise.
* sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
* sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
* sysdeps/generic/res-state.c (__res_state): Likewise.
* sysdeps/generic/accept.c (accept): Likewise.
* sysdeps/generic/lseek.c (__lseek): Likewise.
* sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
__libc_current_sigrtmax): Likewise.
* sysdeps/mach/hurd/accept.c (accept): Likewise.
* sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
* sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
* sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
* sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
* sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
* sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
* sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
* sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
alias to llseek.
(__GI_accept): New alias to accept.
* sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
New alias to llseek.
(__GI_accept): New alias to accept.
* sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
Likewise.
* sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
Likewise.
* sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
* sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
strong_alias (name, __GI_name).
* sysdeps/arm/bsd-_setjmp.S : Likewise.
* sysdeps/hppa/bsd-_setjmp.S : Likewise.
* sysdeps/i386/bsd-_setjmp.S : Likewise.
* sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
* sysdeps/mips/bsd-_setjmp.S : Likewise.
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
* sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
* sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
* sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
* sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
* sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
* sysdeps/sh/bsd-_setjmp.S : Likewise.
* sysdeps/sparc/sparc32/setjmp.S : Likewise.
* sysdeps/unix/arm/fork.S : Likewise.
* sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
* sysdeps/unix/bsd/i386/vfork.S : Likewise.
* sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
* sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
* sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
* sysdeps/unix/bsd/vax/vfork.S : Likewise.
* sysdeps/unix/i386/fork.S : Likewise.
* sysdeps/unix/mips/fork.S : Likewise.
* sysdeps/unix/sparc/fork.S : Likewise.
* sysdeps/unix/sparc/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
* sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
* sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
* sysdeps/unix/fork.S : Likewise.
* sysdeps/vax/bsd-_setjmp.S : Likewise.
* sysdeps/x86_64/bsd-_setjmp.S : Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
inclusion.
|
|
2002-12-31 Ulrich Drepper <drepper@redhat.com>
* include/setjmp.h: Add libc_hidden_proto for _setjmp.
* sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
* sysdeps/arm/bsd-_setjmp.S: Likewise.
* sysdeps/generic/bsd-_setjmp.c: Likewise.
* sysdeps/hppa/bsd-_setjmp.S: Likewise.
* sysdeps/i386/bsd-_setjmp.S: Likewise.
* sysdeps/m68k/bsd-_setjmp.c: Likewise.
* sysdeps/mips/bsd-_setjmp.S: Likewise.
* sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
* sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
* sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
* sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
* sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
* sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
* sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
* sysdeps/sh/bsd-_setjmp.S: Likewise.
* sysdeps/sparc/sparc32/setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
* sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
* sysdeps/vax/bsd-_setjmp.S: Likewise.
* sysdeps/x86_64/bsd-_setjmp.S: Likewise.
|
|
2002-12-30 Ulrich Drepper <drepper@redhat.com>
* malloc/thread-m.h (thread_atfork): Define using __register_atfork.
|
|
2002-12-28 Ulrich Drepper <drepper@redhat.com>
* misc/sys/cdefs.h (__attribute_deprecated__): New #define.
|
|
* include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
Redefine _IO_flockifle and _IO_funlockfile as inlines.
|
|
2002-12-18 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/flockfile.c (flockfile): Change into weak alias.
* sysdeps/unix/sysv/linux/raise.c (gsignal): Add weak alias to raise.
* Versions [libc: GLIBC_2.0]: Add pthread_attr_init.
[libpthread: GLIBC_2.1]: Remove __pthread_rwlock_init,
__pthread_rwlock_destroy, __pthread_rwlock_rdlock,
__pthread_rwlock_wrlock, __pthread_rwlock_unlock,
__pthread_rwlock_tryrdlock and __pthread_rwlock_trywrlock.
|
|
2002-12-18 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/bits/stdio-lock.h: New file.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevelmutex.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/libc-lowlevelmutex.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/libc-lowlevelmutex.S: New file.
* Makefile (routines): Add libc-lowlevelmutex.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Remove
__i686.get_pc_thunk.dx.
|
|
2002-12-16 Ulrich Drepper <drepper@redhat.com>
* stdio-common/Makefile (routines): Remove lockfile. Add
flockfile, ftrylockfile, and funlockfile.
* sysdeps/generic/lockfile.c: Removed. Each function has its own file.
* sysdeps/generic/flockfile.c: New file.
* sysdeps/generic/ftrylockfile.c: New file.
* sysdeps/generic/funlockfile.c: New file.
|
|
2002-12-13 Ulrich Drepper <drepper@redhat.com>
* misc/syslog.c (log_cleanup): Don't use parameter in
__libc_lock_unlock call, use syslog_lock directly. Adjust callers to
pass NULL instead of a pointer to syslog_lock.
|
|
__libc_lock_init_recursive): Change into comma expression. (__libc_lock_lock): Put into statement expression. (__libc_lock_unlock): Remove trailing semicolon.
|
|
2002-12-12 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/fork-gen.c: Renamed to...
* sysdeps/unix/sysv/linux/libc_pthread_init.c: ...this.
Initialize __libc_locking_needed.
* init.c (__pthread_initialize_minimal): Call __libc_pthread_init
instead of __register_pthread_fork_handler.
* sysdeps/pthread/bits/libc-lock.h: Declare __libc_locking_needed.
* sysdeps/unix/sysv/linux/Makefile (sysdep_routimes): Replace
fork-gen with libc_pthread_init.
* sysdeps/unix/sysv/linux/Versions: Use __libc_pthread_init instead
of __register_pthread_fork_handler.
* sysdeps/unix/sysv/linux/fork.h: Declare __libc_pthread_init instead
of __register_pthread_fork_handler.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Use
__libc_locking_needed to determine whether lock prefix can be avoided.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Likewise.
|
|
* sysdeps/pthread/bits/libc-lock.h (__libc_cleanup_region_start):
Remember function and argument even if cancellation handler
function is not available.
(__libc_cleanup_region_end): Execute registered function directly if
pthread functions are not available.
(__libc_cleanup_end): Likewise.
|
|
2002-12-07 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
|
|
2002-12-06 Ulrich Drepper <drepper@redhat.com>
* misc/syslog.c (log_cleanup): New function.
(openlog): Use log_cleanup instead of __libc_mutex_unlock.
(closelog): Likewise.
* elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
* elf/dl-iteratephdr.c: Likewise.
* elf/dl-lookup.c: Likewise.
* elf/dl-misc.c: Likewise.
* elf/dl-open.c: Likewise.
* elf/dl-support.c: Likewise.
* elf/rtld.c: Likewise.
* sysdeps/generic/ldsodefs.h: Likewise.
* sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
* sysdeps/mach/bits/libc-lock.h: Likewise.
* sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
* dirent/bug-readdir1.c (main): Don't call closedir, just close
|
|
2002-12-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove
lowlevellock.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: New file.
* sysdeps/unix/sysv/linux/i386/i586/libc-lowlevellock.S: New file.
* sysdeps/unix/sysv/linux/i386/i686/libc-lowlevellock.S: New file.
* sysdeps/pthread/bits/libc-lock.h: Use lowlevellock implementation
for __libc_lock_* macros.
* Makefile (routines): Add libc-lowlevellock.
2002-10-09 Roland McGrath <roland@redhat.com>
* sysdeps/pthread/bits/libc-lock.h (__libc_maybe_call): New macro.
Under [__PIC__], call the function via the pointer fetched for
comparison rather than a call by name that uses the PLT.
(__libc_lock_init, __libc_rwlock_init, __libc_lock_fini)
(__libc_rwlock_fini, __libc_lock_lock, __libc_rwlock_rdlock)
(__libc_rwlock_wrlock, __libc_lock_trylock, __libc_rwlock_tryrdlock)
(__libc_rwlock_trywrlock, __libc_lock_unlock, __libc_rwlock_unlock)
(__libc_key_create, __libc_getspecific, __libc_setspecific): Use it.
|
|
* sysdeps/x86_64/pthreaddef.h: New file.
* sysdeps/i386/pthreaddef.h (gettid): Removed.
* sysdeps/x86_64/pthread_spin_init.c: New file.
* sysdeps/x86_64/pthread_spin_lock.c: New file.
* sysdeps/x86_64/pthread_spin_trylock.c: New file.
* sysdeps/x86_64/pthread_spin_unlock.c: New file.
* sysdeps/i386/i686/pthread_spin_trylock.S (pthread_spin_trylock):
Add missing lock prefix. Minute optimization.
* tst-spin2.c (main): Also check successful trylock call.
* sysdeps/pthread/pthread_sigmask.c (pthread_sigmask): Use correct
syscall. Fix typo in case INTERNAL_SYSCALL is not used.
* sysdeps/i386/pthread_spin_destroy.c: Moved to...
* sysdeps/pthread/pthread_spin_destroy.c: ...here. New file.
* sysdeps/i386/pthread_sigmask.c: Removed. Use the generic code.
* sysdeps/pthread/pthread_sigmask.c (pthread_sigmask): Return correct
value in case of an error. Add support for INTERNAL_SYSCALL.
|
|
2002-11-27 Isamu Hasegawa <isamu@yamato.ibm.com>
* posix/regcomp.c (parse_expression): Set the bit since the back
reference is used in the regular expression.
* posix/regex_internal.c (re_node_set_init_1): Make it clean in case
of malloc failure.
(re_node_set_init_copy): Likewise.
* posix/regex_internal.h (state_array_t): New structure.
(re_sub_match_last_t): Likewise.
(re_sub_match_top_t): Likewise.
(re_match_context_t): Add new members.
(re_dfa_t): Likewise.
* posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
to check the matching is really correct, and retry if failed.
Move the routin pruning the impossible nodes from here, ...
(prune_impossible_nodes): To this function.
(check_matching): Invoke check_subexp_matching_top, and replace
redundant checking with transit_state_bkref invocation.
(proceed_next_node): Replace strncmp with memcmp. Reported by
Paolo Bonzini <bonzini@gnu.org>.
(update_cur_sifted_state): Remove search_subexp invocation.
(search_subexp): Remove this function.
(check_dst_limits_calc_pos): Use search_cur_bkref_entry for
optimization.
(sift_states_bkref): Use search_cur_bkref_entry for optimization.
Remove unused invocation of match_ctx_add_entry.
(transit_state): Invoke check_subexp_matching_top.
(check_subexp_matching_top): New function.
(transit_state_bkref): Remove unused array.
Merge transit_state_bkref_loop.
(transit_state_bkref_loop): Use get_subexp instead of
sift_states_backward. Use search_cur_bkref_entry for optimization.
Merge this function to transit_state_bkref.
(get_subexp): New function.
(get_subexp_sub): Likewise.
(find_subexp_node): Likewise.
(check_arrival): Likewise.
(check_arrival_expand_ecl): Likewise.
(check_arrival_expand_ecl_sub): Likewise.
(expand_bkref_cache): Likewise.
(match_ctx_init): Initialize new members.
(match_ctx_clean): New function.
(match_ctx_free): Release new members.
(match_ctx_free_subtops): New function.
(match_ctx_add_entry): Fix indent.
(search_cur_bkref_entry): New function.
(match_ctx_add_subtop): Likewise.
(match_ctx_add_sublast): Likewise.
|
|
2002-11-26 Ulrich Drepper <drepper@redhat.com>
* allocatestack.c (queue_stack): Don't remove stack from list here.
Do it in the caller. Correct condition to prematurely terminate
loop to free stacks.
(__deallocate_stack): Remove stack from list here.
2002-11-26 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add tst-stack1.
* tst-stack1.c: New file.
* allocatestack.c (allocate_stack): Initialize the TCB on a user
provided stack.
* pthread_attr_getstack.c: Return bottom of the thread area.
2002-11-25 Ulrich Drepper <drepper@redhat.com>
* Makefile (libpthread-routines): Add pt-allocrtsig and
pthread_kill_other_threads.
* pt-allocrtsig.c: New file.
* pthread_kill_other_threads.c: New file.
* sysdeps/unix/sysv/linux/allocrtsig.c: Add additional aliases for
all three functions.
* sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Remove
allocrtsig.
* sysdeps/unix/sysv/linux/Versions (libc:GLIBC_PRIVATE): Export
__libc_current_sigrtmin_private, __libc_current_sigrtmax_private,
and __libc_allocate_rtsig_private.
* Versions (libpthread): Export pthread_kill_other_threads_np,
__libc_current_sigrtmin, and __libc_current_sigrtmax.
2002-11-24 Ulrich Drepper <drepper@redhat.com>
* allocatestack.c (allocate_stack): stackaddr in attribute points to
the end of the stack. Adjust computations.
When mprotect call fails dequeue stack and free it.
* pthread_attr_setstack.c: Store top of the stack in stackaddr
attribute.
* pthread_getattr_np.c: Likewise.
* descr.h (IS_DETACHED): Add some more parenthesis to prevent
surprises.
2002-11-23 Ulrich Drepper <drepper@redhat.com>
* sysdeps/pthread/pthread.h (pthread_self): __THROW must come before
attribute definitions. Patch by Luca Barbieri <ldb@ldb.ods.org>.
2002-11-22 Ulrich Drepper <drepper@redhat.com>
* pthread_getspecific.c: Optimize access to first 2nd-level array.
* pthread_setspecific.c: Likewise.
2002-11-21 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/createthread.c: Remove CLONE_ flags
definitions. Get them from the official place.
* sysdeps/unix/sysv/linux/i386/fork.c: Likewise.
* sysdeps/unix/sysv/linux/i386/createthread.c: Update CLONE_* flags.
Use new CLONE_ flags in clone() calls.
* sysdeps/unix/sysv/linux/fork.c: Use ARCH_FORK to actually fork.
* sysdeps/unix/sysv/linux/i386/fork.c: New file.
* Versions: Add pthread_* functions for libc.
* forward.c: New file.
* sysdeps/pthread/Makefile (libpthread-sysdeps_routines): Add
errno-loc.
* herrno.c: New file.
* res.c: New file.
* Makefile (libpthread-routines): Remove sem_post, sem_wait,
sem_trywait, and sem_timedwait. Add herrno and res.
* sem_init.c: Don't initialize lock and waiters members.
* sem_open.c: Likewise.
* sem_post.c: Removed.
* sem_wait.c: Removed.
* sem_trywait.c: Removed.
* sem_timedwait.c: Removed.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Complete rewrite.
Includes full implementations of sem_post, sem_wait, sem_trywait,
and sem_timedwait.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h (lll_sem_post): Adjust
for new implementation.
* sysdeps/unix/sysv/linux/internaltypes.h (struct sem): Remove lock
and waiters fields.
* tst-sem3.c: Improve error message.
* tst-signal3.c: Likewise.
* init.c (__pthread_initialize_minimal): Use set_tid_address syscall
to tell the kernel about the termination futex and to initialize tid
member. Don't initialize main_thread.
* descr.h (struct pthread): Remove main_thread member.
* cancelllation.c (__do_cancel): Remove code handling main thread.
The main thread is not special anymore.
* allocatestack.c (__reclaim_stacks): Mark stacks as unused. Add
size of the stacks to stack_cache_actsize.
* pt-readv.c: Add missing "defined".
* pt-sigwait.c: Likewise.
* pt-writev.c: Likewise.
2002-11-09 Ulrich Drepper <drepper@redhat.com>
* Versions: Export __connect from libpthread.
Patch by Luca Barbieri <ldb@ldb.ods.org>.
* Makefile (libpthread-routines): Add pt-raise.
* sysdeps/unix/sysv/linux/raise.c: New file.
* sysdeps/unix/sysv/linux/pt-raise.c: New file.
* sysdeps/generic/pt-raise.c: New file.
* pthread_cond_init.c: Initialize all data elements of the condvar
structure. Patch by Luca Barbieri <ldb@ldb.ods.org>.
* pthread_attr_init.c: Actually implement 2.0 compatibility version.
* pthread_create.c: Likewise.
* Makefile (tests): Add tst-key1, tst-key2, tst-key3.
* tst-key1.c: New file.
* tst-key2.c: New file.
* tst-key3.c: New file.
* Versions: Export pthread_detach for version GLIBC_2.0.
Reported by Saurabh Desai <sdesai@austin.ibm.com>.
2002-11-08 Ulrich Drepper <drepper@redhat.com>
* pthread_key_create.c: Terminate search after an unused key was found.
Patch by Luca Barbieri <ldb@ldb.ods.org>.
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Return zero.
Patch by Luca Barbieri <ldb@ldb.ods.org>.
2002-10-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/i486/lowlevelsem.S: Use slow generic
dynamic lookup for errno in PIC.
* allocatestack.c (get_cached_stack): Rearrange code slightly to
release the stack lock as soon as possible.
Call _dl_allocate_tls_init for TCB from the cache to re-initialize
the static TLS block.
(allocate_stack): Call _dl_allocate_tls_init for user-provided stack.
* cancellation.c: Renamed from cancelation.c.
* Makefile: Adjust accordingly.
* pthreadP.h (CANCELLATION_P): Renamed from CANCELATION_P.
* cleanup_defer.c: Use CANCELLATION_P.
* pthread_testcancel.c: Likewise.
* descr.h: Fix spelling in comments.
* init.c: Likewise.
* pthread_getattr_np.c: Likewise.
* pthread_getschedparam.c: Likewise.
* pthread_setschedparam.c: Likewise.
* Versions: Likewise.
* pt-pselect.c: New file.
* Makefile (libpthread-routines): Add pt-pselect.
* Versions: Add pselect.
* tst-cancel4.c: New file.
* Makefile (tests): Add tst-cancel4.
2002-10-09 Ulrich Drepper <drepper@redhat.com>
* pthread_mutex_lock.c: Always record lock ownership.
* pthread_mutex_timedlock.c: Likewise.
* pthread_mutex_trylock.c: Likewise.
* pt-readv.c: New file.
* pt-writev.c: New file.
* pt-creat.c: New file.
* pt-msgrcv.c: New file.
* pt-msgsnd.c: New file.
* pt-poll.c: New file.
* pt-select.c: New file.
* pt-sigpause.c: New file.
* pt-sigsuspend.c: New file.
* pt-sigwait.c: New file.
* pt-sigwaitinfo.c: New file.
* pt-waitid.c: New file.
* Makefile (libpthread-routines): Add pt-readv, pt-writev, pt-creat,
pt-msgrcv, pt-msgsnd, pt-poll, pt-select, pt-sigpause, pt-sigsuspend,
pt-sigwait, pt-sigwaitinfo, and pt-waitid.
* Versions: Add all the new functions.
* tst-exit1.c: New file.
* Makefile (tests): Add tst-exit1.
* sem_timedwait.c: Minor optimization for more optimal fastpath.
2002-10-08 Ulrich Drepper <drepper@redhat.com>
* pt-fcntl.c: Only enable asynchronous cancellation for F_SETLKW.
* pthread_join.c: Enable asynchronous cancellation around lll_wait_tid
call. pthread_join is an official cancellation point.
* pthread_timedjoin.c: Likewise.
* pthread_cond_wait.c: Revert order in which internal lock are dropped
and the condvar's mutex are retrieved.
* pthread_cond_timedwait.c: Likewise.
Reported by dice@saros.East.Sun.COM.
2002-10-07 Ulrich Drepper <drepper@redhat.com>
* pthreadP.h: Cut out all type definitions and move them...
* sysdeps/unix/sysv/linux/internaltypes.h: ...here. New file.
* pthreadP.h: Include <internaltypes.h>.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h (lll_sem_post): Little
performance tweaks.
* sem_trywait.c: Shuffle #includes around to get right order.
* sem_timedwait.c: Likewise.
* sem_post.c: Likewise.
* sem_wait.c: Likewise.
* nptl 0.3 released.
* Makefile (tests): Add tst-signal3.
* tst-signal3.c: New file.
2002-10-05 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Tell the compiler that
the asms modify the sem object.
(__lll_sem_timedwait): Now takes struct sem* as first parameter.
* sysdeps/unix/sysv/linux/i386/bits/semaphore.h (sem_t): Don't expose
the actual members.
* pthreadP.h (struct sem): New type. Actual semaphore type.
* semaphoreP.h: Include pthreadP.h.
* sem_getvalue.c: Adjust to sem_t change.
* sem_init.c: Likewise.
* sem_open.c: Likewise.
* sem_post.c: Likewise.
* sem_timedwait.c: Likewise.
* sem_trywait.c: Likewise.
* sem_wait.c: Likewise.
2002-10-04 Ulrich Drepper <drepper@redhat.com>
* Makefile (tests): Add tst-basic2, tst-exec1, tst-exec3, tst-exec3.
* tst-basic2.c: New file.
* tst-exec1.c: New file.
* tst-exec2.c: New file.
* tst-exec3.c: New file.
* tst-fork1.c: Remove extra */.
* nptl 0.2 released. The API for IA-32 is complete.
|