aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Kettenis <kettenis@gnu.org>2004-01-24 20:55:41 +0000
committerMark Kettenis <kettenis@gnu.org>2004-01-24 20:55:41 +0000
commit7e5e9f880f7dffe5c9efb63af88fe2819f758350 (patch)
tree954d0d48909876b2b3419aead360f0e65e2cea9d
parent7cf03d44ce2b44c88629f4f5b55ca84f015b31d4 (diff)
downloadgdb-7e5e9f880f7dffe5c9efb63af88fe2819f758350.zip
gdb-7e5e9f880f7dffe5c9efb63af88fe2819f758350.tar.gz
gdb-7e5e9f880f7dffe5c9efb63af88fe2819f758350.tar.bz2
* sparcnbsd-tdep.c (GDB_OSABI_NETBSD_CORE): Define, based on the
value of GDB_OSABI_DEFAULT. (sparcnbsd_core_osabi_sniffer): Return GDB_OSABI_NETBSD_CORE instead of GDB_OSABI_NETBSD_AOUT.
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/sparcnbsd-tdep.c15
2 files changed, 21 insertions, 1 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 543cd7f..08e5395 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2004-01-24 Mark Kettenis <kettenis@gnu.org>
+
+ * sparcnbsd-tdep.c (GDB_OSABI_NETBSD_CORE): Define, based on the
+ value of GDB_OSABI_DEFAULT.
+ (sparcnbsd_core_osabi_sniffer): Return GDB_OSABI_NETBSD_CORE
+ instead of GDB_OSABI_NETBSD_AOUT.
+
2004-01-24 Nick Roberts <nick@nick.uklinux.net>
* mi/mi-cmd-stack.c, mi/mi-cmd-var.c, mi/mi-cmds.h: Update
diff --git a/gdb/sparcnbsd-tdep.c b/gdb/sparcnbsd-tdep.c
index 2547405..631697c 100644
--- a/gdb/sparcnbsd-tdep.c
+++ b/gdb/sparcnbsd-tdep.c
@@ -284,11 +284,24 @@ sparcnbsd_aout_osabi_sniffer (bfd *abfd)
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_AOUT;
+ return GDB_OSABI_NETBSD_CORE;
return GDB_OSABI_UNKNOWN;
}