glibc/sysdeps/sparc/dl-machine.h

328 lines
9.7 KiB
C
Raw Normal View History

/* Machine-dependent ELF dynamic relocation inline functions. SPARC version.
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
Copyright (C) 1996, 1997 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
modify it under the terms of the GNU Library General Public License as
published by the Free Software Foundation; either version 2 of the
License, or (at your option) any later version.
The GNU C Library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details.
You should have received a copy of the GNU Library General Public
License along with the GNU C Library; see the file COPYING.LIB. If
not, write to the Free Software Foundation, Inc.,
59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#define ELF_MACHINE_NAME "sparc"
#include <assert.h>
#include <string.h>
#include <link.h>
/* Some SPARC opcodes we need to use for self-modifying code. */
#define OPCODE_NOP 0x01000000 /* nop */
Update. 1997-03-20 06:07 Ulrich Drepper <drepper@cygnus.com> * sysdeps/powerpc/dl-machine.h: Fix typo in last change. * sysdeps/unix/sparc/sysdep.h: Update copyright. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * linuxthreads/sysdeps/sparc/pt-machine (RELEASE): Fix. * stdlib/tst-strtol.c: Save the value of errno, printf may modify it. * sysdeps/sparc/DEFS.h [HAVE_ELF]: Use type @function in the FUNC macro on ELF systems. * sysdeps/sparc/configure.in: Fix. * sysdeps/sparc/dl-machine.h: Fix OPCODE_CALL. * sysdeps/sparc/setjmp.S: Fix my bugs. * sysdeps/unix/sysv/linux/sparc/Dist: Add start.c, fork.S, and pipe.S. * sysdeps/unix/sysv/linux/sparc/Makefile: Define asm-CPPFLAGS and as-FLAGS-.so. * sysdeps/unix/sysv/linux/sparc/syscalls.list: Add fork, pipe, and syscall. * sysdeps/unix/sysv/linux/sparc/fork.S: New file. * sysdeps/unix/sysv/linux/sparc/pipe.S: New file. * sysdeps/unix/sysv/linux/sparc/socket.S: Fix. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Fix. * elf/dl-lookup.c (do_lookup): Return true if we found a weak symbol. (_dl_lookup_symbol): Test against the symbol being global not against the symbol being not weak (fixes important problem with the SPARC linker) * sysdeps/unix/sysv/linux/sparc/brk.c: Fix. * sysdeps/unix/sysv/linux/sparc/start.c: Startup code for Linux/SPARC (while I get my asmCPPFLAGS-so variable). 1997-03-20 01:49 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_tanhl.c (__tanhl): Correct handling of -inf. * elf/dl-reloc.c (RESOLVE): Don't try to resolve local symbols.
1997-03-20 06:17:15 +01:00
#define OPCODE_CALL 0x40000000 /* call ?; add PC-rel word address */
#define OPCODE_SETHI_G1 0x03000000 /* sethi ?, %g1; add value>>10 */
#define OPCODE_JMP_G1 0x81c06000 /* jmp %g1+?; add lo 10 bits of value */
#define OPCODE_SAVE_SP64 0x9de3bfc0 /* save %sp, -64, %sp */
/* Return nonzero iff E_MACHINE is compatible with the running host. */
static inline int
elf_machine_matches_host (Elf32_Half e_machine)
{
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
return e_machine == EM_SPARC;
}
/* Return the link-time address of _DYNAMIC. Conveniently, this is the
first element of the GOT. This must be inlined in a function which
uses global data. */
static inline Elf32_Addr
elf_machine_dynamic (void)
{
register Elf32_Addr *got asm ("%l7");
return *got;
}
/* Return the run-time load address of the shared object. */
static inline Elf32_Addr
elf_machine_load_address (void)
{
Elf32_Addr addr;
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
asm (
"add %%fp,0x44,%%o2\n\t" /* o2 = point to argc */
"ld [%%o2 - 4],%%o0\n\t" /* o0 = load argc */
"sll %%o0, 2, %%o0\n\t" /* o0 = argc * sizeof (int) */
"add %%o2,%%o0,%%o2\n\t" /* o2 = skip over argv */
"add %%o2,4,%%o2\n\t" /* skip over null after argv */
/* Now %o2 is pointing to env, skip over that as well. */
"1:\n\t"
"ld [%%o2],%%o0\n\t"
"cmp %%o0,0\n\t"
"bnz 1b\n\t"
"add %%o2,4,%%o2\n\t"
/* Note that above, we want to advance the NULL after envp so
we always add 4. */
/* Now, search for the AT_BASE property. */
"2:\n\t"
"ld [%%o2],%%o0\n\t"
"cmp %%o0,0\n\t"
"be,a 3f\n\t"
"or %%g0,%%g0,%0\n\t"
"cmp %%o0,7\n\t" /* AT_BASE = 7 */
"be,a 3f\n\t"
"ld [%%o2+4],%0\n\t"
"b 2b\n\t"
"add %%o2,8,%%o2\n\t"
/* At this point %0 has the load address for the interpreter */
"3:\n\t"
: "=r" (addr)
: /* no inputs */
: "o0", "o2");
return addr;
}
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
#ifdef RESOLVE
/* Perform the relocation specified by RELOC and SYM (which is fully resolved).
MAP is the object containing the reloc. */
static inline void
Update. 1997-03-16 18:43 Ulrich Drepper <drepper@cygnus.com> * manual/filesys.texi: Add documentation for scandir and alphasort. * math/math.c (fpclassify): Correct stupid typos. * math/libm-test.c: New file. libm test suite by Andreas Jaeger. * nss/nss_files/files-hosts.c: Add gethostbyname2 imlementation. * posix/Makefile (routines): Add bsd-getpgrp. * posix/bsd-getpgrp.c: New file. * posix/unistd.h [__FAVOR_BSD]: Define macro getpgrp which maps calls to __bsd_getpgrp. * sysdeps/generic/getpgrp.c: De-ANSI-declfy. * sysdeps/i386/huge_val.h: New file. ix87 specific infinity values. * sysdeps/m68k/huge_val.h: New file. m68k specific infinity values. * sysdeps/generic/huge_val.h: Remove definition of long double definition. Make it the same as the double definition. * sysdeps/libm-i387/e_acos.S: Fix bug in FPU stack handling. * sysdeps/libm-i387/e_acosf.S: Likewise. * sysdeps/libm-i387/e_acosl.S: Likewise. * sysdeps/libm-i387/e_asin.S: Likewise. * sysdeps/libm-i387/e_asinf.S: Likewise. * sysdeps/libm-i387/e_asinl.S: Likewise. * sysdeps/libm-i387/e_exp.S: Likewise. * sysdeps/libm-i387/e_expf.S: Likewise. * sysdeps/libm-i387/e_expl.S: Likewise. * sysdeps/libm-i387/e_scalbn.S: Likewise. * sysdeps/libm-i387/e_scalbnf.S: Likewise. * sysdeps/libm-i387/e_scalbnl.S: Likewise. * sysdeps/libm-i387/e_log.S: Optimize branch code. * sysdeps/libm-i387/e_logf.S: Likewise. * sysdeps/libm-i387/e_logl.S: Likewise. * sysdeps/libm-i387/e_log10.S: Likewise. * sysdeps/libm-i387/e_log10f.S: Likewise. * sysdeps/libm-i387/e_log10l.S: Likewise. * sysdeps/libm-i387/e_pow.S: Major rewrite to handle special cases. * sysdeps/libm-i387/e_powf.S: Likewise. * sysdeps/libm-i387/e_powl.S: Likewise. * sysdeps/libm-i387/e_expm1.S: Change return value for -inf argument to -1.0. * sysdeps/libm-i387/e_expm1f.S: Likewise. * sysdeps/libm-i387/e_expm1l.S: Likewise. * sysdeps/libm-i387/e_isinfl.c: Return -1 for -inf. * sysdeps/libm-i387/e_logbl.S: Correct return value. Discard first stack element after fxtract. * sysdeps/libm-ieee754/e_atan2l.c: New file. `long double' implementation for atan2 function. * sysdeps/libm-ieee754/k_standard.c: Return NAN for libm not in _SVID_ mode when acos, asin, atan2, log, log10 is called with argument out of range. Add new error case for pow(+0,neg). * sysdeps/libm-ieee754/s_fpclassifyf.c: Correct recognition of NaN and +-inf. * sysdeps/libm-ieee754/s_fpclassifyl.c: Mask out explicit leading digit in stupid 80 bit formats. * sysdeps/libm-ieee754/s_isinf.c: Rewrite to return -1 for -inf. * sysdeps/libm-ieee754/s_isinff.c: Likewise. * sysdeps/libm-ieee754/s_isinfl.c: Likewise. * sysdeps/libm-ieee754/s_scalbnl.c (huge, tiny): Adapt values for long double type. * sysdeps/libm-ieee754/w_atan2.c: Do not raise exception expect when in SVID mode. * sysdeps/libm-ieee754/w_atan2f.c: Likewise. * sysdeps/libm-ieee754/w_atan2l.c: Likewise. * sysdeps/libm-ieee754/w_pow.c: Distinguish error cases for x is +0 or -0. * sysdeps/posix/isfdtype.c: Add cast to prevent warning. * sysdeps/stub/fcntlbits.h: Update copyright. * sysdeps/unix/bsd/fcntlbits.h: Likewise. * sysdeps/unix/bsd/bsd4.4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/ultrix4/fcntlbits.h: Likewise. * sysdeps/unix/common/fcntlbits.h: Likewise. * sysdeps/unix/sysv/fcntlbits.h: Likewise. Define O_FSYNC as alias of O_SYNC. Add BSD compatibility macros FAPPEND, FFSYNC, FNONBLOCK, and FNDELAY. * sysdeps/unix/sysv/irix4/fcntlbits.h: Likewise. * sysdeps/unix/readdir_r.c: Don't copy whole `struct dirent' record, only reclen bytes. * sysdeps/unix/sysv/linux/fcntlbits.h [__USE_GNU]: Add O_READ, O_WRITE and O_NORW. * sysdeps/unix/sysv/linux/alpha/fcntlbits.h: Likewise. * sysdeps/unix/sysv/linux/init-first.h: Add copyright. * sysdeps/unix/sysv/linux/fxstat.c: New file. Rewrite kernel-level struct stat to user-level form. * sysdeps/unix/sysv/linux/lxstat: New file. * sysdeps/unix/sysv/linux/xstat: New file. * sysdeps/unix/sysv/linux/kernel_stat.h: Define struct stat used in kernel. * sysdeps/unix/sysv/linux/statbuf.h (struct stat): Change definition to use prescribed types for elements. (_STAT_VER): Change to value 3. * sysdeps/unix/sysv/linux/alph/statbuf.h: Likewise. * sysdeps/unix/sysv/linux/Dist: Add kernel_stat.h. * sysdeps/unix/sysv/linux/alpha/Dist: Likewise. * time/Makefile: Correct dependencies for test-tz. 1997-03-16 14:59 Philip Blundell <phil@london.uk.eu.org> * resolv/netdb.h: Add prototypes for gai_strerror and getnameinfo (needed for IPv6 basic sockets API). 1997-03-16 15:02 a sun <asun@zoology.washington.edu> * sysdeps/unix/sysv/linux/net/if_ppp.h: Don't use incompatible kernel header. * sysdeps/unix/sysv/linux/net/ppp_defs.h: Likewise. 1997-03-14 17:15 Ulrich Drepper <drepper@cygnus.com> * db/hash/hash_bigkey.c (__big_delete): Don't call __free_ovflpage without testing for last_bfp to be NULL. Reported by fabsoft@fabserver1.zarm.uni-bremen.de. 1997-03-13 11:42 Jim Meyering <meyering@asic.sc.ti.com> * time/mktime.c (TIME_T_MIN): Work around a bug in Cray C 5.0.3.0. 1997-03-14 04:00 Kurt Garloff <garloff@kg1.ping.de> * sysdeps/unix/sysv/linux/fcntlbits.h (O_FSYNC): Make alias for O_SYNC. (FASYNC): Move to __USE_BSD section. Create new macro O_ASYNC. 1997-03-14 02:50 Ulrich Drepper <drepper@cygnus.com> * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname2_r): New functions. Compare result for correct address type. (_nss_nis_gethostbyname_r): Use _nss_nis_gethostbyname2_r. Reported by Mirko Streckenbach <mirko@marian.hil.de>. 1997-02-17 01:40 Zlatko Calusic <zcalusic@srce.hr> * time/strptime.c (recursive): Return rp to caller. (strptime_internal): First check for long names, then abbreviated (month & weekday). 1997-03-10 19:44 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig: Remove useless definitions of ASFLAGS-%. * config.make.in (ASFLAGS-.so): Remove. * configure.in: Don't substitute ASFLAGS_SO. * sysdeps/sparc/configure.in: Remove file. * sysdeps/sparc/Makefile (ASFLAGS-.so): Define. 1997-03-11 17:00 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * time/strptime.c (strptime_internal) [case 'Y']: Always subtract 1900 from year, regardless of century. 1997-03-12 05:43 Ulrich Drepper <drepper@cygnus.com> * stdlib/strtod.c (_tens_in_limb) [BITS_PER_MP_LIMB > 32]: Make all numbers unsigned to make buggy gccs happy. Patch by Bryan W. Headley <bheadley@interaccess.com>. * sysdeps/unix/sysv/linux/netinet/ip.h: Add backward-compatibility definitions. Patch by a sun <asun@zoology.washington.edu>. Pretty print header. * Makerules (build-shlib): Also create symlink if library is versioned. based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>. Remove special rule to libc.so symlink. 1997-03-11 20:16 Andreas Jaeger <aj@arthur.pfalz.de> * manual/math.texi (Domain and Range Errors): Change descriptions according to recent changes for ISO C 9X. 1997-03-11 22:39 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/k_standard.c (__kernel_standard): Correct return values for acos, asin, and atan2. Reported by Andreas Jaeger <aj@arthur.pfalz.de>. 1997-03-10 18:16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * ypclnt.c (__yp_bind): Fix possible buffer overflow. 1997-03-10 18:06 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> * dirent/alphasort.c (alphasort): Interpret arguments as pointers to pointers to directory entries so that alphasort really can be used as argument for scandir. 1997-03-09 23:33 Andreas Jaeger <aj@arthur.pfalz.de> * string/strdup.c: Declare memcpy if !(_LIBC || STDC_HEADERS) instead of strcpy. 1997-03-10 03:34 Ulrich Drepper <drepper@cygnus.com> * catgets/catgets.c (catopen): Always add NLSPATH to search path for catalogs, not only if the envvar NLSPATH is not available. Reported by Andries.Brouwer@cwi.nl. 1997-03-10 02:46 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (localtime-file): Don't define using installation directory. (inst_localtime-file): New variable. * time/Makefile (installed-localtime-file): Use inst_localtime-file. Reported by Edward Seidl <seidl@janed.com>. 1997-03-10 02:31 H.J. Lu <hjl@gnu.ai.mit.edu> * time/Makefile: Add source files to dependencies for test data. 1997-03-09 22:53 Thorsten Kukuk <kukuk@weber.uni-paderborn.de> * nis/nss_nis/nis-ethers.c: Don't ignore return value of yp_all. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-rpc.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. 1997-03-08 14:37 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (elf_machine_rela): Upgrade to versioning; Added missing R_SPARC_WDISP30 handling. (RTLD_START): Implement it. * sysdeps/unix/sysv/linux/sparc/brk.c: Fix. * sysdeps/unix/sysv/linux/sparc/start.c: Startup code for Linux/SPARC. 1997-03-02 18:06 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (RTLD_START): Make arg as expected by the dynamic linker instead of having a new conditional define. Thanks to Richard Henderson for pointing this out. * elf/rtld.c: Remove usage of ELF_ADJUST_ARG. 1997-03-20 20:44 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/hurd/euidaccess.c: Define as __euidaccess and make euidaccess weak alias. 1997-03-07 10:30 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * stdio-common/printf_fphex.c (MIN): New macro. * sysdeps/generic/netinet/in.h: Include <sys/types.h>. * sysdeps/generic/sys/mman.h (msync): Mention third arg. * sysdeps/generic/netinet/in.h: Add definitions for IPv6 basic API. (See change by Philip Blundell on Feb 16, 1997.) 1997-03-05 10:40 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * hurd/hurd.h (vpprintf): Include <stdarg.h>. New declaration. * hurd/set-host.c (_hurd_set_host_config): Cast second arg to __file_name_split. * mach/mach_error.c (mach_error_string_int): Give full prototype. * mach/errstring.c (mach_error_string_int): Likewise. * mach/error_compat.c (__mach_error_map_compat): Likewise. * hurd/vpprintf.c (pwrite, vpprintf): Likewise. * stdio/vasprintf.c (vasprintf): Likewise. * mach/mach/mach_traps.h: Include <mach/kern_return.h>. * mach/spin-solid.c: Include <mach/mach_traps.h>. * mach/spin-solid.c (__spin_lock_solid): Provide arg to swtch_pri. * mach/mach_init.c: Include <mach/mig_support.h>. * mach/mach_error.h (mach_error_string, mach_error, mach_error_type): Always provide prototypes. * mach/mach/error.h (mach_error_fn_t): Comment out declaration; it appears to be entirely unused dead code. * stdio/stdio.h (freopen): Fix spelling error. 1997-03-02 13:38 Miles Bader <miles@gnu.ai.mit.edu> * string/argz.h (__need_error_t): New macro, before including <errno.h> [!__const] (__const): New macro. [!__error_t_defined] (error_t): New typedef. * sysdeps/generic/socketbits.h: Add PF_FILE as synonym for PF_LOCAL * sysdeps/unix/sysv/linux/socketbits.h: Likewise.
1997-03-16 21:28:07 +01:00
elf_machine_rela (struct link_map *map, const Elf32_Rela *reloc,
const Elf32_Sym *sym, const struct r_found_version *version)
{
Elf32_Addr *const reloc_addr = (void *) (map->l_addr + reloc->r_offset);
Elf32_Addr loadbase;
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
if (ELF32_R_TYPE (reloc->r_info) == R_SPARC_RELATIVE)
Update. 1997-03-29 17:39 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (routines): Add carg, s_ccosh and s_csinh. * math/complex.h: Add C++ protection. * math/libm-test.c (cexp_test): Correct a few bugs. (csinh_test): New function. (ccosh_test): New function. (cacos_test): New function. (cacosh_test): New function. (casinh_test): New function. (catanh_test): New function. (main): Add calls to csinh_test and ccosh_test. * misc/Makefile (tests): Add tst-tsearch. Add rule to link tst-tsearch against libm. * misc/tsearch.c: Rewritten to use Red-Black-Tree algorithm by Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>. * misc/tst-tsearch.c: New file. * stdio-common/bug5.c: Clear LD_LIBRARY_PATH environment variable before using system. * stdio-common/test-popen.c: Clear LD_LIBRARY_PATH environment variable before using popen. * sysdeps/libm-ieee754/s_cexp.c: Correct handling of special cases. * sysdeps/libm-ieee754/s_cexpf.c: Likewise. * sysdeps/libm-ieee754/s_cexpl.c: Likewise. * sysdeps/libm-i387/s_cexp.S: New file. ix87 specific implementation of complex exponential function. * sysdeps/libm-i387/s_cexpf.S: New file. * sysdeps/libm-i387/s_cexpl.S: New file. * sysdeps/libm-ieee754/s_ccosh.c: New file. Implementation of complex cosh function. * sysdeps/libm-ieee754/s_ccoshf.c: New file. * sysdeps/libm-ieee754/s_ccoshl.c: New file. * sysdeps/libm-ieee754/s_csinh.c: New file. Implementation of complex sinh function. * sysdeps/libm-ieee754/s_csinhf.c: New file. * sysdeps/libm-ieee754/s_csinhl.c: New file. * math/carg.c: New file. Generic implementatio of carg function. * math/cargf.c: New file. * math/cargl.c: New file. 1997-03-29 16:07 Ulrich Drepper <drepper@cygnus.com> * sysdeps/posix/system.c: Update copyright. 1997-03-29 04:18 Ulrich Drepper <drepper@cygnus.com> * elf/dl-error.c (_dl_catch_error): Add another argument which is passed to OPERATE. (_dl_receive_error): Likewise. * elf/link.h: Change prototypes for _dl_catch_error and _dl_receive_error to reflect above change. * elf/dl-deps.c: Don't use nested function. Call _dl_catch_error with additional argument with pointer to data. * elf/dlclose.c: Likewise. * elf/dlerror.c: Likewise. * elf/dlopen.c: Likewise. * elf/dlsym.c: Likewise. * elf/dlvsym.c: Likewise. * elf/rtld.c: Likewise. * nss/nsswitch.c: Likewise. Patch by Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE>. 1997-03-28 21:14 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/dl-error.c: Manually set up the values of "c", this avoids a call to memcpy and a zero 152 bytes structure. * sysdeps/sparc/dl-machine.h (elf_machine_rela): Test RTLD_BOOTSTRAP to avoid performing relative relocs on a second pass. * sysdeps/sparc/udiv_qrnnd.S: Make the code PIC aware. * sysdeps/unix/sysv/linux/sparc/Dist: Add kernel_stat.h and kernel_sigaction.h Add Linux/SPARC specific definitions. * sysdeps/unix/sysv/linux/sparc/fcntlbits.h: New file. * sysdeps/unix/sysv/linux/sparc/ioctls.h: New file. * sysdeps/unix/sysv/linux/sparc/kernel_sigaction.h: New file. * sysdeps/unix/sysv/linux/sparc/kernel_stat.h: New file. * sysdeps/unix/sysv/linux/sparc/sigaction.h: New file. * sysdeps/unix/sysv/linux/sparc/signum.h: New file. * sysdeps/unix/sysv/linux/sparc/termbits.h: New file. 1997-03-28 13:06 Philip Blundell <pjb27@cam.ac.uk> * sysdeps/posix/getaddrinfo.c (gaih_inet_serv): Use __getservbyname_r() not getservbyname(). (BROKEN_LIKE_POSIX): Define to 1 so we get strict POSIX behaviour.
1997-03-29 18:32:35 +01:00
{
#ifndef RTLD_BOOTSTRAP
if (map != &_dl_rtld_map) /* Already done in rtld itself. */
#endif
*reloc_addr += map->l_addr + reloc->r_addend;
}
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
else
{
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
Elf32_Addr value;
if (sym->st_shndx != SHN_UNDEF &&
ELF32_ST_BIND (sym->st_info) == STB_LOCAL)
value = map->l_addr;
else
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
{
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
value = RESOLVE (&sym, version, ELF32_R_TYPE (reloc->r_info));
if (sym)
value += sym->st_value;
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
}
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
value += reloc->r_addend; /* Assume copy relocs have zero addend. */
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
switch (ELF32_R_TYPE (reloc->r_info))
{
case R_SPARC_COPY:
memcpy (reloc_addr, (void *) value, sym->st_size);
break;
case R_SPARC_GLOB_DAT:
case R_SPARC_32:
*reloc_addr = value;
break;
case R_SPARC_JMP_SLOT:
reloc_addr[1] = OPCODE_SETHI_G1 | (value >> 10);
reloc_addr[2] = OPCODE_JMP_G1 | (value & 0x3ff);
break;
case R_SPARC_8:
*(char *) reloc_addr = value;
break;
case R_SPARC_16:
*(short *) reloc_addr = value;
break;
case R_SPARC_DISP8:
*(char *) reloc_addr = (value - (Elf32_Addr) reloc_addr);
break;
case R_SPARC_DISP16:
*(short *) reloc_addr = (value - (Elf32_Addr) reloc_addr);
break;
case R_SPARC_DISP32:
*reloc_addr = (value - (Elf32_Addr) reloc_addr);
break;
case R_SPARC_LO10:
*reloc_addr = (*reloc_addr & ~0x3ff) | (value & 0x3ff);
break;
case R_SPARC_WDISP30:
*reloc_addr = ((*reloc_addr & 0xc0000000)
| ((value - (unsigned int) reloc_addr) >> 2));
break;
case R_SPARC_HI22:
*reloc_addr = (*reloc_addr & 0xffc00000) | (value >> 10);
break;
case R_SPARC_NONE: /* Alright, Wilbur. */
break;
default:
assert (! "unexpected dynamic reloc type");
break;
}
}
}
static inline void
elf_machine_lazy_rel (struct link_map *map, const Elf32_Rela *reloc)
{
switch (ELF32_R_TYPE (reloc->r_info))
{
case R_SPARC_NONE:
break;
case R_SPARC_JMP_SLOT:
break;
default:
assert (! "unexpected PLT reloc type");
break;
}
}
Update. 1997-03-16 18:43 Ulrich Drepper <drepper@cygnus.com> * manual/filesys.texi: Add documentation for scandir and alphasort. * math/math.c (fpclassify): Correct stupid typos. * math/libm-test.c: New file. libm test suite by Andreas Jaeger. * nss/nss_files/files-hosts.c: Add gethostbyname2 imlementation. * posix/Makefile (routines): Add bsd-getpgrp. * posix/bsd-getpgrp.c: New file. * posix/unistd.h [__FAVOR_BSD]: Define macro getpgrp which maps calls to __bsd_getpgrp. * sysdeps/generic/getpgrp.c: De-ANSI-declfy. * sysdeps/i386/huge_val.h: New file. ix87 specific infinity values. * sysdeps/m68k/huge_val.h: New file. m68k specific infinity values. * sysdeps/generic/huge_val.h: Remove definition of long double definition. Make it the same as the double definition. * sysdeps/libm-i387/e_acos.S: Fix bug in FPU stack handling. * sysdeps/libm-i387/e_acosf.S: Likewise. * sysdeps/libm-i387/e_acosl.S: Likewise. * sysdeps/libm-i387/e_asin.S: Likewise. * sysdeps/libm-i387/e_asinf.S: Likewise. * sysdeps/libm-i387/e_asinl.S: Likewise. * sysdeps/libm-i387/e_exp.S: Likewise. * sysdeps/libm-i387/e_expf.S: Likewise. * sysdeps/libm-i387/e_expl.S: Likewise. * sysdeps/libm-i387/e_scalbn.S: Likewise. * sysdeps/libm-i387/e_scalbnf.S: Likewise. * sysdeps/libm-i387/e_scalbnl.S: Likewise. * sysdeps/libm-i387/e_log.S: Optimize branch code. * sysdeps/libm-i387/e_logf.S: Likewise. * sysdeps/libm-i387/e_logl.S: Likewise. * sysdeps/libm-i387/e_log10.S: Likewise. * sysdeps/libm-i387/e_log10f.S: Likewise. * sysdeps/libm-i387/e_log10l.S: Likewise. * sysdeps/libm-i387/e_pow.S: Major rewrite to handle special cases. * sysdeps/libm-i387/e_powf.S: Likewise. * sysdeps/libm-i387/e_powl.S: Likewise. * sysdeps/libm-i387/e_expm1.S: Change return value for -inf argument to -1.0. * sysdeps/libm-i387/e_expm1f.S: Likewise. * sysdeps/libm-i387/e_expm1l.S: Likewise. * sysdeps/libm-i387/e_isinfl.c: Return -1 for -inf. * sysdeps/libm-i387/e_logbl.S: Correct return value. Discard first stack element after fxtract. * sysdeps/libm-ieee754/e_atan2l.c: New file. `long double' implementation for atan2 function. * sysdeps/libm-ieee754/k_standard.c: Return NAN for libm not in _SVID_ mode when acos, asin, atan2, log, log10 is called with argument out of range. Add new error case for pow(+0,neg). * sysdeps/libm-ieee754/s_fpclassifyf.c: Correct recognition of NaN and +-inf. * sysdeps/libm-ieee754/s_fpclassifyl.c: Mask out explicit leading digit in stupid 80 bit formats. * sysdeps/libm-ieee754/s_isinf.c: Rewrite to return -1 for -inf. * sysdeps/libm-ieee754/s_isinff.c: Likewise. * sysdeps/libm-ieee754/s_isinfl.c: Likewise. * sysdeps/libm-ieee754/s_scalbnl.c (huge, tiny): Adapt values for long double type. * sysdeps/libm-ieee754/w_atan2.c: Do not raise exception expect when in SVID mode. * sysdeps/libm-ieee754/w_atan2f.c: Likewise. * sysdeps/libm-ieee754/w_atan2l.c: Likewise. * sysdeps/libm-ieee754/w_pow.c: Distinguish error cases for x is +0 or -0. * sysdeps/posix/isfdtype.c: Add cast to prevent warning. * sysdeps/stub/fcntlbits.h: Update copyright. * sysdeps/unix/bsd/fcntlbits.h: Likewise. * sysdeps/unix/bsd/bsd4.4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/ultrix4/fcntlbits.h: Likewise. * sysdeps/unix/common/fcntlbits.h: Likewise. * sysdeps/unix/sysv/fcntlbits.h: Likewise. Define O_FSYNC as alias of O_SYNC. Add BSD compatibility macros FAPPEND, FFSYNC, FNONBLOCK, and FNDELAY. * sysdeps/unix/sysv/irix4/fcntlbits.h: Likewise. * sysdeps/unix/readdir_r.c: Don't copy whole `struct dirent' record, only reclen bytes. * sysdeps/unix/sysv/linux/fcntlbits.h [__USE_GNU]: Add O_READ, O_WRITE and O_NORW. * sysdeps/unix/sysv/linux/alpha/fcntlbits.h: Likewise. * sysdeps/unix/sysv/linux/init-first.h: Add copyright. * sysdeps/unix/sysv/linux/fxstat.c: New file. Rewrite kernel-level struct stat to user-level form. * sysdeps/unix/sysv/linux/lxstat: New file. * sysdeps/unix/sysv/linux/xstat: New file. * sysdeps/unix/sysv/linux/kernel_stat.h: Define struct stat used in kernel. * sysdeps/unix/sysv/linux/statbuf.h (struct stat): Change definition to use prescribed types for elements. (_STAT_VER): Change to value 3. * sysdeps/unix/sysv/linux/alph/statbuf.h: Likewise. * sysdeps/unix/sysv/linux/Dist: Add kernel_stat.h. * sysdeps/unix/sysv/linux/alpha/Dist: Likewise. * time/Makefile: Correct dependencies for test-tz. 1997-03-16 14:59 Philip Blundell <phil@london.uk.eu.org> * resolv/netdb.h: Add prototypes for gai_strerror and getnameinfo (needed for IPv6 basic sockets API). 1997-03-16 15:02 a sun <asun@zoology.washington.edu> * sysdeps/unix/sysv/linux/net/if_ppp.h: Don't use incompatible kernel header. * sysdeps/unix/sysv/linux/net/ppp_defs.h: Likewise. 1997-03-14 17:15 Ulrich Drepper <drepper@cygnus.com> * db/hash/hash_bigkey.c (__big_delete): Don't call __free_ovflpage without testing for last_bfp to be NULL. Reported by fabsoft@fabserver1.zarm.uni-bremen.de. 1997-03-13 11:42 Jim Meyering <meyering@asic.sc.ti.com> * time/mktime.c (TIME_T_MIN): Work around a bug in Cray C 5.0.3.0. 1997-03-14 04:00 Kurt Garloff <garloff@kg1.ping.de> * sysdeps/unix/sysv/linux/fcntlbits.h (O_FSYNC): Make alias for O_SYNC. (FASYNC): Move to __USE_BSD section. Create new macro O_ASYNC. 1997-03-14 02:50 Ulrich Drepper <drepper@cygnus.com> * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname2_r): New functions. Compare result for correct address type. (_nss_nis_gethostbyname_r): Use _nss_nis_gethostbyname2_r. Reported by Mirko Streckenbach <mirko@marian.hil.de>. 1997-02-17 01:40 Zlatko Calusic <zcalusic@srce.hr> * time/strptime.c (recursive): Return rp to caller. (strptime_internal): First check for long names, then abbreviated (month & weekday). 1997-03-10 19:44 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig: Remove useless definitions of ASFLAGS-%. * config.make.in (ASFLAGS-.so): Remove. * configure.in: Don't substitute ASFLAGS_SO. * sysdeps/sparc/configure.in: Remove file. * sysdeps/sparc/Makefile (ASFLAGS-.so): Define. 1997-03-11 17:00 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * time/strptime.c (strptime_internal) [case 'Y']: Always subtract 1900 from year, regardless of century. 1997-03-12 05:43 Ulrich Drepper <drepper@cygnus.com> * stdlib/strtod.c (_tens_in_limb) [BITS_PER_MP_LIMB > 32]: Make all numbers unsigned to make buggy gccs happy. Patch by Bryan W. Headley <bheadley@interaccess.com>. * sysdeps/unix/sysv/linux/netinet/ip.h: Add backward-compatibility definitions. Patch by a sun <asun@zoology.washington.edu>. Pretty print header. * Makerules (build-shlib): Also create symlink if library is versioned. based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>. Remove special rule to libc.so symlink. 1997-03-11 20:16 Andreas Jaeger <aj@arthur.pfalz.de> * manual/math.texi (Domain and Range Errors): Change descriptions according to recent changes for ISO C 9X. 1997-03-11 22:39 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/k_standard.c (__kernel_standard): Correct return values for acos, asin, and atan2. Reported by Andreas Jaeger <aj@arthur.pfalz.de>. 1997-03-10 18:16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * ypclnt.c (__yp_bind): Fix possible buffer overflow. 1997-03-10 18:06 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> * dirent/alphasort.c (alphasort): Interpret arguments as pointers to pointers to directory entries so that alphasort really can be used as argument for scandir. 1997-03-09 23:33 Andreas Jaeger <aj@arthur.pfalz.de> * string/strdup.c: Declare memcpy if !(_LIBC || STDC_HEADERS) instead of strcpy. 1997-03-10 03:34 Ulrich Drepper <drepper@cygnus.com> * catgets/catgets.c (catopen): Always add NLSPATH to search path for catalogs, not only if the envvar NLSPATH is not available. Reported by Andries.Brouwer@cwi.nl. 1997-03-10 02:46 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (localtime-file): Don't define using installation directory. (inst_localtime-file): New variable. * time/Makefile (installed-localtime-file): Use inst_localtime-file. Reported by Edward Seidl <seidl@janed.com>. 1997-03-10 02:31 H.J. Lu <hjl@gnu.ai.mit.edu> * time/Makefile: Add source files to dependencies for test data. 1997-03-09 22:53 Thorsten Kukuk <kukuk@weber.uni-paderborn.de> * nis/nss_nis/nis-ethers.c: Don't ignore return value of yp_all. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-rpc.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. 1997-03-08 14:37 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (elf_machine_rela): Upgrade to versioning; Added missing R_SPARC_WDISP30 handling. (RTLD_START): Implement it. * sysdeps/unix/sysv/linux/sparc/brk.c: Fix. * sysdeps/unix/sysv/linux/sparc/start.c: Startup code for Linux/SPARC. 1997-03-02 18:06 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (RTLD_START): Make arg as expected by the dynamic linker instead of having a new conditional define. Thanks to Richard Henderson for pointing this out. * elf/rtld.c: Remove usage of ELF_ADJUST_ARG. 1997-03-20 20:44 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/hurd/euidaccess.c: Define as __euidaccess and make euidaccess weak alias. 1997-03-07 10:30 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * stdio-common/printf_fphex.c (MIN): New macro. * sysdeps/generic/netinet/in.h: Include <sys/types.h>. * sysdeps/generic/sys/mman.h (msync): Mention third arg. * sysdeps/generic/netinet/in.h: Add definitions for IPv6 basic API. (See change by Philip Blundell on Feb 16, 1997.) 1997-03-05 10:40 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * hurd/hurd.h (vpprintf): Include <stdarg.h>. New declaration. * hurd/set-host.c (_hurd_set_host_config): Cast second arg to __file_name_split. * mach/mach_error.c (mach_error_string_int): Give full prototype. * mach/errstring.c (mach_error_string_int): Likewise. * mach/error_compat.c (__mach_error_map_compat): Likewise. * hurd/vpprintf.c (pwrite, vpprintf): Likewise. * stdio/vasprintf.c (vasprintf): Likewise. * mach/mach/mach_traps.h: Include <mach/kern_return.h>. * mach/spin-solid.c: Include <mach/mach_traps.h>. * mach/spin-solid.c (__spin_lock_solid): Provide arg to swtch_pri. * mach/mach_init.c: Include <mach/mig_support.h>. * mach/mach_error.h (mach_error_string, mach_error, mach_error_type): Always provide prototypes. * mach/mach/error.h (mach_error_fn_t): Comment out declaration; it appears to be entirely unused dead code. * stdio/stdio.h (freopen): Fix spelling error. 1997-03-02 13:38 Miles Bader <miles@gnu.ai.mit.edu> * string/argz.h (__need_error_t): New macro, before including <errno.h> [!__const] (__const): New macro. [!__error_t_defined] (error_t): New typedef. * sysdeps/generic/socketbits.h: Add PF_FILE as synonym for PF_LOCAL * sysdeps/unix/sysv/linux/socketbits.h: Likewise.
1997-03-16 21:28:07 +01:00
#endif /* RESOLVE */
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
/* Nonzero iff TYPE should not be allowed to resolve to one of
the main executable's symbols, as for a COPY reloc. */
Update. 1997-03-23 02:11 Ulrich Drepper <drepper@cygnus.com> * time/sys/time.h: Make values ITIMER_* also available as macros. * elf/dl-support.c (_dl_sysdep_read_whole_file): Don't call __fstat but instead __fxstat directly to avoid dependency on libc.a when inline failed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_read_whole_file): Likewise. * math/Makefile (libm-routines): Add s_remquo. * sysdeps/libm-i387/s_remquo.S: New file. * sysdeps/libm-i387/s_remquof.S: New file. * sysdeps/libm-i387/s_remquol.S: New file. * sysdeps/libm-ieee754/s_remquo.c: New file. * sysdeps/libm-ieee754/s_remquof.c: New file. * sysdeps/libm-ieee754/s_remquol.c: New file. * math/libm-test.c (remquo_test): New function. * sysdeps/libm-ieee754/s_rintl.c: Handle implicit leading one correctly. 1997-03-22 14:06 Ulrich Drepper <drepper@cygnus.com> * math/Makefile (libm-calls): Add s_nan. * sysdeps/libm-ieee754/s_nan.c: New file. Implement `nan' function. * sysdeps/libm-ieee754/s_nanf.c: New file. Implement `nanf' function. * sysdeps/libm-ieee754/s_nanl.c: New file. Implement `nanl' function. * math/libm-test.c (basic_tests): Add tests for `nan' function. * math/libm-test.c (copysign_test): New function. (main): Call copysign_test. 1997-03-22 06:28 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_nextafter.c: Return y if x == y. * sysdeps/libm-ieee754/s_nextafterf.c: Likewise. * sysdeps/libm-ieee754/s_nextafterl.c: Likewise. * sysdeps/libm-i387/s_nextafterl.c: Likewise. * math/libm-test.c (fdim_test, fmin_test, fmax_test, nextafter_test): New functions. Test these functions. (main): Call above new functions. 1997-03-22 04:53 Ulrich Drepper <drepper@cygnus.com> * Net release 2.0.2. 1997-03-22 04:37 Ulrich Drepper <drepper@cygnus.com> * sysdeps/unix/sysv/linux/termbits.h (OXTABS): Define as alias for XTABS. * sysdeps/unix/sysv/linux/alpha/termbits.h (OXTABS): Likewise. * termios/sys/ttydefaults.h: Partly revert patch by Andreas Schwab of Sun Dec 15 16:33:44 1996. Proposed by Thomas Bushnell <thomas@gnu.ai.mit.edu>. 1997-03-21 13:41 Roland McGrath <roland@baalperazim.frob.com> * sysdeps/sparc/dl-machine.h (elf_machine_rel): Rewritten as for i386. Check here for non-SHN_UNDEF STB_LOCAL symbols don't do any lookup or consult their values. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p, ELF_MACHINE_RELOC_NOPLT): New macros. * elf/rtld.c (dl_main): Pass ELF_MACHINE_RELOC_NOPLT to _dl_lookup_symbol in place of DL_LOOKUP_NOPLT. * sysdeps/i386/dl-machine.h (ELF_MACHINE_RELOC_NOPLT): New macro. * sysdeps/i386/dl-machine.h (elf_machine_rel): Rewritten to do the symbol lookup before checking reloc type except for R_386_RELATIVE. (elf_machine_lookup_noexec_p, elf_machine_lookup_noplt_p): New macros. * elf/dl-reloc.c (RESOLVE): Remove STB_LOCAL check; let it be per-machine since it supposedly can't happen on i386. * elf/dl-lookup.c (do_lookup): Change arg FLAGS to RELOC_TYPE. Use elf_machine_lookup_{noexec,noplt}_p macros on it. Remove gratuitous indirection from REF arg; change callers. (_dl_lookup_symbol, _dl_lookup_versioned_symbol): Change arg name. (_dl_lookup_symbol_skip, _dl_lookup_versioned_symbol_skip): Remove FLAGS arg altogether. * elf/dlsym.c: Remove argument of FLAGS parameter. * elf/dlvsym.c: Likewise. * elf/link.h: Update decls. * Makefile (distribute): Add BUGS.
1997-03-23 02:54:07 +01:00
#define elf_machine_lookup_noexec_p(type) ((type) == R_SPARC_COPY)
/* Nonzero iff TYPE describes relocation of a PLT entry, so
PLT entries should not be allowed to define the value. */
#define elf_machine_lookup_noplt_p(type) ((type) == R_SPARC_JMP_SLOT)
/* A reloc type used for ld.so cmdline arg lookups to reject PLT entries. */
#define ELF_MACHINE_RELOC_NOPLT R_SPARC_JMP_SLOT
/* The SPARC never uses Elf32_Rel relocations. */
#define ELF_MACHINE_NO_REL 1
/* Set up the loaded object described by L so its unrelocated PLT
entries will jump to the on-demand fixup code in dl-runtime.c. */
static inline void
elf_machine_runtime_setup (struct link_map *l, int lazy)
{
Elf32_Addr *plt;
extern void _dl_runtime_resolve (Elf32_Word);
if (l->l_info[DT_JMPREL] && lazy)
{
/* The entries for functions in the PLT have not yet been filled in.
Their initial contents will arrange when called to set the high 22
bits of %g1 with an offset into the .rela.plt section and jump to
the beginning of the PLT. */
plt = (Elf32_Addr *) (l->l_addr + l->l_info[DT_PLTGOT]->d_un.d_ptr);
/* The beginning of the PLT does:
save %sp, -64, %sp
pltpc: call _dl_runtime_resolve
nop
.word MAP
This saves the register window containing the arguments, and the
PC value (pltpc) implicitly saved in %o7 by the call points near the
location where we store the link_map pointer for this object. */
plt[0] = OPCODE_SAVE_SP64; /* save %sp, -64, %sp */
/* Construct PC-relative word address. */
plt[1] = OPCODE_CALL | (((Elf32_Addr) &_dl_runtime_resolve -
(Elf32_Addr) &plt[1]) >> 2);
plt[2] = OPCODE_NOP; /* Fill call delay slot. */
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
plt[3] = (Elf32_Addr *) l;
}
/* This code is used in dl-runtime.c to call the `fixup' function
and then redirect to the address it returns. */
#define ELF_MACHINE_RUNTIME_TRAMPOLINE asm ("\
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
# Trampoline for _dl_runtime_resolver
.globl _dl_runtime_resolve
.type _dl_runtime_resolve, @function
_dl_runtime_resolve:
Update. 1997-03-20 06:07 Ulrich Drepper <drepper@cygnus.com> * sysdeps/powerpc/dl-machine.h: Fix typo in last change. * sysdeps/unix/sparc/sysdep.h: Update copyright. 1997-03-19 15:13 Miguel de Icaza <miguel@nuclecu.unam.mx> * linuxthreads/sysdeps/sparc/pt-machine (RELEASE): Fix. * stdlib/tst-strtol.c: Save the value of errno, printf may modify it. * sysdeps/sparc/DEFS.h [HAVE_ELF]: Use type @function in the FUNC macro on ELF systems. * sysdeps/sparc/configure.in: Fix. * sysdeps/sparc/dl-machine.h: Fix OPCODE_CALL. * sysdeps/sparc/setjmp.S: Fix my bugs. * sysdeps/unix/sysv/linux/sparc/Dist: Add start.c, fork.S, and pipe.S. * sysdeps/unix/sysv/linux/sparc/Makefile: Define asm-CPPFLAGS and as-FLAGS-.so. * sysdeps/unix/sysv/linux/sparc/syscalls.list: Add fork, pipe, and syscall. * sysdeps/unix/sysv/linux/sparc/fork.S: New file. * sysdeps/unix/sysv/linux/sparc/pipe.S: New file. * sysdeps/unix/sysv/linux/sparc/socket.S: Fix. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Fix. * elf/dl-lookup.c (do_lookup): Return true if we found a weak symbol. (_dl_lookup_symbol): Test against the symbol being global not against the symbol being not weak (fixes important problem with the SPARC linker) * sysdeps/unix/sysv/linux/sparc/brk.c: Fix. * sysdeps/unix/sysv/linux/sparc/start.c: Startup code for Linux/SPARC (while I get my asmCPPFLAGS-so variable). 1997-03-20 01:49 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/s_tanhl.c (__tanhl): Correct handling of -inf. * elf/dl-reloc.c (RESOLVE): Don't try to resolve local symbols.
1997-03-20 06:17:15 +01:00
t 1
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
#call %g0
# Pass two args to fixup: the PLT address computed from the PC saved
# in the PLT's call insn, and the reloc offset passed in %g1.
#ld [%o7 + 8], %o1 | Second arg, loaded from PLTPC[2].
#call fixup
#shrl %g1, 22, %o0 | First arg, set in delay slot of call.
# Jump to the real function.
#jmpl %o0, %g0
# In the delay slot of that jump, restore the register window
# saved by the first insn of the PLT.
#restore
.size _dl_runtime_resolve, . - _dl_runtime_resolve
");
/* The PLT uses Elf32_Rela relocs. */
#define elf_machine_relplt elf_machine_rela
}
/* Mask identifying addresses reserved for the user program,
where the dynamic linker should not map anything. */
#define ELF_MACHINE_USER_ADDRESS_MASK ???
/* Initial entry point code for the dynamic linker.
The C function `_dl_start' is the real entry point;
its return value is the user program's entry point. */
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
#define RTLD_START __asm__ ( \
".text\n\
.globl _start\n\
.type _start,@function\n\
_start:\n\
Update. 1997-03-16 18:43 Ulrich Drepper <drepper@cygnus.com> * manual/filesys.texi: Add documentation for scandir and alphasort. * math/math.c (fpclassify): Correct stupid typos. * math/libm-test.c: New file. libm test suite by Andreas Jaeger. * nss/nss_files/files-hosts.c: Add gethostbyname2 imlementation. * posix/Makefile (routines): Add bsd-getpgrp. * posix/bsd-getpgrp.c: New file. * posix/unistd.h [__FAVOR_BSD]: Define macro getpgrp which maps calls to __bsd_getpgrp. * sysdeps/generic/getpgrp.c: De-ANSI-declfy. * sysdeps/i386/huge_val.h: New file. ix87 specific infinity values. * sysdeps/m68k/huge_val.h: New file. m68k specific infinity values. * sysdeps/generic/huge_val.h: Remove definition of long double definition. Make it the same as the double definition. * sysdeps/libm-i387/e_acos.S: Fix bug in FPU stack handling. * sysdeps/libm-i387/e_acosf.S: Likewise. * sysdeps/libm-i387/e_acosl.S: Likewise. * sysdeps/libm-i387/e_asin.S: Likewise. * sysdeps/libm-i387/e_asinf.S: Likewise. * sysdeps/libm-i387/e_asinl.S: Likewise. * sysdeps/libm-i387/e_exp.S: Likewise. * sysdeps/libm-i387/e_expf.S: Likewise. * sysdeps/libm-i387/e_expl.S: Likewise. * sysdeps/libm-i387/e_scalbn.S: Likewise. * sysdeps/libm-i387/e_scalbnf.S: Likewise. * sysdeps/libm-i387/e_scalbnl.S: Likewise. * sysdeps/libm-i387/e_log.S: Optimize branch code. * sysdeps/libm-i387/e_logf.S: Likewise. * sysdeps/libm-i387/e_logl.S: Likewise. * sysdeps/libm-i387/e_log10.S: Likewise. * sysdeps/libm-i387/e_log10f.S: Likewise. * sysdeps/libm-i387/e_log10l.S: Likewise. * sysdeps/libm-i387/e_pow.S: Major rewrite to handle special cases. * sysdeps/libm-i387/e_powf.S: Likewise. * sysdeps/libm-i387/e_powl.S: Likewise. * sysdeps/libm-i387/e_expm1.S: Change return value for -inf argument to -1.0. * sysdeps/libm-i387/e_expm1f.S: Likewise. * sysdeps/libm-i387/e_expm1l.S: Likewise. * sysdeps/libm-i387/e_isinfl.c: Return -1 for -inf. * sysdeps/libm-i387/e_logbl.S: Correct return value. Discard first stack element after fxtract. * sysdeps/libm-ieee754/e_atan2l.c: New file. `long double' implementation for atan2 function. * sysdeps/libm-ieee754/k_standard.c: Return NAN for libm not in _SVID_ mode when acos, asin, atan2, log, log10 is called with argument out of range. Add new error case for pow(+0,neg). * sysdeps/libm-ieee754/s_fpclassifyf.c: Correct recognition of NaN and +-inf. * sysdeps/libm-ieee754/s_fpclassifyl.c: Mask out explicit leading digit in stupid 80 bit formats. * sysdeps/libm-ieee754/s_isinf.c: Rewrite to return -1 for -inf. * sysdeps/libm-ieee754/s_isinff.c: Likewise. * sysdeps/libm-ieee754/s_isinfl.c: Likewise. * sysdeps/libm-ieee754/s_scalbnl.c (huge, tiny): Adapt values for long double type. * sysdeps/libm-ieee754/w_atan2.c: Do not raise exception expect when in SVID mode. * sysdeps/libm-ieee754/w_atan2f.c: Likewise. * sysdeps/libm-ieee754/w_atan2l.c: Likewise. * sysdeps/libm-ieee754/w_pow.c: Distinguish error cases for x is +0 or -0. * sysdeps/posix/isfdtype.c: Add cast to prevent warning. * sysdeps/stub/fcntlbits.h: Update copyright. * sysdeps/unix/bsd/fcntlbits.h: Likewise. * sysdeps/unix/bsd/bsd4.4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/ultrix4/fcntlbits.h: Likewise. * sysdeps/unix/common/fcntlbits.h: Likewise. * sysdeps/unix/sysv/fcntlbits.h: Likewise. Define O_FSYNC as alias of O_SYNC. Add BSD compatibility macros FAPPEND, FFSYNC, FNONBLOCK, and FNDELAY. * sysdeps/unix/sysv/irix4/fcntlbits.h: Likewise. * sysdeps/unix/readdir_r.c: Don't copy whole `struct dirent' record, only reclen bytes. * sysdeps/unix/sysv/linux/fcntlbits.h [__USE_GNU]: Add O_READ, O_WRITE and O_NORW. * sysdeps/unix/sysv/linux/alpha/fcntlbits.h: Likewise. * sysdeps/unix/sysv/linux/init-first.h: Add copyright. * sysdeps/unix/sysv/linux/fxstat.c: New file. Rewrite kernel-level struct stat to user-level form. * sysdeps/unix/sysv/linux/lxstat: New file. * sysdeps/unix/sysv/linux/xstat: New file. * sysdeps/unix/sysv/linux/kernel_stat.h: Define struct stat used in kernel. * sysdeps/unix/sysv/linux/statbuf.h (struct stat): Change definition to use prescribed types for elements. (_STAT_VER): Change to value 3. * sysdeps/unix/sysv/linux/alph/statbuf.h: Likewise. * sysdeps/unix/sysv/linux/Dist: Add kernel_stat.h. * sysdeps/unix/sysv/linux/alpha/Dist: Likewise. * time/Makefile: Correct dependencies for test-tz. 1997-03-16 14:59 Philip Blundell <phil@london.uk.eu.org> * resolv/netdb.h: Add prototypes for gai_strerror and getnameinfo (needed for IPv6 basic sockets API). 1997-03-16 15:02 a sun <asun@zoology.washington.edu> * sysdeps/unix/sysv/linux/net/if_ppp.h: Don't use incompatible kernel header. * sysdeps/unix/sysv/linux/net/ppp_defs.h: Likewise. 1997-03-14 17:15 Ulrich Drepper <drepper@cygnus.com> * db/hash/hash_bigkey.c (__big_delete): Don't call __free_ovflpage without testing for last_bfp to be NULL. Reported by fabsoft@fabserver1.zarm.uni-bremen.de. 1997-03-13 11:42 Jim Meyering <meyering@asic.sc.ti.com> * time/mktime.c (TIME_T_MIN): Work around a bug in Cray C 5.0.3.0. 1997-03-14 04:00 Kurt Garloff <garloff@kg1.ping.de> * sysdeps/unix/sysv/linux/fcntlbits.h (O_FSYNC): Make alias for O_SYNC. (FASYNC): Move to __USE_BSD section. Create new macro O_ASYNC. 1997-03-14 02:50 Ulrich Drepper <drepper@cygnus.com> * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname2_r): New functions. Compare result for correct address type. (_nss_nis_gethostbyname_r): Use _nss_nis_gethostbyname2_r. Reported by Mirko Streckenbach <mirko@marian.hil.de>. 1997-02-17 01:40 Zlatko Calusic <zcalusic@srce.hr> * time/strptime.c (recursive): Return rp to caller. (strptime_internal): First check for long names, then abbreviated (month & weekday). 1997-03-10 19:44 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig: Remove useless definitions of ASFLAGS-%. * config.make.in (ASFLAGS-.so): Remove. * configure.in: Don't substitute ASFLAGS_SO. * sysdeps/sparc/configure.in: Remove file. * sysdeps/sparc/Makefile (ASFLAGS-.so): Define. 1997-03-11 17:00 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * time/strptime.c (strptime_internal) [case 'Y']: Always subtract 1900 from year, regardless of century. 1997-03-12 05:43 Ulrich Drepper <drepper@cygnus.com> * stdlib/strtod.c (_tens_in_limb) [BITS_PER_MP_LIMB > 32]: Make all numbers unsigned to make buggy gccs happy. Patch by Bryan W. Headley <bheadley@interaccess.com>. * sysdeps/unix/sysv/linux/netinet/ip.h: Add backward-compatibility definitions. Patch by a sun <asun@zoology.washington.edu>. Pretty print header. * Makerules (build-shlib): Also create symlink if library is versioned. based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>. Remove special rule to libc.so symlink. 1997-03-11 20:16 Andreas Jaeger <aj@arthur.pfalz.de> * manual/math.texi (Domain and Range Errors): Change descriptions according to recent changes for ISO C 9X. 1997-03-11 22:39 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/k_standard.c (__kernel_standard): Correct return values for acos, asin, and atan2. Reported by Andreas Jaeger <aj@arthur.pfalz.de>. 1997-03-10 18:16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * ypclnt.c (__yp_bind): Fix possible buffer overflow. 1997-03-10 18:06 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> * dirent/alphasort.c (alphasort): Interpret arguments as pointers to pointers to directory entries so that alphasort really can be used as argument for scandir. 1997-03-09 23:33 Andreas Jaeger <aj@arthur.pfalz.de> * string/strdup.c: Declare memcpy if !(_LIBC || STDC_HEADERS) instead of strcpy. 1997-03-10 03:34 Ulrich Drepper <drepper@cygnus.com> * catgets/catgets.c (catopen): Always add NLSPATH to search path for catalogs, not only if the envvar NLSPATH is not available. Reported by Andries.Brouwer@cwi.nl. 1997-03-10 02:46 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (localtime-file): Don't define using installation directory. (inst_localtime-file): New variable. * time/Makefile (installed-localtime-file): Use inst_localtime-file. Reported by Edward Seidl <seidl@janed.com>. 1997-03-10 02:31 H.J. Lu <hjl@gnu.ai.mit.edu> * time/Makefile: Add source files to dependencies for test data. 1997-03-09 22:53 Thorsten Kukuk <kukuk@weber.uni-paderborn.de> * nis/nss_nis/nis-ethers.c: Don't ignore return value of yp_all. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-rpc.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. 1997-03-08 14:37 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (elf_machine_rela): Upgrade to versioning; Added missing R_SPARC_WDISP30 handling. (RTLD_START): Implement it. * sysdeps/unix/sysv/linux/sparc/brk.c: Fix. * sysdeps/unix/sysv/linux/sparc/start.c: Startup code for Linux/SPARC. 1997-03-02 18:06 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (RTLD_START): Make arg as expected by the dynamic linker instead of having a new conditional define. Thanks to Richard Henderson for pointing this out. * elf/rtld.c: Remove usage of ELF_ADJUST_ARG. 1997-03-20 20:44 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/hurd/euidaccess.c: Define as __euidaccess and make euidaccess weak alias. 1997-03-07 10:30 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * stdio-common/printf_fphex.c (MIN): New macro. * sysdeps/generic/netinet/in.h: Include <sys/types.h>. * sysdeps/generic/sys/mman.h (msync): Mention third arg. * sysdeps/generic/netinet/in.h: Add definitions for IPv6 basic API. (See change by Philip Blundell on Feb 16, 1997.) 1997-03-05 10:40 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * hurd/hurd.h (vpprintf): Include <stdarg.h>. New declaration. * hurd/set-host.c (_hurd_set_host_config): Cast second arg to __file_name_split. * mach/mach_error.c (mach_error_string_int): Give full prototype. * mach/errstring.c (mach_error_string_int): Likewise. * mach/error_compat.c (__mach_error_map_compat): Likewise. * hurd/vpprintf.c (pwrite, vpprintf): Likewise. * stdio/vasprintf.c (vasprintf): Likewise. * mach/mach/mach_traps.h: Include <mach/kern_return.h>. * mach/spin-solid.c: Include <mach/mach_traps.h>. * mach/spin-solid.c (__spin_lock_solid): Provide arg to swtch_pri. * mach/mach_init.c: Include <mach/mig_support.h>. * mach/mach_error.h (mach_error_string, mach_error, mach_error_type): Always provide prototypes. * mach/mach/error.h (mach_error_fn_t): Comment out declaration; it appears to be entirely unused dead code. * stdio/stdio.h (freopen): Fix spelling error. 1997-03-02 13:38 Miles Bader <miles@gnu.ai.mit.edu> * string/argz.h (__need_error_t): New macro, before including <errno.h> [!__const] (__const): New macro. [!__error_t_defined] (error_t): New typedef. * sysdeps/generic/socketbits.h: Add PF_FILE as synonym for PF_LOCAL * sysdeps/unix/sysv/linux/socketbits.h: Likewise.
1997-03-16 21:28:07 +01:00
/* Pass pointer to argument block to _dl_start. */\n\
add %sp,64,%o0\n\
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
call _dl_start\n\
Update. 1997-03-16 18:43 Ulrich Drepper <drepper@cygnus.com> * manual/filesys.texi: Add documentation for scandir and alphasort. * math/math.c (fpclassify): Correct stupid typos. * math/libm-test.c: New file. libm test suite by Andreas Jaeger. * nss/nss_files/files-hosts.c: Add gethostbyname2 imlementation. * posix/Makefile (routines): Add bsd-getpgrp. * posix/bsd-getpgrp.c: New file. * posix/unistd.h [__FAVOR_BSD]: Define macro getpgrp which maps calls to __bsd_getpgrp. * sysdeps/generic/getpgrp.c: De-ANSI-declfy. * sysdeps/i386/huge_val.h: New file. ix87 specific infinity values. * sysdeps/m68k/huge_val.h: New file. m68k specific infinity values. * sysdeps/generic/huge_val.h: Remove definition of long double definition. Make it the same as the double definition. * sysdeps/libm-i387/e_acos.S: Fix bug in FPU stack handling. * sysdeps/libm-i387/e_acosf.S: Likewise. * sysdeps/libm-i387/e_acosl.S: Likewise. * sysdeps/libm-i387/e_asin.S: Likewise. * sysdeps/libm-i387/e_asinf.S: Likewise. * sysdeps/libm-i387/e_asinl.S: Likewise. * sysdeps/libm-i387/e_exp.S: Likewise. * sysdeps/libm-i387/e_expf.S: Likewise. * sysdeps/libm-i387/e_expl.S: Likewise. * sysdeps/libm-i387/e_scalbn.S: Likewise. * sysdeps/libm-i387/e_scalbnf.S: Likewise. * sysdeps/libm-i387/e_scalbnl.S: Likewise. * sysdeps/libm-i387/e_log.S: Optimize branch code. * sysdeps/libm-i387/e_logf.S: Likewise. * sysdeps/libm-i387/e_logl.S: Likewise. * sysdeps/libm-i387/e_log10.S: Likewise. * sysdeps/libm-i387/e_log10f.S: Likewise. * sysdeps/libm-i387/e_log10l.S: Likewise. * sysdeps/libm-i387/e_pow.S: Major rewrite to handle special cases. * sysdeps/libm-i387/e_powf.S: Likewise. * sysdeps/libm-i387/e_powl.S: Likewise. * sysdeps/libm-i387/e_expm1.S: Change return value for -inf argument to -1.0. * sysdeps/libm-i387/e_expm1f.S: Likewise. * sysdeps/libm-i387/e_expm1l.S: Likewise. * sysdeps/libm-i387/e_isinfl.c: Return -1 for -inf. * sysdeps/libm-i387/e_logbl.S: Correct return value. Discard first stack element after fxtract. * sysdeps/libm-ieee754/e_atan2l.c: New file. `long double' implementation for atan2 function. * sysdeps/libm-ieee754/k_standard.c: Return NAN for libm not in _SVID_ mode when acos, asin, atan2, log, log10 is called with argument out of range. Add new error case for pow(+0,neg). * sysdeps/libm-ieee754/s_fpclassifyf.c: Correct recognition of NaN and +-inf. * sysdeps/libm-ieee754/s_fpclassifyl.c: Mask out explicit leading digit in stupid 80 bit formats. * sysdeps/libm-ieee754/s_isinf.c: Rewrite to return -1 for -inf. * sysdeps/libm-ieee754/s_isinff.c: Likewise. * sysdeps/libm-ieee754/s_isinfl.c: Likewise. * sysdeps/libm-ieee754/s_scalbnl.c (huge, tiny): Adapt values for long double type. * sysdeps/libm-ieee754/w_atan2.c: Do not raise exception expect when in SVID mode. * sysdeps/libm-ieee754/w_atan2f.c: Likewise. * sysdeps/libm-ieee754/w_atan2l.c: Likewise. * sysdeps/libm-ieee754/w_pow.c: Distinguish error cases for x is +0 or -0. * sysdeps/posix/isfdtype.c: Add cast to prevent warning. * sysdeps/stub/fcntlbits.h: Update copyright. * sysdeps/unix/bsd/fcntlbits.h: Likewise. * sysdeps/unix/bsd/bsd4.4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/sun/sunos4/fcntlbits.h: Likewise. * sysdeps/unix/bsd/ultrix4/fcntlbits.h: Likewise. * sysdeps/unix/common/fcntlbits.h: Likewise. * sysdeps/unix/sysv/fcntlbits.h: Likewise. Define O_FSYNC as alias of O_SYNC. Add BSD compatibility macros FAPPEND, FFSYNC, FNONBLOCK, and FNDELAY. * sysdeps/unix/sysv/irix4/fcntlbits.h: Likewise. * sysdeps/unix/readdir_r.c: Don't copy whole `struct dirent' record, only reclen bytes. * sysdeps/unix/sysv/linux/fcntlbits.h [__USE_GNU]: Add O_READ, O_WRITE and O_NORW. * sysdeps/unix/sysv/linux/alpha/fcntlbits.h: Likewise. * sysdeps/unix/sysv/linux/init-first.h: Add copyright. * sysdeps/unix/sysv/linux/fxstat.c: New file. Rewrite kernel-level struct stat to user-level form. * sysdeps/unix/sysv/linux/lxstat: New file. * sysdeps/unix/sysv/linux/xstat: New file. * sysdeps/unix/sysv/linux/kernel_stat.h: Define struct stat used in kernel. * sysdeps/unix/sysv/linux/statbuf.h (struct stat): Change definition to use prescribed types for elements. (_STAT_VER): Change to value 3. * sysdeps/unix/sysv/linux/alph/statbuf.h: Likewise. * sysdeps/unix/sysv/linux/Dist: Add kernel_stat.h. * sysdeps/unix/sysv/linux/alpha/Dist: Likewise. * time/Makefile: Correct dependencies for test-tz. 1997-03-16 14:59 Philip Blundell <phil@london.uk.eu.org> * resolv/netdb.h: Add prototypes for gai_strerror and getnameinfo (needed for IPv6 basic sockets API). 1997-03-16 15:02 a sun <asun@zoology.washington.edu> * sysdeps/unix/sysv/linux/net/if_ppp.h: Don't use incompatible kernel header. * sysdeps/unix/sysv/linux/net/ppp_defs.h: Likewise. 1997-03-14 17:15 Ulrich Drepper <drepper@cygnus.com> * db/hash/hash_bigkey.c (__big_delete): Don't call __free_ovflpage without testing for last_bfp to be NULL. Reported by fabsoft@fabserver1.zarm.uni-bremen.de. 1997-03-13 11:42 Jim Meyering <meyering@asic.sc.ti.com> * time/mktime.c (TIME_T_MIN): Work around a bug in Cray C 5.0.3.0. 1997-03-14 04:00 Kurt Garloff <garloff@kg1.ping.de> * sysdeps/unix/sysv/linux/fcntlbits.h (O_FSYNC): Make alias for O_SYNC. (FASYNC): Move to __USE_BSD section. Create new macro O_ASYNC. 1997-03-14 02:50 Ulrich Drepper <drepper@cygnus.com> * nis/nss_nis/nis-hosts.c (_nss_nis_gethostbyname2_r): New functions. Compare result for correct address type. (_nss_nis_gethostbyname_r): Use _nss_nis_gethostbyname2_r. Reported by Mirko Streckenbach <mirko@marian.hil.de>. 1997-02-17 01:40 Zlatko Calusic <zcalusic@srce.hr> * time/strptime.c (recursive): Return rp to caller. (strptime_internal): First check for long names, then abbreviated (month & weekday). 1997-03-10 19:44 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makeconfig: Remove useless definitions of ASFLAGS-%. * config.make.in (ASFLAGS-.so): Remove. * configure.in: Don't substitute ASFLAGS_SO. * sysdeps/sparc/configure.in: Remove file. * sysdeps/sparc/Makefile (ASFLAGS-.so): Define. 1997-03-11 17:00 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * time/strptime.c (strptime_internal) [case 'Y']: Always subtract 1900 from year, regardless of century. 1997-03-12 05:43 Ulrich Drepper <drepper@cygnus.com> * stdlib/strtod.c (_tens_in_limb) [BITS_PER_MP_LIMB > 32]: Make all numbers unsigned to make buggy gccs happy. Patch by Bryan W. Headley <bheadley@interaccess.com>. * sysdeps/unix/sysv/linux/netinet/ip.h: Add backward-compatibility definitions. Patch by a sun <asun@zoology.washington.edu>. Pretty print header. * Makerules (build-shlib): Also create symlink if library is versioned. based on a patch by H.J. Lu <hjl@gnu.ai.mit.edu>. Remove special rule to libc.so symlink. 1997-03-11 20:16 Andreas Jaeger <aj@arthur.pfalz.de> * manual/math.texi (Domain and Range Errors): Change descriptions according to recent changes for ISO C 9X. 1997-03-11 22:39 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-ieee754/k_standard.c (__kernel_standard): Correct return values for acos, asin, and atan2. Reported by Andreas Jaeger <aj@arthur.pfalz.de>. 1997-03-10 18:16 Thorsten Kukuk <kukuk@vt.uni-paderborn.de> * ypclnt.c (__yp_bind): Fix possible buffer overflow. 1997-03-10 18:06 Bernd Schmidt <crux@Pool.Informatik.RWTH-Aachen.DE> * dirent/alphasort.c (alphasort): Interpret arguments as pointers to pointers to directory entries so that alphasort really can be used as argument for scandir. 1997-03-09 23:33 Andreas Jaeger <aj@arthur.pfalz.de> * string/strdup.c: Declare memcpy if !(_LIBC || STDC_HEADERS) instead of strcpy. 1997-03-10 03:34 Ulrich Drepper <drepper@cygnus.com> * catgets/catgets.c (catopen): Always add NLSPATH to search path for catalogs, not only if the envvar NLSPATH is not available. Reported by Andries.Brouwer@cwi.nl. 1997-03-10 02:46 Ulrich Drepper <drepper@cygnus.com> * Makeconfig (localtime-file): Don't define using installation directory. (inst_localtime-file): New variable. * time/Makefile (installed-localtime-file): Use inst_localtime-file. Reported by Edward Seidl <seidl@janed.com>. 1997-03-10 02:31 H.J. Lu <hjl@gnu.ai.mit.edu> * time/Makefile: Add source files to dependencies for test data. 1997-03-09 22:53 Thorsten Kukuk <kukuk@weber.uni-paderborn.de> * nis/nss_nis/nis-ethers.c: Don't ignore return value of yp_all. * nis/nss_nis/nis-proto.c: Likewise. * nis/nss_nis/nis-rpc.c: Likewise. * nis/nss_nis/nis-service.c: Likewise. 1997-03-08 14:37 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (elf_machine_rela): Upgrade to versioning; Added missing R_SPARC_WDISP30 handling. (RTLD_START): Implement it. * sysdeps/unix/sysv/linux/sparc/brk.c: Fix. * sysdeps/unix/sysv/linux/sparc/start.c: Startup code for Linux/SPARC. 1997-03-02 18:06 Miguel de Icaza <miguel@nuclecu.unam.mx> * sysdeps/sparc/dl-machine.h (RTLD_START): Make arg as expected by the dynamic linker instead of having a new conditional define. Thanks to Richard Henderson for pointing this out. * elf/rtld.c: Remove usage of ELF_ADJUST_ARG. 1997-03-20 20:44 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * sysdeps/mach/hurd/euidaccess.c: Define as __euidaccess and make euidaccess weak alias. 1997-03-07 10:30 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * stdio-common/printf_fphex.c (MIN): New macro. * sysdeps/generic/netinet/in.h: Include <sys/types.h>. * sysdeps/generic/sys/mman.h (msync): Mention third arg. * sysdeps/generic/netinet/in.h: Add definitions for IPv6 basic API. (See change by Philip Blundell on Feb 16, 1997.) 1997-03-05 10:40 Thomas Bushnell, n/BSG <thomas@gnu.ai.mit.edu> * hurd/hurd.h (vpprintf): Include <stdarg.h>. New declaration. * hurd/set-host.c (_hurd_set_host_config): Cast second arg to __file_name_split. * mach/mach_error.c (mach_error_string_int): Give full prototype. * mach/errstring.c (mach_error_string_int): Likewise. * mach/error_compat.c (__mach_error_map_compat): Likewise. * hurd/vpprintf.c (pwrite, vpprintf): Likewise. * stdio/vasprintf.c (vasprintf): Likewise. * mach/mach/mach_traps.h: Include <mach/kern_return.h>. * mach/spin-solid.c: Include <mach/mach_traps.h>. * mach/spin-solid.c (__spin_lock_solid): Provide arg to swtch_pri. * mach/mach_init.c: Include <mach/mig_support.h>. * mach/mach_error.h (mach_error_string, mach_error, mach_error_type): Always provide prototypes. * mach/mach/error.h (mach_error_fn_t): Comment out declaration; it appears to be entirely unused dead code. * stdio/stdio.h (freopen): Fix spelling error. 1997-03-02 13:38 Miles Bader <miles@gnu.ai.mit.edu> * string/argz.h (__need_error_t): New macro, before including <errno.h> [!__const] (__const): New macro. [!__error_t_defined] (error_t): New typedef. * sysdeps/generic/socketbits.h: Add PF_FILE as synonym for PF_LOCAL * sysdeps/unix/sysv/linux/socketbits.h: Likewise.
1997-03-16 21:28:07 +01:00
nop\n\
\n\
mov %o0,%l0\n\
\n\
2:\n\
call 1f\n\
nop\n\
1:\n\
sethi %hi(_GLOBAL_OFFSET_TABLE_-(2b-.)),%l2\n\
sethi %hi(_dl_default_scope),%l3\n\
or %l2,%lo(_GLOBAL_OFFSET_TABLE_-(2b-.)),%l2\n\
or %l3,%lo(_dl_default_scope),%l3\n\
add %o7,%l2,%l1\n\
# %l1 has the GOT. %l3 has _dl_default_scope offset\n\
# Now, load _dl_default_scope [2]\n\
add %l3,4,%l3\n\
ld [%l1+%l3],%l4\n\
# %l4 has _dl_default_scope [2]\n\
# call _dl_init_next until it returns 0, pass _dl_default_scope [2]\n\
3:\n\
call _dl_init_next\n\
mov %l4,%o0\n\
cmp %o0,%g0\n\
bz,a 4f\n\
nop\n\
call %o0\n\
nop\n\
b,a 3b\n\
4:\n\
# Clear the _dl_starting_up variable and pass _dl_fini in %g1 as per ELF ABI.\n\
sethi %hi(_dl_starting_up),%l4\n\
sethi %hi(_dl_fini),%l3\n\
or %l4,%lo(_dl_starting_up),%l4\n\
or %l3,%lo(_dl_fini),%l3\n\
# clear _dl_starting_up\n\
ld [%l1+%l4],%l5\n\
st %g0,[%l5]\n\
# load out fini function for atexit in %g1\n\
ld [%l3+%l1],%g1\n\
# jump to the user program entry point.\n\
jmpl %l0,%g0\n\
update from main archive 970226 1997-02-27 05:12 Ulrich Drepper <drepper@cygnus.com> * manual/Makefile: Add rules to run and distribute xtract-typefun. * manual/xtract-typefun.awk: New file. Script to extract function, variable, macro anchor to put into the `dir' file. * manual/signal.texi: Document difference between SysV and BSD signal(3) function and add documentation for sysv_signal. * sysdeps/libm-i387/e_acoshl.c: Clear upper half of word containing exponent before comparing. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. * sysdeps/unix/sysv/linux/netinet/in.h: Likewise. * sysdeps/generic/htonl.c: Likewise. * sysdeps/generic/htons.c: Likewise. * sysdeps/generic/ntohl.c: Likewise. * sysdeps/generic/ntohs.c: Likewise. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-26 08:30 Andreas Jaeger <aj@arthur.pfalz.de> * math/math.h: Include <__math.h> if __NO_MATH_INLINES is not defined and we want optimization. 1997-02-27 01:13 Ulrich Drepper <drepper@cygnus.com> * sysdeps/generic/netinet/in.h (htonl, htons, ntohl, ntohs): Change prototypes to use types with explicit width. `unsigned long' is different on 64 bit systems. Suggested by a sun <asun@zoology.washington.edu>. 1997-02-02 19:53 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * misc/getpass.c: Don't disable canonical input. Reverted patch of Mon Jan 6 01:35:29 1997. 1996-12-14 22:07 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * libio/libioP.h (_IO_finish_t): Take additional parameter, to match the hidden __in_chrg parameter of the destructor. (_IO_FINISH): Pass zero for it. * libio/genops.c (_IO_default_finish): Add second parameter, which is ignored. * libio/memstream.c (_IO_mem_finish): Likewise. * libio/fileops.c (_IO_mem_finish): Likewise. * libio/strops.c (_IO_str_finish): Likewise. All callers changed. 1997-02-27 00:23 H.J. Lu <hjl@lucon.org> * time/Makefile: Avoid using patterns in dependencies. 1997-02-26 00:56 Miguel de Icaza <miguel@nuclecu.unam.mx> * elf/rtld.c: Make _dl_start static. Otherwise the linker on the SPARC will convert the call _dl_start into a call into the PLT. * elf/rtld.c (_dl_start): On the SPARC we need to adjust the value of arg to make it point to the actual values. * sysdeps/sparc/elf/DEFS.h: New ELF specific version. * sysdeps/sparc/Dist: Mention sysdeps/sparc/elf/DEFS.h. * sysdeps/sparc/bsd-_setjmp.S, sysdeps/sparc/bsd-setjmp.S: Make them PIC aware. * sysdeps/sparc/dl-machine.h (elf_machine_load_address): Implemented. (elf_machine_rela): Make it compile; fix existing relocation types; add unhandled relocation types. (ELF_ADJUST_ARG): Get pointer to arguments at program startup. (RTLD_START): Initial implementation, not yet finished. * sysdeps/sparc/elf/start.S: Fix. * sysdeps/sparc/fpu_control.h: Remove duplicate declaration of __setfpucw. * sysdeps/sparc/divrem.m4: Make compilable under Linux. * sysdeps/sparc/rem.S, sysdeps/sparc/sdiv.S, sysdeps/sparc/udiv.S, sysdeps/sparc/urem.S : Regenerated. * sysdeps/sparc/setjmp.S: Make it PIC aware. * sysdeps/unix/sysv/linux/sparc/__sigtrampoline.S: Define __ASSEMBLY__ before using kernel header. * sysdeps/unix/sysv/linux/sparc/Makefile: Use -mv8 flag to compile rtld.c. * sysdeps/unix/sysv/linux/sparc/brk.c: Implement. * sysdeps/unix/sysv/linux/sparc/profil-counter.h: Remove code to handle old signals. * sysdeps/unix/sysv/linux/sparc/sigaction.c: Implements sigaction for all Linux/SPARC kernels. * sysdeps/unix/sysv/linux/sparc/syscall.S: Add code to store errno using __errno_location. * sysdeps/unix/sysv/linux/sparc/sysdep.h: Add various handler macros for assembler sources. * sysdeps/unix/sysv/linux/sparc/errno.c: Define errno. 1997-02-25 16:02 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/rtld.c (dl_main): Remove dead code that is never executed. Rename local variable l to main_map where it is used to point to the load_map for the executable. 1997-02-25 15:03 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * elf/dl-version.c (_dl_check_all_versions): Ignore libraries that could not be found. 1997-02-24 23:18 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> * Makerules: Generate implicit object suffix rules automagically. (o-iterator): Move before first use. * Makeconfig (all-object-suffixes): Add .bo suffix. 1997-02-25 15:11 Ulrich Drepper <drepper@cygnus.com> * sysdeps/libm-i387/e_acoshf.S (__ieee754_acoshf): Test correct word on stack for overflow. C++. Use __exception instead.
1997-02-27 07:01:16 +01:00
nop\n\
");