aboutsummaryrefslogtreecommitdiff
path: root/gdb/armnbsd-tdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'gdb/armnbsd-tdep.c')
-rw-r--r--gdb/armnbsd-tdep.c18
1 files changed, 16 insertions, 2 deletions
diff --git a/gdb/armnbsd-tdep.c b/gdb/armnbsd-tdep.c
index 7f6e639..7c9e425 100644
--- a/gdb/armnbsd-tdep.c
+++ b/gdb/armnbsd-tdep.c
@@ -77,9 +77,23 @@ arm_netbsd_elf_init_abi (struct gdbarch_info info,
tdep->fp_model = ARM_FLOAT_SOFT_VFP;
}
+static enum gdb_osabi
+arm_netbsd_aout_osabi_sniffer (bfd *abfd)
+{
+ if (strcmp (bfd_get_target (abfd), "a.out-arm-netbsd") == 0)
+ return GDB_OSABI_NETBSD_AOUT;
+
+ return GDB_OSABI_UNKNOWN;
+}
+
void
_initialize_arm_netbsd_tdep (void)
{
- arm_gdbarch_register_os_abi (ARM_ABI_NETBSD_AOUT, arm_netbsd_aout_init_abi);
- arm_gdbarch_register_os_abi (ARM_ABI_NETBSD_ELF, arm_netbsd_elf_init_abi);
+ gdbarch_register_osabi_sniffer (bfd_arch_arm, bfd_target_aout_flavour,
+ arm_netbsd_aout_osabi_sniffer);
+
+ gdbarch_register_osabi (bfd_arch_arm, GDB_OSABI_NETBSD_AOUT,
+ arm_netbsd_aout_init_abi);
+ gdbarch_register_osabi (bfd_arch_arm, GDB_OSABI_NETBSD_ELF,
+ arm_netbsd_elf_init_abi);
}