This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[patch] add missing gcc_target_options method for nios2
- From: Sandra Loosemore <sandra at codesourcery dot com>
- To: "gdb-patches at sourceware dot org" <gdb-patches at sourceware dot org>, <qiyao at sourceware dot org>
- Date: Mon, 17 Sep 2018 09:22:03 -0600
- Subject: [patch] add missing gcc_target_options method for nios2
While looking at gdb.compile test failures on nios2, I found that it was
passing an invalid option to gcc, due to another missing target method.
This patch doesn't make the "compile" command work for me yet (see PRs
23671 and 23672 that I filed last night) but it seems like something
that will be necessary to get there. OK to commit?
-Sandra
commit fce4579114f47246773caa9c68969a90794ff90d
Author: Sandra Loosemore <sandra@codesourcery.com>
Date: Sun Sep 16 14:35:43 2018 -0700
Add gcc_target_options hook for nios2.
2018-09-16 Sandra Loosemore <sandra@codesourcery.com>
gdb/
* nios2-tdep.c (nios2_gcc_target_options): New.
(nios2_gdb_arch_init): Install new hook.
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index d36f6cd..8174fe8 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,8 @@
+2018-09-16 Sandra Loosemore <sandra@codesourcery.com>
+
+ * nios2-tdep.c (nios2_gcc_target_options): New.
+ (nios2_gdb_arch_init): Install new hook.
+
2018-09-16 Tom Tromey <tom@tromey.com>
* python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
diff --git a/gdb/nios2-tdep.c b/gdb/nios2-tdep.c
index eb5285a..008b1d4 100644
--- a/gdb/nios2-tdep.c
+++ b/gdb/nios2-tdep.c
@@ -2239,6 +2239,14 @@ nios2_type_align (struct gdbarch *gdbarch, struct type *type)
return std::min<ULONGEST> (4, TYPE_LENGTH (type));
}
+/* Implement the gcc_target_options gdbarch method. */
+static char *
+nios2_gcc_target_options (struct gdbarch *gdbarch)
+{
+ /* GCC doesn't know "-m32". */
+ return NULL;
+}
+
/* Initialize the Nios II gdbarch. */
static struct gdbarch *
@@ -2344,6 +2352,9 @@ nios2_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
/* Single stepping. */
set_gdbarch_software_single_step (gdbarch, nios2_software_single_step);
+ /* Target options for compile. */
+ set_gdbarch_gcc_target_options (gdbarch, nios2_gcc_target_options);
+
/* Hook in ABI-specific overrides, if they have been registered. */
gdbarch_init_osabi (info, gdbarch);