diff options
Diffstat (limited to 'gdb/sparc-nbsd-tdep.c')
-rw-r--r-- | gdb/sparc-nbsd-tdep.c | 58 |
1 files changed, 3 insertions, 55 deletions
diff --git a/gdb/sparc-nbsd-tdep.c b/gdb/sparc-nbsd-tdep.c index 7fa384d..b1427a3 100644 --- a/gdb/sparc-nbsd-tdep.c +++ b/gdb/sparc-nbsd-tdep.c @@ -290,7 +290,7 @@ static const struct regset sparc32nbsd_fpregset = NULL, sparc32nbsd_supply_fpregset, NULL }; -static void +void sparc32nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) { struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); @@ -309,54 +309,11 @@ sparc32nbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) tdep->step_trap = sparcnbsd_step_trap; frame_unwind_append_unwinder (gdbarch, &sparc32nbsd_sigcontext_frame_unwind); -} - -static void -sparc32nbsd_aout_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) -{ - sparc32nbsd_init_abi (info, gdbarch); -} - -void -sparc32nbsd_elf_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) -{ - sparc32nbsd_init_abi (info, gdbarch); set_solib_svr4_fetch_link_map_offsets (gdbarch, svr4_ilp32_fetch_link_map_offsets); } -static enum gdb_osabi -sparcnbsd_aout_osabi_sniffer (bfd *abfd) -{ - if (strcmp (bfd_get_target (abfd), "a.out-sparc-netbsd") == 0) - return GDB_OSABI_NETBSD_AOUT; - - return GDB_OSABI_UNKNOWN; -} - -/* OpenBSD uses the traditional NetBSD core file format, even for - ports that use ELF. Therefore, if the default OS ABI is OpenBSD - ELF, we return that instead of NetBSD a.out. This is mainly for - the benfit of OpenBSD/sparc64, which inherits the sniffer below - since we include this file for an OpenBSD/sparc64 target. For - OpenBSD/sparc, the NetBSD a.out OS ABI is probably similar enough - to both the OpenBSD a.out and the OpenBSD ELF OS ABI. */ -#if defined (GDB_OSABI_DEFAULT) && (GDB_OSABI_DEFAULT == GDB_OSABI_OPENBSD_ELF) -#define GDB_OSABI_NETBSD_CORE GDB_OSABI_OPENBSD_ELF -#else -#define GDB_OSABI_NETBSD_CORE GDB_OSABI_NETBSD_AOUT -#endif - -static enum gdb_osabi -sparcnbsd_core_osabi_sniffer (bfd *abfd) -{ - if (strcmp (bfd_get_target (abfd), "netbsd-core") == 0) - return GDB_OSABI_NETBSD_CORE; - - return GDB_OSABI_UNKNOWN; -} - /* Provide a prototype to silence -Wmissing-prototypes. */ void _initialize_sparcnbsd_tdep (void); @@ -364,15 +321,6 @@ void _initialize_sparcnbsd_tdep (void); void _initialize_sparcnbsd_tdep (void) { - gdbarch_register_osabi_sniffer (bfd_arch_sparc, bfd_target_aout_flavour, - sparcnbsd_aout_osabi_sniffer); - - /* BFD doesn't set a flavour for NetBSD style a.out core files. */ - gdbarch_register_osabi_sniffer (bfd_arch_sparc, bfd_target_unknown_flavour, - sparcnbsd_core_osabi_sniffer); - - gdbarch_register_osabi (bfd_arch_sparc, 0, GDB_OSABI_NETBSD_AOUT, - sparc32nbsd_aout_init_abi); - gdbarch_register_osabi (bfd_arch_sparc, 0, GDB_OSABI_NETBSD_ELF, - sparc32nbsd_elf_init_abi); + gdbarch_register_osabi (bfd_arch_sparc, 0, GDB_OSABI_NETBSD, + sparc32nbsd_init_abi); } |