summaryrefslogtreecommitdiffstats
path: root/contrib/gdb
diff options
context:
space:
mode:
authorgonzo <gonzo@FreeBSD.org>2012-03-19 03:27:08 +0000
committergonzo <gonzo@FreeBSD.org>2012-03-19 03:27:08 +0000
commitfa590f133ddbac41a10c9adabc532b4404da815d (patch)
treee335d349695b9999ce3d79c97fcb538461e5ba86 /contrib/gdb
parent7e9af23769898ccd2df0e836873439734fe09ff8 (diff)
downloadFreeBSD-src-fa590f133ddbac41a10c9adabc532b4404da815d.zip
FreeBSD-src-fa590f133ddbac41a10c9adabc532b4404da815d.tar.gz
fix ABI detection logic: for 64-bit elf objects set default ABI to n64.
Diffstat (limited to 'contrib/gdb')
-rw-r--r--contrib/gdb/gdb/mips-tdep.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/contrib/gdb/gdb/mips-tdep.c b/contrib/gdb/gdb/mips-tdep.c
index d4a4c73..dd55c1c 100644
--- a/contrib/gdb/gdb/mips-tdep.c
+++ b/contrib/gdb/gdb/mips-tdep.c
@@ -5437,6 +5437,13 @@ mips_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
}
}
+ /* Default 64-bit objects to N64 instead of O32. */
+ if (found_abi == MIPS_ABI_UNKNOWN
+ && info.abfd != NULL
+ && bfd_get_flavour (info.abfd) == bfd_target_elf_flavour
+ && elf_elfheader (info.abfd)->e_ident[EI_CLASS] == ELFCLASS64)
+ found_abi = MIPS_ABI_N64;
+
if (gdbarch_debug)
fprintf_unfiltered (gdb_stdlog, "mips_gdbarch_init: found_abi = %d\n",
found_abi);
OpenPOWER on IntegriCloud