From 8fbde58b702f0e1273c8292d1359e474fd96126b Mon Sep 17 00:00:00 2001 From: Ulrich Weigand Date: Wed, 13 Aug 2008 13:38:01 +0000 Subject: [PATCH] * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status query valid) bit. Ignore bits outside the condition field. (info_spu_proxydma_command): Ignore bits outside the field. --- gdb/ChangeLog | 6 ++++++ gdb/spu-tdep.c | 18 +++++++++--------- 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index c5896a34fdb..eed32dae5f3 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,9 @@ +2008-08-13 Ulrich Weigand + + * spu-tdep.c (info_spu_dma_command): Respect TSQV (tag status + query valid) bit. Ignore bits outside the condition field. + (info_spu_proxydma_command): Ignore bits outside the field. + 2008-08-12 Michael Snyder * MAINTAINERS: Update my email address. diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c index 64c7051c6ca..92cbd3005b3 100644 --- a/gdb/spu-tdep.c +++ b/gdb/spu-tdep.c @@ -1925,15 +1925,15 @@ info_spu_dma_command (char *args, int from_tty) } else { - const char *query_msg; + const char *query_msg = _("no query pending"); - switch (dma_info_type) - { - case 0: query_msg = _("no query pending"); break; - case 1: query_msg = _("'any' query pending"); break; - case 2: query_msg = _("'all' query pending"); break; - default: query_msg = _("undefined query type"); break; - } + if (dma_info_type & 4) + switch (dma_info_type & 3) + { + case 1: query_msg = _("'any' query pending"); break; + case 2: query_msg = _("'all' query pending"); break; + default: query_msg = _("undefined query type"); break; + } printf_filtered (_("Tag-Group Status 0x%s\n"), phex (dma_info_status, 4)); @@ -1990,7 +1990,7 @@ info_spu_proxydma_command (char *args, int from_tty) { const char *query_msg; - switch (dma_info_type) + switch (dma_info_type & 3) { case 0: query_msg = _("no query pending"); break; case 1: query_msg = _("'any' query pending"); break; -- 2.30.2