diff options
author | Roland McGrath <roland@gnu.org> | 1995-05-08 09:11:25 +0000 |
---|---|---|
committer | Roland McGrath <roland@gnu.org> | 1995-05-08 09:11:25 +0000 |
commit | 421f82e5cc8f81ab003247d771bcecbad799be85 (patch) | |
tree | 6d2e888aa32ba05854b1bd793b903cd0eb755bc4 /sysdeps/i386/dl-runtime.c | |
parent | 0fb807c1dbb08de4408c440c2db490b52bd16f57 (diff) | |
download | glibc-421f82e5cc8f81ab003247d771bcecbad799be85.zip glibc-421f82e5cc8f81ab003247d771bcecbad799be85.tar.gz glibc-421f82e5cc8f81ab003247d771bcecbad799be85.tar.bz2 |
Sat May 6 11:06:47 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* Makeconfig (+gccwarn): Add -Winline.
* hurd/hurdsig.c (_hurd_internal_post_signal): If SS->context is
set, avoid abort_rpcs, and use reply and intr ports saved in
SS->context.
* sysdeps/mach/hurd/i386/trampoline.c: Don't set SS->intr_port
from SS->context. Don't clear SS->context.
* sysdeps/mach/hurd/i386/sigreturn.c: Don't set SS->intr_port when
setting SS->context. If msg_sig_post returns, re-lock and clear
SS->context.
Fri May 5 10:37:09 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* mach/Makefile (errsystems.c): Comment out generation rule.
* sysdeps/mach/_strerror.c: Consider a system unknown if its
bad_sub member is null.
* mach/mig-alloc.c: Add weak alias to non-__ name.
Diffstat (limited to 'sysdeps/i386/dl-runtime.c')
-rw-r--r-- | sysdeps/i386/dl-runtime.c | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/sysdeps/i386/dl-runtime.c b/sysdeps/i386/dl-runtime.c index 897524f..1bc5697 100644 --- a/sysdeps/i386/dl-runtime.c +++ b/sysdeps/i386/dl-runtime.c @@ -17,8 +17,6 @@ License along with the GNU C Library; see the file COPYING.LIB. If not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ -register void *sp asm ("%esp"); - #include <link.h> #include "dynamic-link.h" @@ -30,7 +28,7 @@ register void *sp asm ("%esp"); 0(%esp) identifier for this shared object (struct link_map *) The user expects the real function the PLT refers to to be entered - 8(%esp) as the top of stack. */ + with 8(%esp) as the top of stack. */ void _dl_runtime_resolve (Elf32_Word reloc_offset) @@ -63,14 +61,15 @@ _dl_runtime_resolve (Elf32_Word reloc_offset) scope = _dl_loaded; definer = &symtab[ELF32_R_SYM (reloc->r_info)]; - loadbase = _dl_lookup_symbol (strtab + definer->st_name, &definer, scope); + loadbase = _dl_lookup_symbol (strtab + definer->st_name, &definer, + scope, l->l_name); /* Restore list frobnication done above for DT_SYMBOLIC. */ l->l_next = real_next; l->l_prev->l_next = l; /* Apply the relocation with that value. */ - elf_machine_rel (l->l_addr, l->l_info, reloc, loadbase, definer); + elf_machine_rel (l, reloc, loadbase, definer); /* The top of the stack is the word we set L from; but this location holds the address we will return to. Store there the address of a |