From a2e1b046f6891ac76830353f7afc97b0c6d27a64 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Sun, 7 Jan 1996 10:00:21 +0000 Subject: Sat Jan 6 16:39:14 1996 Roland McGrath * Makefile (subdirs): Added db. * resolv/Makefile (routines): Add res_data. * resolv/res_data.c, resolv/res_debug.c, resolv/resolv.h: Updated from BIND 4.9.3 final release. * elf/dynamic-link.h (elf_get_dynamic_info): Handle processor-specific tags. (ELF_DYNAMIC_DO_REL, ELF_DYNAMIC_DO_RELA): Handle absent DT_PLTREL tag. * elf/elf.h (DT_MIPS_NUM, DT_PROCNUM): New macros. * elf/link.h (struct link_map): Extend `l_info' by DT_PROCNUM. * sysdeps/i386/dl-machine.h (elf_machine_runtime_setup): Take new arg LAZY. Only do our work if LAZY and there is a DT_JMPREL record. * elf/dl-reloc.c (_dl_relocate_object): Call elf_machine_runtime_setup unconditionally, and pass it LAZY flag. * elf/dl-load.c: Fixed ELFMAG check to work for either byte order. Align end of load segment only to page size, not to segment alignment. --- elf/dl-reloc.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'elf/dl-reloc.c') diff --git a/elf/dl-reloc.c b/elf/dl-reloc.c index 7e4f4992a7..b7d484d2df 100644 --- a/elf/dl-reloc.c +++ b/elf/dl-reloc.c @@ -1,5 +1,5 @@ /* Relocate a shared object and resolve its references to other loaded objects. -Copyright (C) 1995 Free Software Foundation, Inc. +Copyright (C) 1995, 1996 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 @@ -93,10 +93,9 @@ _dl_relocate_object (struct link_map *l, int lazy) l->l_prev->l_next = l; } - if (l->l_info[DT_JMPREL] && lazy) - /* Set up the PLT so its unrelocated entries will - jump to _dl_runtime_resolve, which will relocate them. */ - elf_machine_runtime_setup (l); + /* Set up the PLT so its unrelocated entries will + jump to _dl_runtime_resolve, which will relocate them. */ + elf_machine_runtime_setup (l, lazy); l->l_relocated = 1; -- cgit v1.2.1