Alexandre Oliva
87d254a7bf
* elf/dynamic-link.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Don't assume reloc_addr is aligned. * sysdeps/alpha/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/cris/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/hppa/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela, elf_machine_rel_relative, elf_machine_rela_relative): Adjust. * sysdeps/ia64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/m68k/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/mips/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela_relative, elf_machine_rela): Adjust. * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): * sysdeps/sh/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust. * sysdeps/x86_64/dl-machine.h (elf_machine_rela, elf_machine_rela_relative): Adjust.
...
2003-07-31 Alexandre Oliva <aoliva@redhat.com>
* elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
reloc_addr is aligned.
* sysdeps/alpha/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
* sysdeps/cris/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/hppa/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
* sysdeps/ia64/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/m68k/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/mips/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/powerpc/powerpc64/dl-machine.h
(elf_machine_rela_relative, elf_machine_rela): Adjust.
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative):
* sysdeps/sh/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
* sysdeps/x86_64/dl-machine.h (elf_machine_rela,
elf_machine_rela_relative): Adjust.
2003-07-31 06:33:53 +00:00
Ulrich Drepper
50441a984d
Update.
...
* sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
Fix completely broken impleentation. The second parameter is of
type struct ucontext*.
* sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
inline.
* sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
* sysdeps/generic/dl-hash.h: Likewise.
* sysdeps/generic/memcmp.c: Remove inline from
memcmp_common_alignment and memcmp_not_common_alignment definition.
2003-06-18 19:34:34 +00:00
Andreas Jaeger
2b4500480e
* sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
...
Add CFI directives.
2003-06-15 19:40:29 +00:00
Andreas Jaeger
2b1c0eeae3
Update.
...
2003-05-30 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
Add CFI directives.
* sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
directives.
* sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
Add CFI directives.
2003-05-30 16:12:18 +00:00
Ulrich Drepper
d49c05e00f
Make code compilable with SHARED.
2003-05-28 21:04:20 +00:00
Andreas Jaeger
5550a8faf4
Update.
...
2003-05-22 Andreas Jaeger <aj@suse.de>
* sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
directives.
* sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
* sysdeps/x86_64/strtok.S: Likewise.
2003-05-22 04:07:17 +00:00
Andreas Jaeger
5018956927
* sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
...
cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
* sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
(ENTRY): Likewise.
(END): Likewise.
* configure.in: Test for asm cfi directives.
* config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
2003-05-21 Andreas Jaeger <aj@suse.de>
* sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
* sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
(ENTRY): Likewise.
(END): Likewise.
* configure.in: Test for asm cfi directives.
* config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
2003-05-21 09:25:53 +00:00
Ulrich Drepper
949ec76407
Update.
...
* posix/sched.h: Change prototypes of sched_getaffinity and
sched_setaffinity. Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
* sysdeps/generic/sched_getaffinity.c: Adjust definition.
* sysdeps/generic/sched_setaffinity.c: Likewise.
* sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
__CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
__CPU_CLR, and __CPU_ISSET.
* sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
* sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
* sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
* include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
(atomic_exchange_rel): New #define.
* sysdeps/ia64/bits/atomic.h: Likewise.
* sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
atomic_exchange.
* sysdeps/m68k/m68020/bits/atomic.h: Likewise.
* sysdeps/powerpc/bits/atomic.h: Likewise.
* sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
* sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
* sysdeps/x86_64/bits/atomic.h: Likewise.
* csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
2003-05-10 05:36:37 +00:00
Andreas Jaeger
c7c8ca9753
Update.
...
* sysdeps/x86_64/fpu_control.h: New from i386.
2003-05-05 13:25:41 +00:00
Ulrich Drepper
85dd100310
Update.
...
* sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
* include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
* signal/sigaddset.c: Add libc_hidden_def.
* signal/sigdelset.c: Likewise.
2003-04-29 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
to the end of the file.
* configure.in: Change __oline__ to $LINENO.
(HAVE_BUILTIN_REDIRECTION): New check.
* config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
* include/libc-symbols.h (libc_hidden_builtin_proto,
libc_hidden_builtin_def, libc_hidden_builtin_weak,
libc_hidden_builtin_ver): Define.
* include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
strspn, strstr): Add libc_hidden_builtin_proto.
* intl/plural.y: Include string.h.
* sysdeps/alpha/alphaev6/memchr.S (memchr): Add
libc_hidden_builtin_def.
* sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
* sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
* sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
* sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
* sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
* sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
* sysdeps/alpha/memchr.S (memchr): Likewise.
* sysdeps/alpha/memset.S (memset): Likewise.
* sysdeps/alpha/strcat.S (strcat): Likewise.
* sysdeps/alpha/strchr.S (strchr): Likewise.
* sysdeps/alpha/strcmp.S (strcmp): Likewise.
* sysdeps/alpha/strcpy.S (strcpy): Likewise.
* sysdeps/alpha/strlen.S (strlen): Likewise.
* sysdeps/alpha/strncmp.S (strncmp): Likewise.
* sysdeps/alpha/strncpy.S (strncpy): Likewise.
* sysdeps/alpha/strrchr.S (strrchr): Likewise.
* sysdeps/arm/memset.S (memset): Likewise.
* sysdeps/arm/strlen.S (strlen): Likewise.
* sysdeps/generic/memchr.c (memchr): Likewise.
* sysdeps/generic/memcpy.c (memcpy): Likewise.
* sysdeps/generic/memmove.c (memmove): Likewise.
* sysdeps/generic/memset.c (memset): Likewise.
* sysdeps/generic/strcat.c (strcat): Likewise.
* sysdeps/generic/strchr.c (strchr): Likewise.
* sysdeps/generic/strcmp.c (strcmp): Likewise.
* sysdeps/generic/strcpy.c (strcpy): Likewise.
* sysdeps/generic/strcspn.c (strcspn): Likewise.
* sysdeps/generic/strlen.c (strlen): Likewise.
* sysdeps/generic/strncmp.c (strncmp): Likewise.
* sysdeps/generic/strncpy.c (strncpy): Likewise.
* sysdeps/generic/strpbrk.c (strpbrk): Likewise.
* sysdeps/generic/strrchr.c (strrchr): Likewise.
* sysdeps/generic/strspn.c (strspn): Likewise.
* sysdeps/generic/strstr.c (strstr): Likewise.
* sysdeps/i386/i486/strcat.S (strcat): Likewise.
* sysdeps/i386/i486/strlen.S (strlen): Likewise.
* sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
* sysdeps/i386/i586/memset.S (memset): Likewise.
* sysdeps/i386/i586/strchr.S (strchr): Likewise.
* sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
* sysdeps/i386/i586/strlen.S (strlen): Likewise.
* sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
* sysdeps/i386/i686/memmove.S (memmove): Likewise.
* sysdeps/i386/i686/memset.S (memset): Likewise.
* sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
* sysdeps/i386/memchr.S (memchr): Likewise.
* sysdeps/i386/memset.c (memset): Likewise.
* sysdeps/i386/strchr.S (strchr): Likewise.
* sysdeps/i386/strcspn.S (strcspn): Likewise.
* sysdeps/i386/strlen.c (strlen): Likewise.
* sysdeps/i386/strpbrk.S (strpbrk): Likewise.
* sysdeps/i386/strrchr.S (strrchr): Likewise.
* sysdeps/i386/strspn.S (strspn): Likewise.
* sysdeps/ia64/memchr.S (memchr): Likewise.
* sysdeps/ia64/memcpy.S (memcpy): Likewise.
* sysdeps/ia64/memmove.S (memmove): Likewise.
* sysdeps/ia64/memset.S (memset): Likewise.
* sysdeps/ia64/strcat.S (strcat): Likewise.
* sysdeps/ia64/strchr.S (strchr): Likewise.
* sysdeps/ia64/strcmp.S (strcmp): Likewise.
* sysdeps/ia64/strcpy.S (strcpy): Likewise.
* sysdeps/ia64/strlen.S (strlen): Likewise.
* sysdeps/ia64/strncmp.S (strncmp): Likewise.
* sysdeps/ia64/strncpy.S (strncpy): Likewise.
* sysdeps/m68k/memchr.S (memchr): Likewise.
* sysdeps/m68k/strchr.S (strchr): Likewise.
* sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
* sysdeps/mips/mips64/memset.S (memset): Likewise.
* sysdeps/mips/memcpy.S (memcpy): Likewise.
* sysdeps/mips/memset.S (memset): Likewise.
* sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
* sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
* sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
* sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
* sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
* sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
* sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
* sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
* sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
* sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
* sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
* sysdeps/powerpc/strcat.c (strcat): Likewise.
* sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
* sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
* sysdeps/sparc/sparc32/memset.S (memset): Likewise.
* sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
* sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
* sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
* sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
* sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
* sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
* sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
* sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
* sysdeps/sparc/sparc64/memset.S (memset): Likewise.
* sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
* sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
* sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
* sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
* sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
* sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
* sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
* sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
* sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
* sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
* sysdeps/sh/memcpy.S (memcpy): Likewise.
* sysdeps/sh/memset.S (memset): Likewise.
* sysdeps/sh/strlen.S (strlen): Likewise.
* sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
* sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
* sysdeps/s390/s390-32/memset.S (memset): Likewise.
* sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
* sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
* sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
* sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
* sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
* sysdeps/s390/s390-64/memset.S (memset): Likewise.
* sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
* sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
* sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
* sysdeps/x86_64/memcpy.S (memcpy): Likewise.
* sysdeps/x86_64/memset.S (memset): Likewise.
* sysdeps/x86_64/strcat.S (strcat): Likewise.
* sysdeps/x86_64/strchr.S (strchr): Likewise.
* sysdeps/x86_64/strcmp.S (strcmp): Likewise.
* sysdeps/x86_64/strcpy.S (strcpy): Likewise.
* sysdeps/x86_64/strcspn.S (strcspn): Likewise.
* sysdeps/x86_64/strlen.S (strlen): Likewise.
* sysdeps/x86_64/strspn.S (strspn): Likewise.
* string/string-inlines.c: Move...
* sysdeps/generic/string-inlines.c: ...here.
(__memcpy_g, __strchr_g): Remove.
(__NO_INLINE__): Define before including <string.h>,
undefine after. Include bits/string.h and bits/string2.h.
* sysdeps/i386/i486/string-inlines.c: New file.
* sysdeps/i386/string-inlines.c: New file.
* sysdeps/i386/i486/Versions: Remove.
All GLIBC_2.1.1 symbols moved...
* sysdeps/i386/Versions (libc): ...here.
2003-04-29 Ulrich Drepper <drepper@redhat.com>
2003-04-29 22:49:58 +00:00
Roland McGrath
8e27f45e05
* elf/dl-reloc.c (allocate_static_tls): Rename to...
...
(_dl_allocate_static_tls): ... this function. No longer static.
(CHECK_STATIC_TLS): Adjust.
* sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
* sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
Add SYM_MAP argument.
(elf_machine_rela): Adjust caller. Declare SYM_MAP unconditionally.
Check if SYM_MAP != NULL for R_PPC_DTPREL32. Only handle 32-bit
TLS relocs here. #ifdef out relocs which never appear in
.gnu.conflict section from dl-conflict.c processing.
* sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
Add SYM_MAP argument. Handle 16-bit TLS relocs here.
* sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
out relocs which never appear in .gnu.conflict section from
dl-conflict.c processing.
* sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
Use r_type in RESOLVE macro.
2003-04-24 17:11:08 +00:00
Ulrich Drepper
bd4f43b462
Update.
...
2003-04-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
* sysdeps/x86_64/bits/atomic.h: Likewise.
2003-04-14 Ulrich Drepper <drepper@redhat.com>
* sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
POPARGS_1 to emit labels for the mov instructions.
2003-04-14 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
2003-04-14 17:30:34 +00:00
Ulrich Drepper
09d65ff393
Update.
...
2003-04-11 Ulrich Drepper <drepper@redhat.com>
* sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
Remove HAVE_CANCELBUF code. Replace with code using the new
initializers for unwind-based cleanup handling.
* sysdeps/generic/unwind.h: Update from latest gcc version.
* sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
places to allow unwind data generation.
* sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
* sysdeps/x86_64/bits/setjmp.h: Likewise.
* sysdeps/sh/bits/setjmp.h: Likewise.
* sysdeps/powerpc/bits/setjmp.h: Likewise.
* sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
* sysdeps/alpha/bits/setjmp.h: Likewise.
2003-04-12 00:58:26 +00:00
Roland McGrath
859e708f0e
* csu/tst-atomic.c (do_test): Add some new
...
atomic_compare_and_exchange_val_acq, atomic_add_zero,
atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
* include/atomic.h (atomic_add_negative, atomic_add_zero):
Prefix local variable so that it doesn't clash with the one
in atomic_exchange_and_add.
* sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
pointers.
(atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
* sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
value into register.
* sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
Cast newval to long.
* sysdeps/x86_64/bits/atomic.h
(__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
long.
(atomic_exchange): Cast newvalue to long if sizeof == 8.
(atomic_exchange_and_add): Cast value to long if sizeof == 8.
(atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
(atomic_bit_set): Shift 1L up in all cases to shut up warnings.
2003-03-26 04:02:03 +00:00
Roland McGrath
f92abad6b9
* sysdeps/alpha/fpu/libm-test-ulps: Update.
...
* sysdeps/arm/libm-test-ulps: Update.
* sysdeps/hppa/fpu/libm-test-ulps: Update.
* sysdeps/ia64/fpu/libm-test-ulps: Update.
* sysdeps/mips/fpu/libm-test-ulps: Update.
* sysdeps/powerpc/nofpu/libm-test-ulps: Update.
* sysdeps/powerpc/fpu/libm-test-ulps: Update.
* sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
* sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
* sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
* sysdeps/s390/fpu/libm-test-ulps: Update.
* sysdeps/x86_64/fpu/libm-test-ulps: Update.
2003-03-23 00:52:23 +00:00
Roland McGrath
002ff85305
2003-03-21 Roland McGrath <roland@redhat.com>
...
* sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
constraint to permit non-constant BIT argument.
(atomic_bit_test_set): Likewise.
* sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
(atomic_bit_set): Likewise. Use 1UL in case that BIT might be >= 32.
For quadword case, use "i" constraint if __builtin_constant_p and < 32
or "r" constraint otherwise.
2003-03-22 00:05:02 +00:00
Ulrich Drepper
abfd53d134
Don't use matching memory constraints.
2003-03-21 09:43:01 +00:00
Ulrich Drepper
b97ccf3d1e
(__arch_compare_and_exchange_val_*_acq): Remove setne instruction.
2003-03-21 08:19:35 +00:00
Ulrich Drepper
5a3ab2fc18
Update.
...
2003-03-21 Ulrich Drepper <drepper@redhat.com>
* cancellation.c: Adjust for new form of compare&exchange macros.
* cleanup_defer.c: Likewise.
* init.c: Likewise.
* libc-cancellation.c: Likewise.
* old_pthread_cond_broadcast.c: Likewise.
* old_pthread_cond_signal.c: Likewise.
* old_pthread_cond_timedwait.c: Likewise.
* old_pthread_cond_wait.c: Likewise.
* pthread_cancel.c: Likewise.
* pthread_create.c: Likewise.
* pthread_detach.c: Likewise.
* pthread_join.c: Likewise.
* pthread_key_delete.c: Likewise.
* pthread_setcancelstate.c: Likewise.
* pthread_setcanceltype.c: Likewise.
* pthread_timedjoin.c: Likewise.
* pthread_tryjoin.c: Likewise.
* sysdeps/pthread/createthread.c: Likewise.
2003-03-21 08:03:25 +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
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
6f50cb0027
Update.
...
* sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
Check for signed overflow, not unsigned.
2003-02-21 Jakub Jelinek <jakub@redhat.com>
2003-02-21 19:25:36 +00:00
Andreas Jaeger
2e58582091
* sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
...
mode.
* sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
clear whole mxcsr but only exceptions.
2003-02-21 16:18:50 +00:00
Ulrich Drepper
29d9a17dba
Update.
...
2003-01-09 Jakub Jelinek <jakub@redhat.com>
* posix/test-vfork.c (noop): Add __attribute_noinline__.
* sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
* sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
defining it.
* sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
* sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
* sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
* sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
* sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
2003-01-09 20:30:21 +00:00
Ulrich Drepper
a4baf360be
Update.
...
* 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 20:46:11 +00:00
Ulrich Drepper
9b4289aaf7
Update.
...
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-31 09:36:52 +00:00
Roland McGrath
06b31ad3ef
* elf/Makefile (tests): Uncomment tst-array[123].
...
* Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
* csu/elf-init.c: New file.
* csu/Makefile (routines, static-only-routines): Add elf-init.
* sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
and __libc_csu_fini in place of _fini.
* sysdeps/arm/elf/start.S: Likewise.
* sysdeps/cris/elf/start.S: Likewise.
* sysdeps/hppa/elf/start.S: Likewise.
* sysdeps/i386/elf/start.S: Likewise.
* sysdeps/ia64/elf/start.S: Likewise.
* sysdeps/m68k/elf/start.S: Likewise.
* sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
* sysdeps/mips/elf/start.S: Likewise.
* sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
* sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
* sysdeps/s390/s390-32/elf/start.S: Likewise.
* sysdeps/s390/s390-64/elf/start.S: Likewise.
* sysdeps/sh/elf/start.S: Likewise.
* sysdeps/sparc/sparc32/elf/start.S: Likewise.
* sysdeps/sparc/sparc64/elf/start.S: Likewise.
* sysdeps/x86_64/elf/start.S: Likewise.
2002-12-09 20:37:37 +00:00
Ulrich Drepper
ea1d1dee93
Relax errors for flaot and double again a bit.
2002-12-06 22:26:57 +00:00
Andreas Jaeger
43d218d55b
Regenerated.
2002-12-03 15:39:37 +00:00
Andreas Jaeger
6e14793db0
Update.
...
* sysdeps/x86_64/strchr.S: Don't use one register for two
purposes, this fixes a bug noticed by test-strchr.c.
2002-11-12 21:43:26 +00:00
Andreas Jaeger
7288b24f0c
Fix algorithm to align source pointer correctly.
2002-11-12 17:57:51 +00:00
Roland McGrath
bde40c2f9a
* sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
...
New macros.
* sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
* soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
without defining FP_ROUNDMODE.
2002-11-01 21:49:33 +00:00
Roland McGrath
b02c687fd3
2002-10-23 Roland McGrath <roland@redhat.com>
...
* streams/stropts.h: Include <bits/xtitypes.h>.
* streams/Makefile (headers): Add bits/xtitypes.h here.
* sysdeps/generic/bits/xtitypes.h: New file.
* sysdeps/s390/bits/xtitypes.h: New file.
* sysdeps/ia64/bits/xtitypes.h: New file.
* sysdeps/x86_64/bits/xtitypes.h: New file.
2002-10-23 23:48:42 +00:00
Roland McGrath
f4b07664fb
* configure: Regenerated (using Autoconf 2.54).
...
* sysdeps/alpha/elf/configure: Likewise.
* sysdeps/generic/configure: Likewise.
* sysdeps/i386/elf/configure: Likewise.
* sysdeps/ia64/elf/configure: Likewise.
* sysdeps/mach/hurd/configure: Likewise.
* sysdeps/mach/configure: Likewise.
* sysdeps/unix/configure: Likewise.
* sysdeps/unix/common/configure: Likewise.
* sysdeps/unix/sysv/aix/configure: Likewise.
* sysdeps/unix/sysv/linux/configure: Likewise.
* sysdeps/unix/sysv/linux/mips/configure: Likewise.
* sysdeps/x86_64/elf/configure: Likewise.
* config.make.in: Nix completely-soft nonsense.
* configure.in: Likewise. Under --without-fp, use nofpu subdirectory
of machine directories instead of fpu subdirectory.
* sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
* sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
* sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
* sysdeps/powerpc/nofpu/sim-full.c: ... here.
* sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
* sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
* sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
* sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
* sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
* sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
* sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
* sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
* sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
* sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
* sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
* sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
* sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
* sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
* sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
* sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
* sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
* sysdeps/powerpc/nofpu/fegetenv.c: ... here.
* sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
* sysdeps/powerpc/nofpu/fesetenv.c: ... here.
* sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
* sysdeps/powerpc/nofpu/fegetround.c: ... here.
* sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
* sysdeps/powerpc/nofpu/fesetround.c: ... here.
* sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
* sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
* sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
* sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
* sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
* sysdeps/powerpc/nofpu/fenv_const.c: ... here.
* sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
* sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
* sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
* sysdeps/powerpc/nofpu/soft-supp.h: ... here.
* sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
* sysdeps/powerpc/nofpu/Versions: ... here, new file.
2002-10-19 Bruno Haible <bruno@clisp.org>
* sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
2002-10-18 Roland McGrath <roland@redhat.com>
* io/Makefile (routines): Add lchmod.
* io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
* sysdeps/generic/lchmod.c: New file.
* sysdeps/mach/hurd/lchmod.c: New file.
* io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
2002-10-19 20:07:18 +00:00
Roland McGrath
c2f55635da
* configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
...
* sysdeps/alpha/elf/configure.in: Likewise.
* sysdeps/i386/elf/configure.in: Likewise.
* sysdeps/mach/hurd/configure.in: Likewise.
* sysdeps/x86_64/elf/configure.in: Likewise.
2002-10-18 20:28:09 +00:00
Roland McGrath
e21c057f16
2002-10-18 Jeff Bailey <jbailey@gnu.org>
...
* sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
* sysdeps/generic/configure.in: Likewise.
* sysdeps/i386/elf/configure.in: Likewise.
* sysdeps/ia64/elf/configure.in: Likewise.
* sysdeps/mach/configure.in: Likewise.
* sysdeps/mach/hurd/configure.in: Likewise.
* sysdeps/unix/configure.in: Likewise.
* sysdeps/unix/common/configure.in: Likewise.
* sysdeps/unix/sysv/aix/configure.in: Likewise.
* sysdeps/unix/sysv/linux/configure.in: Likewise.
* sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
* sysdeps/x86_64/elf/configure.in: Likewise.
2002-10-18 19:38:06 +00:00
Roland McGrath
eb775e678d
2002-10-17 Roland McGrath <roland@redhat.com>
...
* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
before performing the reloc, not before.
* sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
2002-10-17 19:44:19 +00:00
Roland McGrath
2430d57a13
* elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
...
* elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
* sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
Call it after performing TPOFF relocs.
* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
* sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
* elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
* elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
when closing a partially-initialized object.
* elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
instead of _dl_fatal_printf when we see PT_TLS.
2002-10-17 12:10:17 +00:00
Andreas Jaeger
f977f8e520
Fix off-by-1 error in argument access.
2002-10-16 10:09:27 +00:00
Roland McGrath
ce460d04a5
* sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
...
changed from [USE_TLS && HAVE___THREAD].
* sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
* sysdeps/x86_64/dl-machine.h
(elf_machine_type_class, elf_machine_rela): Likewise.
* sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
Likewise.
* include/link.h (struct link_map): Remove member l_tls_tp_initialized.
* elf/rtld.c (_dl_start_final, dl_main): Don't use it.
(_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
* sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
instead of ___tls_get_addr.
(___tls_get_addr_internal): Add attribute_hidden to decl.
* sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
_dl_error_catch_tsd.
* elf/rtld.c (startup_error_tsd): New function.
(dl_main): Point _dl_error_catch_tsd at that.
* elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
use new function pointer instead.
* elf/dl-tsd.c: New file.
* elf/Makefile (routines): Add it.
2002-10-07 Roland McGrath <roland@redhat.com>
* elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
writev if it's available. Otherwise if [RTLD_PRIVATE_ERRNO] then
take _dl_load_lock around calling __writev.
* sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
(INLINE_SYSCALL): Use that.
* sysdeps/generic/dl-sysdep.h: New file.
* sysdeps/mach/hurd/dl-sysdep.h: New file.
* sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
* include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
[RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
access it directly.
* elf/dl-minimal.c (__errno_location): Removed.
* sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
Use GOTOFF access for errno.
* sysdeps/unix/sysv/linux/i386/sysdep.h
[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
* sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
Use PC-relative access for errno.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h
[RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
* include/tls.h: New file.
(USE___THREAD): New macro.
Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
libc or libpthread.
* sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
changed from [USE_TLS && HAVE___THREAD].
* sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
* sysdeps/unix/i386/sysdep.S: Likewise.
* sysdeps/unix/x86_64/sysdep.S: Likewise.
* include/errno.h: Likewise.
* include/netdb.h: Likewise.
* include/resolv.h: Likewise.
* sysdeps/generic/errno.c: New file.
* csu/Makefile (aux): New variable, list errno.
* sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
* sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
* sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
* sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
* sysdeps/unix/alpha/sysdep.S: Likewise.
* sysdeps/generic/start.c: Likewise.
* sysdeps/unix/start.c: Likewise.
* sysdeps/unix/arm/start.c: Likewise.
* sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
* sysdeps/unix/sparc/start.c: Likewise.
* sysdeps/unix/sysv/irix4/start.c: Likewise.
* sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
* manual/search.texi (Tree Search Function, Hash Search Function):
Mention search.h clearly.
2002-10-05 Roland McGrath <roland@redhat.com>
* elf/dl-fxstat64.c: File removed.
* elf/dl-xstat64.c: File removed.
* elf/Makefile (rtld-routines): Remove them.
* sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
Instead, use strong_alias instead of versioned_symbol in the
!SHLIB_COMPAT case.
* sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
* sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
* include/shlib-compat.h
(SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
[! NOT_IN_libc] (IS_IN_libc): Define it.
* cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
* elf/Makefile (CPPFLAGS-.os): Likewise.
* sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
Return the status instead of calling exit.
* Makeconfig (CFLAGS): Prepend -std=gnu99.
* Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
Remove superfluous rm command, whose @ plus make bugs hid
all these commands from the make output.
* include/stubs-prologue.h: New file. Give #error under #ifdef _LIBC.
* Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
Use that file's contents instead of literal echo's for the prologue.
* include/features.h: Include <gnu/stubs.h> unconditionally.
* include/gnu/stubs.h: New file.
2002-09-30 Roland McGrath <roland@redhat.com>
* elf/rtld-Rules: New file.
* elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
$(objpfx)rtld-libc.a): New targets.
(generated): Add them.
(reloc-link): Remove -o $@ from the variable.
($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
(distribute): Add rtld-Rules.
(CPPFLAGS-.os): Define this instead of CFLAGS-.os.
* Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
(common-mostlyclean, common-clean): Clean up rtld-* files.
* sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
2002-10-11 10:52:20 +00:00
Andreas Jaeger
97f208b89f
Restore correct registers.
2002-10-10 12:20:18 +00:00
Ulrich Drepper
0ea49d3cef
Update.
...
* glibc 2.3 released.
2002-10-03 11:49:01 +00:00
Roland McGrath
5bbfc1ea70
* configure: Regenerated after aclocal.m4 change.
...
* sysdeps/x86_64/sysdep.h [HAVE_ELF] (L): Define with .L##name form.
* sysdeps/unix/sysv/linux/x86_64/sysdep.h (L): Don't define it here.
* sysdeps/generic/dl-lookupcfg.h [USE_TLS] (DL_LOOKUP_RETURNS_MAP):
Define it, because _dl_sym presumes it (for any platform).
* sysdeps/x86_64/dl-tls.h: New file.
* sysdeps/x86_64/dl-machine.h (elf_machine_rela): Add a cast.
* sysdeps/x86_64/elf/configure.in: New file.
* sysdeps/x86_64/elf/configure: New generated file.
2002-09-29 10:38:40 +00:00
Roland McGrath
82c02215ce
* sysdeps/x86_64/dl-machine.h (elf_machine_type_class): Remove
...
unneeded TLS cases.
2002-09-27 08:29:54 +00:00
Roland McGrath
8323008c64
* elf/dl-addr.c (_dl_addr): Set dli_fbase to l_map_start
...
unconditionally. Set dli_fname to _dl_argv[0] only for main program.
2002-09-27 Roland McGrath <roland@redhat.com>
* elf/dl-addr.c (_dl_addr): Add a cast.
* sysdeps/x86_64/dl-machine.h (elf_machine_rela) [USE_TLS]: Handle new
TLS relocs R_X86_64_DTPMOD64, R_X86_64_DTPOFF64, and R_X86_64_TPOFF64.
* elf/elf.h (R_X86_64_DTPMOD64, R_X86_64_DTPOFF64, R_X86_64_TPOFF64,
R_X86_64_TLSGD, R_X86_64_TLSLD, R_X86_64_DTPOFF32,
R_x86_64_GOTTPOFF, R_X86_64_TPOFF32): New macros.
(R_X86_64_NUM): Update the value.
2002-09-27 07:29:51 +00:00
Roland McGrath
800a312a56
* sysdeps/generic/gmp-mparam.h: Include <bits/wordsize.h>.
...
(BITS_PER_MP_LIMB, BYTES_PER_MP_LIMB, BITS_PER_LONGINT): Define in
terms of __WORDSIZE.
* sysdeps/x86_64/gmp-mparam.h: File removed.
* sysdeps/sparc/gmp-mparam.h: File removed.
* sysdeps/mips/mips64/gmp-mparam.h: File removed.
* sysdeps/ia64/gmp-mparam.h: File removed.
* sysdeps/alpha/gmp-mparam.h: File removed.
2002-09-20 21:49:26 +00:00
Ulrich Drepper
76f2646f3d
Update.
...
2002-09-09 Jakub Jelinek <jakub@redhat.com>
* include/math.h (__finite_internal, __finitef_internal,
__finitel_internal, __isinf_internal, __isnan_internal): Remove.
(isfinite): Remove.
(__finite, __isinf, __isnan, __finitef, __isinff, __isnanf, __finitel,
__isinfl, __isnanl): Add hidden_proto.
(__fpclassify, __fpclassifyf, __fpclassifyl, __expm1l): Add
libm_hidden_proto.
* math/Makefile (libm-calls): Add s_isinf and s_isnan.
* stdio-common/printf_fp.c (__printf_fp): Remove INTUSE from
__is{inf,nan} calls.
* stdio-common/printf_size.c (printf_size): Likewise.
* sysdeps/generic/printf_fphex.c (__printf_fphex): Likewise.
* sysdeps/generic/s_ldexp.c (__ldexp): Likewise.
* sysdeps/generic/s_ldexpf.c (__ldexpf): Likewise.
* sysdeps/generic/s_ldexpl.c (__ldexpl): Likewise.
* sysdeps/generic/s_expm1l.c (__expm1l): Add libm_hidden_def.
* sysdeps/i386/fpu/s_finite.S (__finite_internal): Remove alias.
(__finite): Add hidden_def.
* sysdeps/i386/fpu/s_finitef.S (__finitef_internal): Remove alias.
(__finitef): Add hidden_def.
* sysdeps/i386/fpu/s_finitel.S (__finitel_internal): Remove alias.
(__finitel): Add hidden_def.
* sysdeps/i386/fpu/s_isinfl.c (__isinfl): Remove INTDEF. Add
hidden_def.
* sysdeps/i386/fpu/s_isnanl.c (__isnanl): Likewise.
* sysdeps/i386/fpu/s_fpclassifyl.c (__fpclassifyl): Add
libm_hidden_def.
* sysdeps/i386/fpu/s_expm1l.S (__expm1l): Likewise.
* sysdeps/ieee754/dbl-64/s_finite.c (__finite): Remove INTDEF. Add
hidden_def.
* sysdeps/ieee754/dbl-64/s_isinf.c (__isinf): Likewise.
(__isinfl): Remove INTDEF.
* sysdeps/ieee754/dbl-64/s_isnan.c (__isnan): Remove INTDEF. Add
hidden_def.
(__isnanl): Remove INTDEF.
* sysdeps/ieee754/dbl-64/s_fpclassify.c (__fpclassify): Add
libm_hidden_def.
* sysdeps/ieee754/dbl-64/e_lgamma_r.c (sin_pi): Use __sin and __cos
instead of sin and cos.
* sysdeps/ieee754/flt-32/s_finitef.c (__finitef): Remove INTDEF.
Add hidden_def.
* sysdeps/ieee754/flt-32/s_isinff.c (__isinff): Likewise.
* sysdeps/ieee754/flt-32/s_isnanf.c (__isnanf): Likewise.
* sysdeps/ieee754/flt-32/s_fpclassifyf.c (__fpclassifyf): Add
libm_hidden_def.
* sysdeps/ieee754/ldbl-128/s_finitel.c (__finitel): Remove INTDEF.
Add hidden_def.
* sysdeps/ieee754/ldbl-128/s_isinfl.c (__isinfl): Likewise.
* sysdeps/ieee754/ldbl-128/s_isnanl.c (__isnanl): Likewise.
* sysdeps/ieee754/ldbl-128/s_fpclassifyl.c (__fpclassifyl): Add
libm_hidden_def.
* sysdeps/ieee754/ldbl-128/s_expm1l.c (__expm1l): Add
libm_hidden_def.
* sysdeps/ieee754/ldbl-96/s_finitel.c (__finitel): Remove INTDEF.
Add hidden_def.
* sysdeps/ieee754/ldbl-96/s_isinfl.c (__isinfl): Likewise.
* sysdeps/ieee754/ldbl-96/s_isnanl.c (__isnanl): Likewise.
* sysdeps/ieee754/ldbl-96/s_fpclassifyl.c (__fpclassifyl): Add
libm_hidden_def.
* sysdeps/ia64/fpu/s_finite.S (__finite_internal, __finitef_internal,
__finitel_internal): Remove aliases.
(__finite, __finitef, __finitel): Add hidden_def.
* sysdeps/ia64/fpu/s_isnan.S (__isnan_internal, __isnanf_internal,
__isnanl_internal): Remove aliases.
(__isnan, __isnanf, __isnanl): Add hidden_def.
* sysdeps/ia64/fpu/s_isinf.S (__isinf_internal, __isinff_internal,
__isinfl_internal): Remove aliases.
(__isinf, __isinff, __isinfl): Add hidden_def.
* sysdeps/ia64/fpu/s_fpclassify.S (__fpclassify, __fpclassifyf,
__fpclassifyl): Add libm_hidden_def.
* sysdeps/ia64/fpu/s_expm1l.S (__expm1l): Likewise.
* sysdeps/m68k/s_isinfl.c (__isinfl): Remove INTDEF. Add hidden_def.
* sysdeps/m68k/fpu/s_isinf.c (INTDEFX): Remove.
(hidden_defx): Define and use.
* sysdeps/m68k/fpu/s_fpclassifyl.c (__fpclassifyl): Add
libm_hidden_def.
* sysdeps/m68k/fpu/s_expm1l.c (__expm1l): Likewise.
* sysdeps/m68k/s_isnanl.c (__isnanl): Add hidden_def.
* sysdeps/powerpc/fpu/s_isnan.c (__isnan, __isnanf, __isnanl):
Remove INTDEF.
(__isnan, __isnanf): Add hidden_def.
* sysdeps/x86_64/fpu/s_finitel.S (__finitel_internal): Remove alias.
(__finitel): Add libm_hidden_def.
* sysdeps/x86_64/fpu/s_expm1l.S (__expm1l): Likewise.
* include/fenv.h (feraiseexcept, fesetenv): Add libm_hidden_proto.
* sysdeps/alpha/fpu/fesetenv.c (fesetenv): Add libm_hidden_ver.
* sysdeps/alpha/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/arm/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/arm/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/generic/fesetenv.c (fesetenv): Likewise.
* sysdeps/generic/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/i386/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/i386/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/m68k/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/m68k/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/mips/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/mips/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/powerpc/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/powerpc/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/sparc/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/sparc/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/hppa/fpu/fesetenv.c (fesetenv): Add libm_hidden_def.
* sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/ia64/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/ia64/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/sh/sh4/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/sh/sh4/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/s390/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/s390/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
* sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Likewise.
* sysdeps/x86_64/fpu/fraiseexcpt.c (feraiseexcept): Likewise.
2002-09-10 01:40:26 +00:00
Andreas Jaeger
78df0fcb80
Update.
...
* sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Declare
external functions with hidden attribute.
(elf_machine_rela): Optimize.
* sysdeps/x86_64/memset.S: New file.
* sysdeps/x86_64/bzero.S: New file.
* sysdeps/x86_64/stpcpy.S: New file.
* sysdeps/x86_64/strcat.S: New file.
* sysdeps/x86_64/strchr.S: New file.
* sysdeps/x86_64/strcpy.S: New file.
* sysdeps/x86_64/strcspn.S: New file.
* sysdeps/x86_64/strlen.S: New file.
* sysdeps/x86_64/strpbrk.S: New file.
* sysdeps/x86_64/strspn.S: New file.
* sysdeps/x86_64/strcmp.S: New file.
* sysdeps/x86_64/strtok_r.S: New file.
* sysdeps/x86_64/strtok.S: New file.
* sysdeps/x86_64/memcpy.S: New file.
* sysdeps/x86_64/mempcpy.S: New file.
2002-08-31 17:45:33 +00:00
Andreas Jaeger
7c9466bc76
Update.
...
2002-08-31 Andreas Jaeger <aj@suse.de>
* sysdeps/x86_64/fpu/s_copysign.S: Fix algorithm.
* sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for double tests.
2002-08-31 10:33:26 +00:00
Andreas Jaeger
22ca6116c0
Add ulps for double tests.
2002-08-31 10:32:59 +00:00