diff options
author | Roland McGrath <roland@gnu.org> | 1996-06-02 21:35:43 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1996-06-02 21:35:43 +0000 |
commit | 6c03c2cf27b1a12cbf680377e4796b88a20ed9db (patch) | |
tree | b197b18a54a6f15f71e0cd1679f91a25d1d0239f /sysdeps/i386 | |
parent | 9004bc202e5ea7b8eabca183f4e6c6abe573f802 (diff) | |
download | glibc-6c03c2cf27b1a12cbf680377e4796b88a20ed9db.tar glibc-6c03c2cf27b1a12cbf680377e4796b88a20ed9db.tar.gz glibc-6c03c2cf27b1a12cbf680377e4796b88a20ed9db.tar.bz2 glibc-6c03c2cf27b1a12cbf680377e4796b88a20ed9db.zip |
* elf/dl-lookup.c (_dl_lookup_symbol): Arg NOSELF renamed to NOPLT.
Reject SHN_UNDEF defns iff NOPLT is nonzero.
* elf/link.h (_dl_lookup_symbol): Update prototype and comment.
* elf/dl-runtime.c (fixup): Pass 1 to _dl_lookup_symbol for NOPLT.
* elf/dlsym.c (dlsym): Pass 0.
* elf/rtld.c (dl_main): Likewise.
* elf/dl-reloc.c (_dl_relocate_object: resolve): Second arg R_OFFSET
replaced with NOPLT flag. Pass it through to _dl_lookup_symbol.
* elf/do-rel.h (elf_dynamic_do_rel): Update prototype of RESOLVE arg.
Pass `elf_machine_pltrel_p (R->r_type)' result as NOPLT flag value.
* sysdeps/i386/dl-machine.h (elf_machine_pltrel_p): New macro.
* sysdeps/m68k/dl-machine.h (elf_machine_pltrel_p): Likewise.
* sysdeps/stub/dl-machine.h (elf_machine_pltrel_p): Likewise.
Diffstat (limited to 'sysdeps/i386')
-rw-r--r-- | sysdeps/i386/dl-machine.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sysdeps/i386/dl-machine.h b/sysdeps/i386/dl-machine.h index 8f720736f0..4e0806fd48 100644 --- a/sysdeps/i386/dl-machine.h +++ b/sysdeps/i386/dl-machine.h @@ -132,6 +132,10 @@ elf_machine_lazy_rel (struct link_map *map, const Elf32_Rel *reloc) } } +/* Nonzero iff TYPE describes relocation of a PLT entry, so + PLT entries should not be allowed to define the value. */ +#define elf_machine_pltrel_p(type) ((type) == R_386_JMP_SLOT) + /* The i386 never uses Elf32_Rela relocations. */ #define ELF_MACHINE_NO_RELA 1 |