From b2a0b9b2f6b8aa65d0b9dec5102ed66d64073d1c Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 9 Apr 2006 08:22:43 +0000 Subject: [PATCH] * sparc64-linux-tdep.c (sparc64_linux_init_abi): Append dwarf2 frame sniffer. * sparc-tdep.c (sparc32_gdbarch_init): Make sure to call dwarf2_frame_set_init_reg() before gdbarch_init_osabi() so that the latter can override. * Makefile.in (sparc64-linux-tdep.o): Update dependencies. --- gdb/ChangeLog | 9 +++++++++ gdb/Makefile.in | 6 +++--- gdb/sparc-tdep.c | 6 +++--- gdb/sparc64-linux-tdep.c | 4 ++++ 4 files changed, 19 insertions(+), 6 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 2d4285ac56..23f938b77d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,12 @@ +2006-04-09 David S. Miller + + * sparc64-linux-tdep.c (sparc64_linux_init_abi): Append dwarf2 + frame sniffer. + * sparc-tdep.c (sparc32_gdbarch_init): Make sure to call + dwarf2_frame_set_init_reg() before gdbarch_init_osabi() so + that the latter can override. + * Makefile.in (sparc64-linux-tdep.o): Update dependencies. + 2006-04-09 Ulrich Weigand * s390-tdep.c (struct s390_prologue_data): New field 'stack'. diff --git a/gdb/Makefile.in b/gdb/Makefile.in index 3c568dddcc..beab57cd73 100644 --- a/gdb/Makefile.in +++ b/gdb/Makefile.in @@ -2618,9 +2618,9 @@ sparc64-linux-nat.o: sparc64-linux-nat.c $(defs_h) $(regcache_h) \ $(gregset_h) $(sparc64_tdep_h) $(sparc_tdep_h) \ $(sparc_nat_h) $(inferior_h) $(target_h) $(linux_nat_h) sparc64-linux-tdep.o: sparc64-linux-tdep.c $(defs_h) $(frame_h) \ - $(frame_unwind_h) $(regset_h) $(regcache_h) $(gdbarch_h) \ - $(gdbcore_h) $(osabi_h) $(solib_svr4_h) $(symtab_h) $(trad_frame_h) \ - $(tramp_frame_h) $(sparc64_tdep_h) + $(frame_unwind_h) $(dwarf2-frame_h) $(regset_h) $(regcache_h) \ + $(gdbarch_h) $(gdbcore_h) $(osabi_h) $(solib_svr4_h) $(symtab_h) \ + $(trad_frame_h) $(tramp_frame_h) $(sparc64_tdep_h) sparc64-nat.o: sparc64-nat.c $(defs_h) $(gdbarch_h) $(sparc64_tdep_h) \ $(sparc_nat_h) sparc64nbsd-nat.o: sparc64nbsd-nat.c $(defs_h) $(regcache_h) $(target_h) \ diff --git a/gdb/sparc-tdep.c b/gdb/sparc-tdep.c index e3b1ccfd43..77169a7a4d 100644 --- a/gdb/sparc-tdep.c +++ b/gdb/sparc-tdep.c @@ -1296,14 +1296,14 @@ sparc32_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) frame_base_set_default (gdbarch, &sparc32_frame_base); - /* Hook in ABI-specific overrides, if they have been registered. */ - gdbarch_init_osabi (info, gdbarch); - /* Hook in the DWARF CFI frame unwinder. */ dwarf2_frame_set_init_reg (gdbarch, sparc32_dwarf2_frame_init_reg); /* FIXME: kettenis/20050423: Don't enable the unwinder until the StackGhost issues have been resolved. */ + /* Hook in ABI-specific overrides, if they have been registered. */ + gdbarch_init_osabi (info, gdbarch); + frame_unwind_append_sniffer (gdbarch, sparc32_frame_sniffer); /* If we have register sets, enable the generic core file support. */ diff --git a/gdb/sparc64-linux-tdep.c b/gdb/sparc64-linux-tdep.c index dd3b622a95..850f04542b 100644 --- a/gdb/sparc64-linux-tdep.c +++ b/gdb/sparc64-linux-tdep.c @@ -22,6 +22,7 @@ #include "defs.h" #include "frame.h" #include "frame-unwind.h" +#include "dwarf2-frame.h" #include "regset.h" #include "regcache.h" #include "gdbarch.h" @@ -195,6 +196,9 @@ sparc64_linux_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) tramp_frame_prepend_unwinder (gdbarch, &sparc64_linux_rt_sigframe); + /* Hook in the DWARF CFI frame unwinder. */ + frame_unwind_append_sniffer (gdbarch, dwarf2_frame_sniffer); + sparc64_init_abi (info, gdbarch); /* GNU/Linux has SVR4-style shared libraries... */ -- 2.34.1