From: Elena Zannoni <ezannoni@cygnus.com>
To: Kevin Buettner <kevinb@redhat.com>
Cc: Elena Zannoni <ezannoni@cygnus.com>,
gdb-patches@sources.redhat.com, vmakarov@redhat.com
Subject: Re: [RFA] config/rs6000/tm-rs6000.h STAB_REG_TO_REGNUM
Date: Wed, 05 Dec 2001 14:25:00 -0000 [thread overview]
Message-ID: <15374.41016.151518.113014@krustylu.cygnus.com> (raw)
In-Reply-To: <1011205215641.ZM5797@ocotillo.lan>
Kevin Buettner writes:
> On Nov 30, 4:14pm, Elena Zannoni wrote:
>
> > +/* Convert a dbx stab register number (from `r' declaration) to a gdb
> > + REGNUM */
> > +static int
> > +rs6000_stab_reg_to_regnum (int num)
> > +{
> > + int regnum;
> > + switch (num)
> > + {
> > + case 64: /* mq */
> > + if (TARGET_ARCHITECTURE->mach == bfd_mach_ppc_601)
> > + regnum = 124;
>
> Hmm... I wish we had a symbolic constant for this one. (It took me
> a while to figure out why this register number was different.)
Hmmm, should these regnums be part of the gdbarch_tdep structure?
That's how I did it for the SH. (Defined to -1 if not applicable) It
seems to me that not all the variants have register (say, for
instance) 67 defined to be the LR register or even exist. This way we
could also do error checking in this routine.
OK, for the other changes. Dan said that linux/ppc didn't need these
changes, but it sure looks like it does. The mapping would be
wrong for that as well.
Elena
>
> > + else
> > + regnum = 70;
>
> I'd prefer to see PPC_MQ_REGNUM used here in place of the constant 70.
>
> > + break;
> > + case 65: regnum = 67; /* lr */
>
> Likewise, here I'd like to see PPC_LR_REGNUM in place of 67.
>
> > + break;
> > + case 66: regnum = 68; /* ctr */
>
> Likewise, here I'd like to see PPC_CTR_REGNUM in place of 68.
>
> > + break;
> > + case 76: regnum = 69; /* xer */
>
> Likewise, here I'd like to see PPC_XER_REGNUM in place of 69.
>
> > + break;
> > + default: regnum = num;
> > + break;
> > + }
> > + return regnum;
> > +}
> > +
> > /* Store the address of the place in which to copy the structure the
> > subroutine will return. This is called from call_function.
> >
> > @@ -2340,6 +2366,7 @@ rs6000_gdbarch_init (struct gdbarch_info
> > rs6000_frameless_function_invocation);
> > set_gdbarch_frame_chain (gdbarch, rs6000_frame_chain);
> > set_gdbarch_frame_saved_pc (gdbarch, rs6000_frame_saved_pc);
> > + set_gdbarch_stab_reg_to_regnum (gdbarch, rs6000_stab_reg_to_regnum);
>
> After examining the gcc sources, it appears to me that we need this
> for Linux/PPC too. Either add a similar statement to the Linux/PPC
> part or move this statement up above the ``if (osabi == ELFOSABI_LINUX)''
> statement. (I'd prefer the latter.)
>
> Thanks,
>
> Kevin
next prev parent reply other threads:[~2001-12-05 22:25 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2001-11-30 9:35 Elena Zannoni
2001-11-22 1:18 ` Elena Zannoni
2001-11-22 4:32 ` Andrew Cagney
2001-11-30 10:16 ` Andrew Cagney
2001-11-30 13:08 ` Elena Zannoni
2001-11-24 6:47 ` Elena Zannoni
2001-11-30 13:36 ` Daniel Jacobowitz
2001-11-24 11:03 ` Daniel Jacobowitz
2001-12-05 13:58 ` Kevin Buettner
2001-12-05 14:25 ` Elena Zannoni [this message]
2001-12-05 14:30 ` Daniel Jacobowitz
2001-12-05 14:34 ` Elena Zannoni
2001-12-05 14:53 ` Kevin Buettner
2001-12-05 14:57 ` Elena Zannoni
2001-11-30 9:53 ` Daniel Jacobowitz
2001-11-22 3:39 ` Daniel Jacobowitz
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=15374.41016.151518.113014@krustylu.cygnus.com \
--to=ezannoni@cygnus.com \
--cc=gdb-patches@sources.redhat.com \
--cc=kevinb@redhat.com \
--cc=vmakarov@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