Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/libexec/ld.elf_so Um, a little bit of sanity here:



details:   https://anonhg.NetBSD.org/src/rev/92dc5978c427
branches:  trunk
changeset: 536900:92dc5978c427
user:      mycroft <mycroft%NetBSD.org@localhost>
date:      Tue Sep 24 00:33:39 2002 +0000

description:
Um, a little bit of sanity here:
l_addr is always supposed to be obj->relocbase -- or so says the GDB code that
uses it.  So, set it to this on all platforms.  It already was on VAX
explicitly, and on everything else except MIPS implicitly (because
mapbase==relocbase for all existing shlibs).  For some silly/stupid reason, a
new field was created that the MIPS GDB currently uses.
Another MD #ifdef bites it.

diffstat:

 libexec/ld.elf_so/rtld.c |  8 ++------
 1 files changed, 2 insertions(+), 6 deletions(-)

diffs (27 lines):

diff -r 9bff10d8de09 -r 92dc5978c427 libexec/ld.elf_so/rtld.c
--- a/libexec/ld.elf_so/rtld.c  Tue Sep 24 00:12:55 2002 +0000
+++ b/libexec/ld.elf_so/rtld.c  Tue Sep 24 00:33:39 2002 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: rtld.c,v 1.67 2002/09/23 23:56:48 mycroft Exp $         */
+/*     $NetBSD: rtld.c,v 1.68 2002/09/24 00:33:39 mycroft Exp $         */
 
 /*
  * Copyright 1996 John D. Polstra.
@@ -898,16 +898,12 @@
        struct link_map *prev;
 
        obj->linkmap.l_name = obj->path;
-       obj->linkmap.l_addr = obj->mapbase;
+       obj->linkmap.l_addr = obj->relocbase;
        obj->linkmap.l_ld = obj->dynamic;
 #ifdef __mips__
        /* GDB needs load offset on MIPS to use the symbols */
        obj->linkmap.l_offs = obj->relocbase;
 #endif
-#ifdef __vax__
-       /* VAX shared libaries don't start at a vaddr of 0 */
-       obj->linkmap.l_addr -= obj->vaddrbase;
-#endif
 
        if (_rtld_debug.r_map == NULL) {
                _rtld_debug.r_map = l;



Home | Main Index | Thread Index | Old Index