diff options
author | Ulrich Drepper <drepper@redhat.com> | 1997-03-23 01:54:07 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1997-03-23 01:54:07 +0000 |
commit | bc9f6000f6752153e5e1902259d5f491a88a1ae5 (patch) | |
tree | affff963d9f44f476e13e4ee673f67509456096f /elf/link.h | |
parent | 5ae9d168f66cc6b40f74cfb4a8f2631fc1df6a2a (diff) | |
download | glibc-bc9f6000f6752153e5e1902259d5f491a88a1ae5.tar.gz glibc-bc9f6000f6752153e5e1902259d5f491a88a1ae5.tar.xz glibc-bc9f6000f6752153e5e1902259d5f491a88a1ae5.zip |
Update. cvs/libc-ud-970322
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.
Diffstat (limited to 'elf/link.h')
-rw-r--r-- | elf/link.h | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/elf/link.h b/elf/link.h index 62bf74c23b..3934aed8e2 100644 --- a/elf/link.h +++ b/elf/link.h @@ -290,18 +290,15 @@ extern void _dl_close (struct link_map *map); null-terminated list of object scopes to search; each object's l_searchlist (i.e. the segment of the dependency tree starting at that object) is searched in turn. REFERENCE_NAME should name the object - containing the reference; it is used in error messages. FLAGS is a - set of flags: */ -#define DL_LOOKUP_NOEXEC 1 /* Don't search the executable for a - definition; this is used for copy - relocs. */ -#define DL_LOOKUP_NOPLT 2 /* The reference must not be resolved - to a PLT entry. */ + containing the reference; it is used in error messages. + RELOC_TYPE is a machine-dependent reloc type, which is passed to + the `elf_machine_lookup_*_p' macros in dl-machine.h to affect which + symbols can be chosen. */ extern ElfW(Addr) _dl_lookup_symbol (const char *undef, const ElfW(Sym) **sym, struct link_map *symbol_scope[], const char *reference_name, - int flags); + int reloc_type); /* Lookup versioned symbol. */ extern ElfW(Addr) _dl_lookup_versioned_symbol (const char *undef, @@ -309,15 +306,14 @@ extern ElfW(Addr) _dl_lookup_versioned_symbol (const char *undef, struct link_map *symbol_scope[], const char *reference_name, const struct r_found_version *version, - int flags); + int reloc_type); /* For handling RTLD_NEXT we must be able to skip shared objects. */ extern ElfW(Addr) _dl_lookup_symbol_skip (const char *undef, const ElfW(Sym) **sym, struct link_map *symbol_scope[], const char *reference_name, - struct link_map *skip_this, - int flags); + struct link_map *skip_this); /* For handling RTLD_NEXT with versioned symbols we must be able to skip shared objects. */ @@ -326,8 +322,7 @@ extern ElfW(Addr) _dl_lookup_versioned_symbol_skip (const char *undef, struct link_map *symbol_scope[], const char *reference_name, const struct r_found_version *version, - struct link_map *skip_this, - int flags); + struct link_map *skip_this); /* Look up symbol NAME in MAP's scope and return its run-time address. */ extern ElfW(Addr) _dl_symbol_value (struct link_map *map, const char *name); |