From: Andrew Cagney <ac131313@ges.redhat.com>
To: Gerhard Tonn <TON@de.ibm.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [Patch] Fix multithread debugging problems on s390
Date: Sun, 14 Jul 2002 10:40:00 -0000 [thread overview]
Message-ID: <3D31B734.5080906@ges.redhat.com> (raw)
In-Reply-To: <OFB6457045.B0385B6F-ONC1256BF4.004036E9@de.ibm.com>
> Hi,
> attached is a patch that fixes the multi-thread debugging problems on s390.
> The functions fill_gregset and fill_fpregset were broken, but seem to be
> used only since the gdb thread code has been revised in 5.1. I have
> attached the fix also as file in case there are any line mangling in the
> code below.
> 2002-07-12 Gerhard Tonn <ton@de.ibm.com>
>
> * s390-nat.c (fill_gregset and fill_fpregset):
> Call regcache_collect functions.
>
>
>
> I would appreciate, if someone could commit it to trunk and 5.2 branch, if
> possible even for 5.2.1
I'll sit on 5.2.1 for slightly longer. This one is a regression :-(
> Thanks
>
> --- src/gdb/s390-nat.c Tue Nov 6 22:18:13 2001
> +++ /home/ton/gdb/src/gdb/s390-nat.c Wed Jul 10 10:15:26 2002
> @@ -273,14 +273,23 @@
> void
> fill_gregset (gregset_t * gregsetp, int regno)
> {
> + int regi;
> greg_t *gregp = (greg_t *) gregsetp;
>
> if (regno >= S390_FIRST_CR && regno <= S390_LAST_CR)
> - supply_register (regno, NULL);
> + ;
Can you please add a comment indicating that the NO-OP is intentional
and why.
> else if (regno != -1)
> - supply_register (regno, (char *) &gregp[regno]);
> - else
> - supply_gregset (gregsetp);
> + regcache_collect (regno, (char *) &gregp[regno]);
> + else {
GNU coding standards:
else
{
regcache_collect (...,
> + regcache_collect (S390_PSWM_REGNUM, (char *)
I don't believe that the cast is needed. regcache_collect()'s second
parameter is void.
> &gregp[S390_PSWM_REGNUM]);
> + regcache_collect (S390_PC_REGNUM, (char *) &gregp[S390_PC_REGNUM]);
> + for (regi = 0; regi < S390_NUM_GPRS; regi++)
> + regcache_collect (S390_GP0_REGNUM + regi,
> + (char *) &gregp[S390_GP0_REGNUM + regi]);
Indentation:
regcache_collect (S390_....,
&gregp[...]);
> + if (regno == -1) {
GNU Coding style. Also recommend ``< 0'' as safer:
if (regno < 0)
{
> + regcache_collect (S390_FPC_REGNUM, (char *) &fpregsetp->fpc);
> + for (regi = 0; regi < S390_NUM_FPRS; regi++)
> + regcache_collect (S390_FP0_REGNUM + regi, (char *) &fpregsetp->fprs[regi]);
> + }
> else
> - supply_register (regno,
> + regcache_collect (regno,
> &((char *) fpregsetp)[REGISTER_BYTE (regno) -
> REGISTER_BYTE (S390_FPC_REGNUM)]);
Can this be written in a way that doesn't use REGISTER_BYTE()?
REGISTER_BYTE() is going to be removed.
> }
>
> (See attached file: gdb-5.2.1-s390.diff)
Andrew
next prev parent reply other threads:[~2002-07-14 17:39 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-07-12 7:57 Gerhard Tonn
2002-07-14 10:40 ` Andrew Cagney [this message]
2002-07-15 7:17 Gerhard Tonn
2002-07-15 10:46 ` Andrew Cagney
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=3D31B734.5080906@ges.redhat.com \
--to=ac131313@ges.redhat.com \
--cc=TON@de.ibm.com \
--cc=gdb-patches@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox