Ulrich Drepper [Fri, 14 Mar 2003 23:28:23 +0000 (23:28 +0000)]
Update.
2003-03-14 Ulrich Drepper <drepper@redhat.com>
* tst-fork4.c: Use test-skeleton.c.
* pthread_create.c (start_thread): Use CALL_THREAD_FCT if defined.
* sysdeps/i386/tls.h: Define CALL_THREAD_FCT.
Ulrich Drepper [Fri, 14 Mar 2003 23:18:42 +0000 (23:18 +0000)]
(start_thread): Use CALL_THREAD_FCT if defined.
Roland McGrath [Fri, 14 Mar 2003 23:16:51 +0000 (23:16 +0000)]
* init.c: Fix typo "#eli" for "#else".
Roland McGrath [Fri, 14 Mar 2003 23:12:09 +0000 (23:12 +0000)]
* allocatestack.c (__stack_user): Use hidden_data_def.
* pthread_create.c (__pthread_keys): Likewise.
* init.c [__powerpc__] (__NR_set_tid_address): Define it.
* tst-fork4.c: New file.
* Makefile (tests): Add it.
Roland McGrath [Fri, 14 Mar 2003 22:34:30 +0000 (22:34 +0000)]
* 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.
* sysdeps/s390/td_ta_map_lwp2thr.c (td_ta_map_lwp2thr): Use REGS[18]
value directly.
Roland McGrath [Fri, 14 Mar 2003 22:34:02 +0000 (22:34 +0000)]
2003-03-14 Roland McGrath <roland@redhat.com>
* 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.
Ulrich Drepper [Fri, 14 Mar 2003 22:04:21 +0000 (22:04 +0000)]
Update.
2003-03-14 Ulrich Drepper <drepper@redhat.com>
* localedata/mn_MN: New file.
Contributed by Sanlig Badral <badral@chinggis.com>.
Ulrich Drepper [Fri, 14 Mar 2003 21:26:23 +0000 (21:26 +0000)]
Mongolian language locale for Mongolia.
Alexandre Oliva [Fri, 14 Mar 2003 15:30:43 +0000 (15:30 +0000)]
* sysdeps/mips/fpu/bits/mathdef.h: New. (__NO_LONG_DOUBLE_MATH): Define for o32.
* sysdeps/mips/fpu/bits/mathdef.h: New.
(__NO_LONG_DOUBLE_MATH): Define for o32.
Alexandre Oliva [Fri, 14 Mar 2003 11:06:32 +0000 (11:06 +0000)]
* sysdeps/mips/sys/asm.h: Formatting changes. (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs. (CPADD): Define for all of them. (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64, SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP, NARGSAVE): Define per ABI spec. (END): Don't redefine. (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA, LONG_SRAV): Remove duplicate definitions. (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI, PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL, PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32. (PTR_LA): Define for all 3 ABIs.
* sysdeps/mips/sys/asm.h: Formatting changes.
(PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
(CPADD): Define for all of them.
(SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
NARGSAVE): Define per ABI spec.
(END): Don't redefine.
(LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
LONG_SRAV): Remove duplicate definitions.
(PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
(PTR_LA): Define for all 3 ABIs.
Ulrich Drepper [Fri, 14 Mar 2003 09:46:25 +0000 (09:46 +0000)]
Update.
2003-03-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/x86_64/tls.h (THREAD_GETMEM): Mark asms volatile.
(THREAD_GETMEM_NC): Likewise.
Ulrich Drepper [Fri, 14 Mar 2003 09:45:53 +0000 (09:45 +0000)]
(THREAD_GETMEM): Makr asms volatile. (THREAD_GETMEM_NC): Likewise.
Alexandre Oliva [Fri, 14 Mar 2003 08:43:13 +0000 (08:43 +0000)]
* sysdeps/mips/dl-machine.h: Include sys/asm.h. (elf_machine_matches_host): Prevent linking of o32 and n32 together. (elf_machine_dynamic): Document assumption on $gp. (STRINGXP, STRINGXV, STRINGV_): New macros. (elf_machine_load_address): Use them to stringize PTR_LA and PTR_SUBU. (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS, ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in... (_dl_runtime_resolve): Adjust it for all 3 ABIs. (__dl_runtime_resolve): Cast the symtab initializer to the right type. (RTLD_START): Use it. Adjust it for all 3 ABIs. (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP. Handle 64-bit R_MIPS_REL composite relocation and accept R_MIPS_64 relocations to shift addend size to 64 bits. Document assumption regarding local GOT entries. Document backward-compatibility departing from the ABI behavior in applying relocations that reference section symbols, no longer used. Support relocations to mis-aligned offsets. * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
* sysdeps/mips/dl-machine.h: Include sys/asm.h.
(elf_machine_matches_host): Prevent linking of o32 and n32
together.
(elf_machine_dynamic): Document assumption on $gp.
(STRINGXP, STRINGXV, STRINGV_): New macros.
(elf_machine_load_address): Use them to stringize PTR_LA and
PTR_SUBU.
(ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
(_dl_runtime_resolve): Adjust it for all 3 ABIs.
(__dl_runtime_resolve): Cast the symtab initializer to the
right type.
(RTLD_START): Use it. Adjust it for all 3 ABIs.
(elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
Handle 64-bit R_MIPS_REL composite relocation and accept
R_MIPS_64 relocations to shift addend size to 64 bits.
Document assumption regarding local GOT entries. Document
backward-compatibility departing from the ABI behavior in
applying relocations that reference section symbols, no longer
used. Support relocations to mis-aligned offsets.
* sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
Alexandre Oliva [Fri, 14 Mar 2003 07:52:05 +0000 (07:52 +0000)]
* sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
* sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
Alexandre Oliva [Fri, 14 Mar 2003 07:49:05 +0000 (07:49 +0000)]
* sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG. * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and restore_rt functions. Use them.
* sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
(_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
* sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
restore_rt functions. Use them.
Alexandre Oliva [Fri, 14 Mar 2003 07:03:36 +0000 (07:03 +0000)]
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't .set mips2 on new abis.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
.set mips2 on new abis.
Ulrich Drepper [Fri, 14 Mar 2003 06:28:45 +0000 (06:28 +0000)]
Update.
2003-03-13 Ulrich Drepper <drepper@redhat.com>
* posix/getconf.c: Recognize POSIX2_SYMLINKS.
* sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
* sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
* sysdeps/posix/pathconf.c: Likewise.
* sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
* sysdeps/unix/sysv/linux/pathconf.c: Likewise.
* sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
* sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
words.
Ulrich Drepper [Fri, 14 Mar 2003 06:11:06 +0000 (06:11 +0000)]
(allocate_stack): If MULTI_PAGE_ALIASING is defined and the size of the stack which must be allocated is a multiple, allocate one more page.
Alexandre Oliva [Fri, 14 Mar 2003 05:48:18 +0000 (05:48 +0000)]
* include/gmp.h: Include/gmp-mparam.h. * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and gmp-impl.h.
* include/gmp.h: Include/gmp-mparam.h.
* stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
gmp-impl.h.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
Alexandre Oliva [Fri, 14 Mar 2003 05:34:36 +0000 (05:34 +0000)]
* elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if ELF_MACHINE_NO_RELA is set. * elf/rtld.c (dl_main): No prelink support for REL-only.
* elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
ELF_MACHINE_NO_RELA is set.
* elf/rtld.c (dl_main): No prelink support for REL-only.
Alexandre Oliva [Fri, 14 Mar 2003 05:32:50 +0000 (05:32 +0000)]
* sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32, FLAG_MIPS64_LIBN64): Define. * elf/cache.c (print_entry): Handle mips64 n32 and n64.
* sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
FLAG_MIPS64_LIBN64): Define.
* elf/cache.c (print_entry): Handle mips64 n32 and n64.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
Alexandre Oliva [Fri, 14 Mar 2003 05:31:28 +0000 (05:31 +0000)]
* sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis. * sysdeps/mips/memset.S: Likewise. * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11 depending on the ABI.
* sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
* sysdeps/mips/memset.S: Likewise.
* sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
depending on the ABI.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
Alexandre Oliva [Fri, 14 Mar 2003 05:30:31 +0000 (05:30 +0000)]
* sysdeps/mips/atomicity.h (exchange_and_add, atomic_add): Don't .set mips2 on new abi. (compare_and_swap): Likewise. Support 64-bit longs on n64.
* sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
Don't .set mips2 on new abi.
(compare_and_swap): Likewise. Support 64-bit longs on n64.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
Alexandre Oliva [Fri, 14 Mar 2003 04:22:05 +0000 (04:22 +0000)]
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Don't .set mips2 on new abi. * sysdeps/mips/pt-machine.h (__compare_and_swap): Likewise. Handle 64-bit longs on n64.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
* sysdeps/mips/pspinlock.c (__pthread_spin_lock): Don't .set
mips2 on new abi.
* sysdeps/mips/pt-machine.h (__compare_and_swap): Likewise.
Handle 64-bit longs on n64.
Alexandre Oliva [Fri, 14 Mar 2003 04:21:27 +0000 (04:21 +0000)]
* stdlib/fpioconst.h: Include gmp.h with angle brackets.
2003-03-14 Alexandre Oliva <aoliva@redhat.com>
* stdlib/fpioconst.h: Include gmp.h with angle brackets.
Roland McGrath [Fri, 14 Mar 2003 03:59:59 +0000 (03:59 +0000)]
* elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
found. Reported by Alexandre Oliva <aoliva@redhat.com>.
2003-03-13 Alexandre Oliva <aoliva@redhat.com>
* stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
literals long long.
* stdlib/fpioconst.c: Likewise.
* stdlib/strtod.c: Likewise.
* sysdeps/mips/add_n.S: Use L macro for local labels.
* sysdeps/mips/addmul_1.S: Likewise.
* sysdeps/mips/lshift.S: Likewise.
* sysdeps/mips/memcpy.S: Likewise.
* sysdeps/mips/memset.S: Likewise.
* sysdeps/mips/mul_1.S: Likewise.
* sysdeps/mips/rshift.S: Likewise.
* sysdeps/mips/sub_n.S: Likewise.
* sysdeps/mips/submul_1.S: Likewise.
* sysdeps/mips/mips64/add_n.S: Likewise.
* sysdeps/mips/mips64/addmul_1.S: Likewise.
* sysdeps/mips/mips64/lshift.S: Likewise.
* sysdeps/mips/mips64/mul_1.S: Likewise.
* sysdeps/mips/mips64/rshift.S: Likewise.
* sysdeps/mips/mips64/sub_n.S: Likewise.
* sysdeps/mips/mips64/submul_1.S: Likewise.
* sysdeps/unix/mips/sysdep.h: Define L() according to ABI
conventions. Define END as in sys/asm.h.
* sysdeps/unix/mips/sysdep.S: Likewise.
* sysdeps/unix/mips/wait.S: Likewise.
* sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
* sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
Cast shifted values that may be too narrow to mp_limb_t.
* sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
Likewise.
* sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
Likewise.
* sysdeps/ieee754/ldbl-128/ldbl2mpn.c
(__mpn_extract_long_double): Likewise.
* sysdeps/ieee754/ldbl-128/mpn2ldbl.c
(__mpn_construct_long_double): Likewise.
* sysdeps/ieee754/ldbl-96/ldbl2mpn.c
(__mpn_extract_long_double): Likewise.
* sysdeps/ieee754/ldbl-96/mpn2ldbl.c
(__mpn_construct_long_double): Likewise.
2003-03-13 Roland McGrath <roland@redhat.com>
Roland McGrath [Thu, 13 Mar 2003 21:51:07 +0000 (21:51 +0000)]
* elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
entries in the map file match too.
Roland McGrath [Thu, 13 Mar 2003 21:00:18 +0000 (21:00 +0000)]
2003-03-13 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/fork.c (__libc_fork): Only declare and set
PPID if [! NDEBUG].
Andreas Jaeger [Thu, 13 Mar 2003 15:07:26 +0000 (15:07 +0000)]
Update.
2003-03-13 Guido Guenther <agx@sigxcpu.org>
* sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
label .Lthread_start since current binutils don't allow branches
to globally visible symbols.
Andreas Jaeger [Thu, 13 Mar 2003 15:07:13 +0000 (15:07 +0000)]
Introduce and use local
label .Lthread_start since current binutils don't allow branches
to globally visible symbols.
Ulrich Drepper [Thu, 13 Mar 2003 04:41:39 +0000 (04:41 +0000)]
Update.
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.
Ulrich Drepper [Thu, 13 Mar 2003 01:51:12 +0000 (01:51 +0000)]
Update.
* 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.
Ulrich Drepper [Thu, 13 Mar 2003 01:06:30 +0000 (01:06 +0000)]
Use shlib-compat.h macros instead of .symver directly.
Roland McGrath [Wed, 12 Mar 2003 21:40:02 +0000 (21:40 +0000)]
2003-03-12 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/elf/configure.in: Remove
AC_DEFINE(PI_STATIC_AND_HIDDEN). Not supported for PowerPC64.
* sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
Roland McGrath [Wed, 12 Mar 2003 21:39:43 +0000 (21:39 +0000)]
2003-03-12 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/powerpc/powerpc64/elf/configure.in: Remove
AC_DEFINE(PI_STATIC_AND_HIDDEN). Not supported for PowerPC64.
* sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
Ulrich Drepper [Wed, 12 Mar 2003 20:03:07 +0000 (20:03 +0000)]
Update.
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.
Ulrich Drepper [Wed, 12 Mar 2003 18:44:29 +0000 (18:44 +0000)]
(pthread_cond_t): Add padding.
Roland McGrath [Wed, 12 Mar 2003 10:30:26 +0000 (10:30 +0000)]
* 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/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.
Roland McGrath [Wed, 12 Mar 2003 10:28:07 +0000 (10:28 +0000)]
2003-03-12 Roland McGrath <roland@redhat.com>
* 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.
Ulrich Drepper [Wed, 12 Mar 2003 09:53:44 +0000 (09:53 +0000)]
Update.
* 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.
Ulrich Drepper [Wed, 12 Mar 2003 08:57:35 +0000 (08:57 +0000)]
Update.
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.
Ulrich Drepper [Wed, 12 Mar 2003 08:41:10 +0000 (08:41 +0000)]
Return result of lock re-get if it fails.
Roland McGrath [Wed, 12 Mar 2003 07:45:15 +0000 (07:45 +0000)]
* sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
Check SYM_MAP rather than SYM as definedness check.
Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
Don't handle R_PPC64_REL24 reloc.
Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
* sysdeps/powerpc/powerpc64/dl-machine.h
[USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
block, so we cover all the TPREL16* flavors without 6 ||s.
[USE_TLS] (elf_machine_tprel): New function.
(elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
and handle TPREL16 relocs too. Return rather than break for DTPREL64.
Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
Roland McGrath [Wed, 12 Mar 2003 07:45:07 +0000 (07:45 +0000)]
2003-03-11 Roland McGrath <roland@redhat.com>
* sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
Check SYM_MAP rather than SYM as definedness check.
Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
Don't handle R_PPC64_REL24 reloc.
Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
* sysdeps/powerpc/powerpc64/dl-machine.h
[USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
block, so we cover all the TPREL16* flavors without 6 ||s.
[USE_TLS] (elf_machine_tprel): New function.
(elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
and handle TPREL16 relocs too. Return rather than break for DTPREL64.
Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
Ulrich Drepper [Wed, 12 Mar 2003 05:45:00 +0000 (05:45 +0000)]
Update.
* 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.
Ulrich Drepper [Wed, 12 Mar 2003 01:06:30 +0000 (01:06 +0000)]
Update.
2003-03-11 Ralf Baechle <ralf@linux-mips.org>
* sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
instead of jalr to invoke subroutine so restoring the $gp register
will work properly.
Ulrich Drepper [Tue, 11 Mar 2003 23:26:35 +0000 (23:26 +0000)]
Update.
* 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.
Ulrich Drepper [Tue, 11 Mar 2003 22:02:29 +0000 (22:02 +0000)]
Update.
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.
Ulrich Drepper [Tue, 11 Mar 2003 19:40:00 +0000 (19:40 +0000)]
Update.
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.
Ulrich Drepper [Tue, 11 Mar 2003 19:02:26 +0000 (19:02 +0000)]
Update.
* 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.
Ulrich Drepper [Tue, 11 Mar 2003 10:38:41 +0000 (10:38 +0000)]
Update.
2003-03-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_broadcast.S: New file.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_signal.S: New file.
* sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: New file.
Ulrich Drepper [Tue, 11 Mar 2003 10:36:15 +0000 (10:36 +0000)]
pthread_cond_wait implementation for Linux/x86-64.
Roland McGrath [Tue, 11 Mar 2003 09:30:37 +0000 (09:30 +0000)]
* sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
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.
Roland McGrath [Tue, 11 Mar 2003 09:20:36 +0000 (09:20 +0000)]
2003-03-11 Jakub Jelinek <jakub@redhat.com>
* sysdeps/pthread/createthread.c (ARCH_CLONE): Define if not defined.
(create_thread): Only assert PD->tcb != NULL under [TLS_TCB_AT_TP].
Use ARCH_CLONE.
* allocatestack.c (ALLOCATE_STACK_PARMS): New macro.
[NEED_SEPARATE_REGISTER_STACK] (STACK_VARIABLES,
STACK_VARIABLES_ARGS, STACK_VARIABLES_PARMS, ALLOCATE_STACK_PARMS,
ALLOCATE_STACK): New macros.
(TLS_TPADJ): New macro.
(get_cached_stack, queue_stack, __deallocate_stack): Use TLS_TPADJ.
(allocate_stack): Handle TLS_DTV_AT_TP and
NEED_SEPARATE_REGISTER_STACK. Use TLS_TPADJ.
* pthread_create.c (__pthread_create_2_1) [! TLS_TCB_AT_TP]:
Don't set PD->self.
* init.c [__ia64__] (__NR_set_tid_address): Define.
Ulrich Drepper [Tue, 11 Mar 2003 08:31:35 +0000 (08:31 +0000)]
pthread_cond_signal implementation for Linux/x86-64.
Ulrich Drepper [Tue, 11 Mar 2003 06:52:08 +0000 (06:52 +0000)]
Update.
* 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.
Ulrich Drepper [Tue, 11 Mar 2003 05:52:12 +0000 (05:52 +0000)]
Update.
* sysdeps/unix/sysv/linux/x86_64/pthread_barrier_wait.S: New file
* sysdeps/unix/sysv/linux/sh/pthread_barrier_wait.S: Likewise.
Ulrich Drepper [Tue, 11 Mar 2003 05:26:32 +0000 (05:26 +0000)]
Update.
* 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.
Ulrich Drepper [Tue, 11 Mar 2003 04:07:00 +0000 (04:07 +0000)]
Update.
* 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.
Ulrich Drepper [Tue, 11 Mar 2003 01:01:24 +0000 (01:01 +0000)]
Update.
* 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.
Ulrich Drepper [Tue, 11 Mar 2003 00:49:38 +0000 (00:49 +0000)]
Update.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S
(__lll_timedwait_tid): Remove one unnecessary instruction.
Ulrich Drepper [Mon, 10 Mar 2003 23:42:41 +0000 (23:42 +0000)]
Update.
* 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.
Ulrich Drepper [Mon, 10 Mar 2003 23:02:10 +0000 (23:02 +0000)]
Fix typo.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Not needed anymore.
Ulrich Drepper [Mon, 10 Mar 2003 22:27:01 +0000 (22:27 +0000)]
Update.
* 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.
Ulrich Drepper [Mon, 10 Mar 2003 22:11:26 +0000 (22:11 +0000)]
Update.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Don't define
LOCK is already defined. Don't define lll_unlock_wake_cb and
__lll_timedwait_tid for libc.so.
* sysdeps/unix/sysv/linux/i386/i486/libc-lowlevellock.S: Only
define LOCK here (if UP is not defined). The actual code is in
lowlevellock.S.
Ulrich Drepper [Mon, 10 Mar 2003 21:44:36 +0000 (21:44 +0000)]
Update.
* sysdeps/unix/sysv/linux/sh/lowlevelrwlock.h: Removed.
Ulrich Drepper [Mon, 10 Mar 2003 21:42:52 +0000 (21:42 +0000)]
Update.
* sysdeps/unix/sysv/linux/s390/lowlevelsem.h: Likewise.
* sysdeps/unix/sysv/linux/s390/sem_post.c: Include lowlevellock.h
instead of lowlevelsem.h.
* sysdeps/unix/sysv/linux/s390/sem_timedwait.c: Likewise.
* sysdeps/unix/sysv/linux/s390/sem_trywait.c: Likewise.
* sysdeps/unix/sysv/linux/s390/sem_wait.c: Likewise.
Ulrich Drepper [Mon, 10 Mar 2003 21:32:44 +0000 (21:32 +0000)]
Update.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: New needed anymore.
Ulrich Drepper [Mon, 10 Mar 2003 21:31:55 +0000 (21:31 +0000)]
Not needed at all.
Roland McGrath [Mon, 10 Mar 2003 21:04:45 +0000 (21:04 +0000)]
2003-03-10 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
Copy extra params for NPTL to registers used in clone syscall.
Roland McGrath [Mon, 10 Mar 2003 21:04:29 +0000 (21:04 +0000)]
2003-03-10 Steven Munroe <sjmunroe@us.ibm.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
Copy extra params for NPTL to registers used in clone syscall.
Ulrich Drepper [Mon, 10 Mar 2003 21:03:03 +0000 (21:03 +0000)]
Update.
* sysdeps/unix/sysv/linux/Makefile (gen-as-const-headers): Add
lowlevelrwlock.sym.
* sysdeps/unix/sysv/linux/lowlevelrwlock.sym: New file.
* sysdeps/unix/sysv/linux/i386/lowlevelrwlock.h: Removed.
Ulrich Drepper [Mon, 10 Mar 2003 19:37:46 +0000 (19:37 +0000)]
Update.
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h (lll_trylock): Fix
register loading.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h (lll_trylock): Undo
last changed. D'oh.
Ulrich Drepper [Mon, 10 Mar 2003 19:36:23 +0000 (19:36 +0000)]
(lll_trylock): Undo last changed. D'oh.
Roland McGrath [Mon, 10 Mar 2003 19:21:23 +0000 (19:21 +0000)]
* sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
call names for pread and pwrite.
Roland McGrath [Mon, 10 Mar 2003 19:20:18 +0000 (19:20 +0000)]
2003-03-10 Roland McGrath <roland@redhat.com>
* td_ta_thr_iter.c (iterate_thread_list): Don't use `header.data.'
prefix for `struct pthread' members.
* td_thr_validate.c (check_thread_list): Likewise.
* td_thr_tls_get_addr.c (td_thr_tls_get_addr): Likewise.
Ulrich Drepper [Mon, 10 Mar 2003 19:00:37 +0000 (19:00 +0000)]
Update.
2003-03-10 Ulrich Drepper <drepper@redhat.com>
* td_ta_thr_iter.c: Update for TCB change.
* td_thr_tls_get_addr.c: Likewise.
* td_thr_validate.c: Likewise.
Ulrich Drepper [Mon, 10 Mar 2003 18:59:25 +0000 (18:59 +0000)]
Update for TC change.
Roland McGrath [Mon, 10 Mar 2003 10:01:35 +0000 (10:01 +0000)]
* dlfcn/Makefile (libdl-routines): Add dladdr1.
* dlfcn/dladdr1.c: New file.
* dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
[__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
* elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
a const ElfNN_Sym ** to fill in.
* include/dlfcn.h: Update decl. Include <link.h>.
* dlfcn/dladdr.c (dladdr): Update caller.
* malloc/mtrace.c (tr_where): Likewise.
* sysdeps/generic/elf/backtracesyms.c: Likewise.
* sysdeps/generic/elf/backtracesymsfd.c: Likewise.
* dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
* Versions.def (libdl): Define GLIBC_2.3.3 set.
Ulrich Drepper [Mon, 10 Mar 2003 09:27:49 +0000 (09:27 +0000)]
Update.
2003-03-10 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/x86_64/lowlevellock.h: New file.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Remove declaration
of __libc_locking_needed.
(lll_trylock): Initialize %eax to zero.
* sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h: New file.
* sysdeps/unix/sysv/linux/x86_64/bits/pthreadtypes.h: Update
pthread_cond_t definition.
* sysdeps/unix/sysv/linux/x86_64/fork.c: New file.
Ulrich Drepper [Mon, 10 Mar 2003 09:26:20 +0000 (09:26 +0000)]
Lowlevel lock definitions for x86-64/Linux.
Roland McGrath [Mon, 10 Mar 2003 09:12:11 +0000 (09:12 +0000)]
2003-03-10 Roland McGrath <roland@redhat.com>
* dlfcn/Makefile (libdl-routines): Add dladdr1.
* dlfcn/dladdr1.c: New file.
* dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
[__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
* elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
a const ElfNN_Sym ** to fill in.
* include/dlfcn.h: Update decl. Include <link.h>.
* dlfcn/dladdr.c (dladdr): Update caller.
* malloc/mtrace.c (tr_where): Likewise.
* sysdeps/generic/elf/backtracesyms.c: Likewise.
* sysdeps/generic/elf/backtracesymsfd.c: Likewise.
* dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
* Versions.def (libdl): Define GLIBC_2.3.3 set.
Roland McGrath [Mon, 10 Mar 2003 09:11:13 +0000 (09:11 +0000)]
* sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
assembler command.
* sysdeps/unix/Makefile (compile-syscall): New variable.
Pass -g0 to compiler for assembling syscall stubs from stdin.
* sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
(STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
Define these to do nothing.
* configure.in: New check for -g on .S files.
* configure: Regenerated.
* config.make.in (have-cpp-asm-debuginfo): New variable.
* config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
* Makeconfig (ASFLAGS): New variable, if undefined and
$(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
* Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
Roland McGrath [Mon, 10 Mar 2003 09:10:43 +0000 (09:10 +0000)]
2003-03-10 Roland McGrath <roland@redhat.com>
* configure.in: New check for -g on .S files.
* configure: Regenerated.
* config.make.in (have-cpp-asm-debuginfo): New variable.
* config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
* Makeconfig (ASFLAGS): New variable, if undefined and
$(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
* Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
Ulrich Drepper [Mon, 10 Mar 2003 09:10:30 +0000 (09:10 +0000)]
(lll_trylock): Initialize %eax to zero.
Ulrich Drepper [Mon, 10 Mar 2003 09:00:47 +0000 (09:00 +0000)]
Remove declaration of __libc_locking_needed.
Roland McGrath [Mon, 10 Mar 2003 08:52:41 +0000 (08:52 +0000)]
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
used by NPTL on new kernels. From Paul Mackerras <paulus@samba.org>.
* rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
Roland McGrath [Mon, 10 Mar 2003 08:52:31 +0000 (08:52 +0000)]
2003-03-09 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
used by NPTL on new kernels. From Paul Mackerras <paulus@samba.org>.
Ulrich Drepper [Mon, 10 Mar 2003 08:51:08 +0000 (08:51 +0000)]
(lll_trylock): Initialize %eax to zero.
Roland McGrath [Mon, 10 Mar 2003 08:50:36 +0000 (08:50 +0000)]
2003-03-10 Roland McGrath <roland@redhat.com>
* allocatestack.c (allocate_stack) [!TLS_MULTIPLE_THREADS_IN_TCB]:
Instead of setting PD->multiple_threads, set globals
__pthread_multiple_threads and __libc_multiple_threads.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* sysdeps/i386/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Define it.
* sysdeps/s390/tls.h (TLS_MULTIPLE_THREADS_IN_TCB): Likewise.
* descr.h (struct pthread): Conditionalize first member on
[!TLS_DTV_AT_TP]. Replace the `header' member with an anonymous union
containing an anonymous tcbhead_t. Move `list' member out.
[TLS_MULTIPLE_THREADS_IN_TCB]: Define a `multiple_threads' member.
* allocatestack.c: Remove use of `header.data.' prefix.
* pthread_create.c: Likewise.
* init.c (__pthread_initialize_minimal_internal): Likewise.
* sysdeps/pthread/createthread.c (create_thread): Likewise.
* sysdeps/i386/tls.h (INSTALL_DTV): Add parens.
(THREAD_SELF, THREAD_DTV, INSTALL_NEW_DTV): No `header.data.' prefix.
* 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/i386/tls.h (tcbhead_t): Remove `list' member.
* sysdeps/s390/tls.h (tcbhead_t): Likewise.
Roland McGrath [Mon, 10 Mar 2003 08:50:26 +0000 (08:50 +0000)]
2003-03-10 Roland McGrath <roland@redhat.com>
* sysdeps/unix/sysv/linux/lowlevelcond.sym: New file.
* sysdeps/unix/sysv/linux/Makefile (gen-as-const-headers): Add it.
* sysdeps/unix/sysv/linux/sh/lowlevelcond.h: File removed.
* sysdeps/unix/sysv/linux/i386/lowlevelcond.h: Likewise.
* sysdeps/unix/sysv/linux/x86_64/lowlevelcond.h: Likewise.
Ulrich Drepper [Mon, 10 Mar 2003 08:06:20 +0000 (08:06 +0000)]
Definitions for condvar implementation on Linux/x86-64.
Ulrich Drepper [Mon, 10 Mar 2003 08:00:02 +0000 (08:00 +0000)]
Update.
* sysdeps/unix/sysv/linux/x86_64/sysdep-cancel.h: New file.
Ulrich Drepper [Mon, 10 Mar 2003 07:39:55 +0000 (07:39 +0000)]
Update.
* sysdeps/unix/sysv/linux/x86_64/pthread_once.S: Fix many
leftovers from the ia32 code.
* sysdeps/unix/sysv/linux/i386/pthread_once.S: Remove unneccessary
memory load.
(clear_once_control): Don't load %esi.
* sysdeps/x86_64/tls.h: Remove all traces of segment descriptor
handling.
* sysdeps/unix/sysv/linux/x86_64/fork.c: New file.
Ulrich Drepper [Mon, 10 Mar 2003 06:32:42 +0000 (06:32 +0000)]
Update.
* sysdeps/unix/sysv/linux/s390/createthread.c: Moved to...
* sysdeps/unix/sysv/linux/createthread.c: ...here.
Ulrich Drepper [Sun, 9 Mar 2003 23:59:21 +0000 (23:59 +0000)]
Update.
* po/da.po: Likewise.
Ulrich Drepper [Sun, 9 Mar 2003 22:52:20 +0000 (22:52 +0000)]
Update.
* po/ca.po: Likewise.
Ulrich Drepper [Sun, 9 Mar 2003 17:48:04 +0000 (17:48 +0000)]
Update.
2003-03-09 Ulrich Drepper <drepper@redhat.com>
* po/fi.po: Update from translation team.
Ulrich Drepper [Sat, 8 Mar 2003 18:56:15 +0000 (18:56 +0000)]
Update.
2003-03-08 Ulrich Drepper <drepper@redhat.com>
* rt/tst-aio7.c (do_test): Change BYTES into a #define.
Ulrich Drepper [Sat, 8 Mar 2003 10:30:42 +0000 (10:30 +0000)]
Update.
* tst-tls2.c (do_test): Add TEMP_FAILURE_RETRY around sem_wait call.
* tst-signal3.c (do_test): Likewise.
* tst-sem5.c (do_test): Likewise.
* tst-kill6.c (do_test): Likewise.
* tst-tls3.c (do_test): Likewise. Include <errno.h>.
* sysdeps/unix/sysv/linux/i386/lowlevellock.h: Use add/sub instead
of inc/dec.
* sysdeps/unix/sysv/linux/i386/lowlevelsem.h: Likewise.
* sysdeps/unix/sysv/linux/i386/pthread_once.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_unlock.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_wait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_timedwait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_signal.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_cond_broadcast.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/pthread_barrier_wait.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevelmutex.S: Likewise.
* sysdeps/unix/sysv/linux/i386/i486/lowlevellock.S: Likewise.