diff options
Diffstat (limited to 'gdb/nbsd-tdep.c')
-rw-r--r-- | gdb/nbsd-tdep.c | 72 |
1 files changed, 7 insertions, 65 deletions
diff --git a/gdb/nbsd-tdep.c b/gdb/nbsd-tdep.c index 5548d40..8894fcb 100644 --- a/gdb/nbsd-tdep.c +++ b/gdb/nbsd-tdep.c @@ -1,5 +1,7 @@ /* Common target-dependent code for NetBSD systems. - Copyright (C) 2002 Free Software Foundation, Inc. + + Copyright (C) 2002, 2006 Free Software Foundation, Inc. + Contributed by Wasabi Systems, Inc. This file is part of GDB. @@ -23,79 +25,19 @@ #include "gdb_string.h" #include "solib-svr4.h" -/* Fetch (and possibly build) an appropriate link_map_offsets - structure for NetBSD targets using the struct offsets defined - in <link.h> (but without actual reference to that file). - - This makes it possible to access NetBSD shared libraries from a - GDB that was not built on the same platform (for cross debugging). +/* FIXME: kettenis/20060115: We should really eliminate the next two + functions completely. */ - We provide versions for ILP32 and LP64 NetBSD targets here. */ - struct link_map_offsets * nbsd_ilp32_solib_svr4_fetch_link_map_offsets (void) { - static struct link_map_offsets lmo; - static struct link_map_offsets *lmp = NULL; - - if (lmp == NULL) - { - lmp = &lmo; - - lmo.r_debug_size = 16; - - lmo.r_map_offset = 4; - lmo.r_map_size = 4; - - lmo.link_map_size = 20; - - lmo.l_addr_offset = 0; - lmo.l_addr_size = 4; - - lmo.l_name_offset = 4; - lmo.l_name_size = 4; - - lmo.l_next_offset = 12; - lmo.l_next_size = 4; - - lmo.l_prev_offset = 16; - lmo.l_prev_size = 4; - } - - return lmp; + return svr4_ilp32_fetch_link_map_offsets (); } struct link_map_offsets * nbsd_lp64_solib_svr4_fetch_link_map_offsets (void) { - static struct link_map_offsets lmo; - static struct link_map_offsets *lmp = NULL; - - if (lmp == NULL) - { - lmp = &lmo; - - lmo.r_debug_size = 32; - - lmo.r_map_offset = 8; - lmo.r_map_size = 8; - - lmo.link_map_size = 40; - - lmo.l_addr_offset = 0; - lmo.l_addr_size = 8; - - lmo.l_name_offset = 8; - lmo.l_name_size = 8; - - lmo.l_next_offset = 24; - lmo.l_next_size = 8; - - lmo.l_prev_offset = 32; - lmo.l_prev_size = 8; - } - - return lmp; + return svr4_lp64_fetch_link_map_offsets (); } int |