aboutsummaryrefslogtreecommitdiff
path: root/gdb
diff options
context:
space:
mode:
Diffstat (limited to 'gdb')
-rw-r--r--gdb/ChangeLog9
-rw-r--r--gdb/spu-tdep.c19
2 files changed, 28 insertions, 0 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index c127010..2e26b26 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,14 @@
2008-08-22 Ulrich Weigand <uweigand@de.ibm.com>
+ * spu-tdep.c (spu_overlay_new_objfile): Only consider SPU objfiles.
+ (info_spu_event_command): Command only supported on SPU architecture.
+ (info_spu_signal_command): Likewise.
+ (info_spu_mailbox_command): Likewise.
+ (info_spu_dma_command): Likewise.
+ (info_spu_proxydma_command): Likewise.
+
+2008-08-22 Ulrich Weigand <uweigand@de.ibm.com>
+
* infrun.c (adjust_pc_after_break): Do not call get_thread_regcache
if the thread has already exited.
diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
index 92cbd30..502fc83 100644
--- a/gdb/spu-tdep.c
+++ b/gdb/spu-tdep.c
@@ -1463,6 +1463,10 @@ spu_overlay_new_objfile (struct objfile *objfile)
if (!objfile || objfile_data (objfile, spu_overlay_data) != NULL)
return;
+ /* Consider only SPU objfiles. */
+ if (bfd_get_arch (objfile->obfd) != bfd_arch_spu)
+ return;
+
/* Check if this objfile has overlays. */
ovly_table = spu_get_overlay_table (objfile);
if (!ovly_table)
@@ -1497,6 +1501,9 @@ info_spu_event_command (char *args, int from_tty)
LONGEST len;
int rc, id;
+ if (gdbarch_bfd_arch_info (get_frame_arch (frame))->arch != bfd_arch_spu)
+ error (_("\"info spu\" is only supported on the SPU architecture."));
+
id = get_frame_register_unsigned (frame, SPU_ID_REGNUM);
xsnprintf (annex, sizeof annex, "%d/event_status", id);
@@ -1549,6 +1556,9 @@ info_spu_signal_command (char *args, int from_tty)
LONGEST len;
int rc, id;
+ if (gdbarch_bfd_arch_info (get_frame_arch (frame))->arch != bfd_arch_spu)
+ error (_("\"info spu\" is only supported on the SPU architecture."));
+
id = get_frame_register_unsigned (frame, SPU_ID_REGNUM);
xsnprintf (annex, sizeof annex, "%d/signal1", id);
@@ -1665,6 +1675,9 @@ info_spu_mailbox_command (char *args, int from_tty)
LONGEST len;
int i, id;
+ if (gdbarch_bfd_arch_info (get_frame_arch (frame))->arch != bfd_arch_spu)
+ error (_("\"info spu\" is only supported on the SPU architecture."));
+
id = get_frame_register_unsigned (frame, SPU_ID_REGNUM);
chain = make_cleanup_ui_out_tuple_begin_end (uiout, "SPUInfoMailbox");
@@ -1894,6 +1907,9 @@ info_spu_dma_command (char *args, int from_tty)
LONGEST len;
int i, id;
+ if (gdbarch_bfd_arch_info (get_frame_arch (frame))->arch != bfd_arch_spu)
+ error (_("\"info spu\" is only supported on the SPU architecture."));
+
id = get_frame_register_unsigned (frame, SPU_ID_REGNUM);
xsnprintf (annex, sizeof annex, "%d/dma_info", id);
@@ -1963,6 +1979,9 @@ info_spu_proxydma_command (char *args, int from_tty)
LONGEST len;
int i, id;
+ if (gdbarch_bfd_arch_info (get_frame_arch (frame))->arch != bfd_arch_spu)
+ error (_("\"info spu\" is only supported on the SPU architecture."));
+
id = get_frame_register_unsigned (frame, SPU_ID_REGNUM);
xsnprintf (annex, sizeof annex, "%d/proxydma_info", id);