summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/Makefile.in2
-rw-r--r--gdb/sparc64fbsd-tdep.c6
3 files changed, 14 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 3b2e8a8a20c..54408972121 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2005-03-06 Mark Kettenis <kettenis@gnu.org>
+
+ * sparc64fbsd-tdep.c: Include "solib-svr4.h".
+ (sparc64fbsd_init_abi): Set skip_trampoline_code and
+ solib_svr4_fetch_link_map_offsets.
+ * Makefile.in (sparc64fbsd-tdep.o): Update dependencies.
+
2005-03-06 Daniel Jacobowitz <dan@codesourcery.com>
* linux-nat.c (child_follow_fork): Call target_terminal_ours before
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index 769860cff79..81112346fae 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -2542,7 +2542,7 @@ sparc64fbsd-nat.o: sparc64fbsd-nat.c $(defs_h) $(target_h) $(fbsd_nat_h) \
sparc64fbsd-tdep.o: sparc64fbsd-tdep.c $(defs_h) $(frame_h) \
$(frame_unwind_h) $(gdbcore_h) $(osabi_h) $(regcache_h) $(regset_h) \
$(target_h) $(trad_frame_h) $(gdb_assert_h) $(gdb_string_h) \
- $(sparc64_tdep_h)
+ $(sparc64_tdep_h) $(solib_svr4_h)
sparc64-linux-nat.o: sparc64-linux-nat.c $(defs_h) $(sparc64_tdep_h) \
$(sparc_nat_h)
sparc64-linux-tdep.o: sparc64-linux-tdep.c $(defs_h) $(gdbarch_h) $(osabi_h) \
diff --git a/gdb/sparc64fbsd-tdep.c b/gdb/sparc64fbsd-tdep.c
index 7cd3d7ca099..50e20613b16 100644
--- a/gdb/sparc64fbsd-tdep.c
+++ b/gdb/sparc64fbsd-tdep.c
@@ -33,6 +33,7 @@
#include "gdb_string.h"
#include "sparc64-tdep.h"
+#include "solib-svr4.h"
/* From <machine/reg.h>. */
const struct sparc_gregset sparc64fbsd_gregset =
@@ -226,6 +227,11 @@ sparc64fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
frame_unwind_append_sniffer (gdbarch, sparc64fbsd_sigtramp_frame_sniffer);
sparc64_init_abi (info, gdbarch);
+
+ /* FreeBSD/sparc64 has SVR4-style shared libraries. */
+ set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target);
+ set_solib_svr4_fetch_link_map_offsets
+ (gdbarch, svr4_lp64_fetch_link_map_offsets);
}
/* Provide a prototype to silence -Wmissing-prototypes. */