2003-01-07  Jakub Jelinek  <jakub@redhat.com>

	* elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
	* elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
This commit is contained in:
Ulrich Drepper 2003-01-07 18:54:08 +00:00
parent 95b0af0dd7
commit e9c7764ec9
7 changed files with 28 additions and 42 deletions

View file

@ -1,3 +1,8 @@
2003-01-07 Jakub Jelinek <jakub@redhat.com>
* elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
* elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
2003-01-07 Ulrich Drepper <drepper@redhat.com>
* math/libm-test.inc (significand_test): New function.

View file

@ -1,5 +1,5 @@
/* Support for dynamic linking code in static libc.
Copyright (C) 1996-2001, 2002 Free Software Foundation, Inc.
Copyright (C) 1996-2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -41,14 +41,7 @@ size_t _dl_platformlen;
int _dl_debug_mask;
int _dl_lazy;
/* XXX I know about at least one case where we depend on the old weak
behavior (it has to do with librt). Until we get DSO groups implemented
we have to make this the default. Bummer. --drepper */
#if 0
int _dl_dynamic_weak;
#else
int _dl_dynamic_weak = 1;
#endif
/* If nonzero print warnings about problematic situations. */
int _dl_verbose;

View file

@ -1,5 +1,5 @@
/* Run time dynamic linker.
Copyright (C) 1995-1999, 2000, 2001, 2002 Free Software Foundation, Inc.
Copyright (C) 1995-2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -91,13 +91,6 @@ struct rtld_global _rtld_global =
/* Get architecture specific initializer. */
#include <dl-procinfo.c>
._dl_debug_fd = STDERR_FILENO,
#ifndef RTLD_CORRECT_DYNAMIC_WEAK
/* XXX I know about at least one case where we depend on the old
weak behavior (it has to do with librt). Until we get DSO
groups implemented we have to make this the default.
Bummer. --drepper */
._dl_dynamic_weak = 1,
#endif
#ifdef NEED_DL_SYSINFO
._dl_sysinfo = DL_SYSINFO_DEFAULT,
#endif

View file

@ -51,14 +51,14 @@
pow, remainder, remquo, rint, lrint, llrint,
round, lround, llround,
scalb, scalbn, scalbln, signbit, sin, sincos, sinh, sqrt, tan, tanh, tgamma, trunc,
y0, y1, yn
y0, y1, yn, significand
and for the following complex math functions:
cabs, cacos, cacosh, carg, casin, casinh, catan, catanh,
ccos, ccosh, cexp, clog, cpow, cproj, csin, csinh, csqrt, ctan, ctanh.
At the moment the following functions aren't tested:
drem, significand, nan
drem, nan
Parameter handling is primitive in the moment:
--verbose=[0..3] for different levels of output:

View file

@ -1,3 +1,12 @@
2003-01-07 Jakub Jelinek <jakub@redhat.com>
* sysdeps/unix/sysv/linux/i386/dl-sysdep.h
(RTLD_CORRECT_DYNAMIC_WEAK): Remove.
(DL_SYSINFO_IMPLEMENTATION): Change into .text section and back.
* sysdeps/unix/sysv/linux/i386/i686/dl-sysdep.h
(RTLD_CORRECT_DYNAMIC_WEAK): Remove.
(DL_SYSINFO_IMPLEMENTATION): Change into .text section and back.
2003-01-06 Jakub Jelinek <jakub@redhat.com>
* pthreadP.h (LIBC_CANCEL_HANDLED): Define.

View file

@ -1,5 +1,5 @@
/* System-specific settings for dynamic linker code. IA-32 version.
Copyright (C) 2002 Free Software Foundation, Inc.
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -34,15 +34,6 @@
# define RTLD_PRIVATE_ERRNO 0
#endif
/* This configuration has in libc.so cancellable functions and other
functions which have to behave differently if the application uses
threads. It is not necessary that the thread library's definitions
are used. Therefore we can finally enabled the correct handling
of weak definitions in ld.so. See rtld.c. */
#define RTLD_CORRECT_DYNAMIC_WEAK 1
/* Traditionally system calls have been made using int $0x80. A
second method was introduced which, if possible, will use the
sysenter/syscall instructions. To signal the presence and where to
@ -58,12 +49,14 @@
extern void _dl_sysinfo_int80 (void) attribute_hidden;
# define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80
# define DL_SYSINFO_IMPLEMENTATION \
asm (".type _dl_sysinfo_int80,@function\n\t" \
asm (".text\n\t" \
".type _dl_sysinfo_int80,@function\n\t" \
".hidden _dl_sysinfo_int80\n" \
"_dl_sysinfo_int80:\n\t" \
"int $0x80;\n\t" \
"ret;\n\t" \
".size _dl_sysinfo_int80,.-_dl_sysinfo_int80");
".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \
".previous");
#endif
#endif /* dl-sysdep.h */

View file

@ -1,5 +1,5 @@
/* System-specific settings for dynamic linker code. IA-32 version.
Copyright (C) 2002 Free Software Foundation, Inc.
Copyright (C) 2002, 2003 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -34,15 +34,6 @@
# define RTLD_PRIVATE_ERRNO 0
#endif
/* This configuration has in libc.so cancellable functions and other
functions which have to behave differently if the application uses
threads. It is not necessary that the thread library's definitions
are used. Therefore we can finally enabled the correct handling
of weak definitions in ld.so. See rtld.c. */
#define RTLD_CORRECT_DYNAMIC_WEAK 1
/* Traditionally system calls have been made using int $0x80. A
second method was introduced which, if possible, will use the
sysenter/syscall instructions. To signal the presence and where to
@ -55,12 +46,14 @@
extern void _dl_sysinfo_int80 (void) attribute_hidden;
# define DL_SYSINFO_DEFAULT (uintptr_t) _dl_sysinfo_int80
# define DL_SYSINFO_IMPLEMENTATION \
asm (".type _dl_sysinfo_int80,@function\n\t" \
asm (".text\n\t" \
".type _dl_sysinfo_int80,@function\n\t" \
".hidden _dl_sysinfo_int80\n" \
"_dl_sysinfo_int80:\n\t" \
"int $0x80;\n\t" \
"ret;\n\t" \
".size _dl_sysinfo_int80,.-_dl_sysinfo_int80");
".size _dl_sysinfo_int80,.-_dl_sysinfo_int80\n\t" \
".previous");
#endif
#endif /* dl-sysdep.h */