From: Olatunji Ruwase <Olatunji.Ruwase@Sun.COM>
To: Mark Kettenis <mark.kettenis@xs4all.nl>
Cc: gdb-patches@sources.redhat.com
Subject: Re: Re : Debugging v8plus binaries on solaris
Date: Wed, 22 Feb 2006 18:24:00 -0000 [thread overview]
Message-ID: <43FC99DF.5010408@Sun.COM> (raw)
In-Reply-To: <200602172331.k1HNVj1L030314@elgar.sibelius.xs4all.nl>
Mark Kettenis wrote On 02/17/06 15:31,:
>>Date: Fri, 17 Feb 2006 14:51:31 -0800
>>From: Olatunji Ruwase <Olatunji.Ruwase@Sun.COM>
>
>
> Sorry, I spent most of the week in bed/on the couch in front of the
> telly with a bad flu :(. I had a first glance at it last week, but
Nice to have you back :).
> I'm afraid it needs a bit more work.
I suspected it would, this is my first stab at gdb development, and
the architecture of the code is still a bit fuzzy to me.
>
> For one thing, I think it's important to split the generic v8plus
> target support out from the Solaris v8plus native support. And
> concentrate on the target support first. The seperation is mostly
> already there (*-tdep.c versus *-nat.c), but some of the Solaris
> native "weirdness" (which I realize is necessary for backwards
> compatibility) has crept into the target support.
>
> Looking from an OS agnostic point onto the v8plus support code, I
> really think v8plus should be a seperate architecture much in the same
> way existing 64-bit support is seperate from the 32-bit support. Of
> course this v8plus architecture should reuse as much code from the
> existing 32-bit code as possible, and if the 32-bit code can be
> generalized to work for v8plus as well, that's great, but I think
> constructs like
>
> if (sparc_v8plus)
> {
> ...
> }
> else
> {
> ...
> }
>
Most of my changes to the target support (sparc-tdep.c) are wrapped in
the above construct. sparc32 target support assumes that registers are
4 bytes. One way to eliminate the "if (sparc_v8plus)" is to rewrite
the code to also support 8 byte registers, while making sure that data
is only written and read from the low 4 bytes. However this proposed
change will not work for sparc32_register_type(), but should work for
all other cases. Will this be an acceptable complexity in the target
support code ?. If not I will start moving all the changes into
sparc32plus-* files.
> should be avoided. I also think the xregset stuff should be moved
> into Solaris-specific files, perhaps even into Solaris-specofic
> *-nat.c files. This depends a bit on how v8plus core dumps look. If
> they have the xregset stuff too, the code should probably be moved to
> sparc-sol2-tdep.c or sparc64-sol2-tdep.c.
Yes the v8plus core dump has xregset stuff in it. And I now see why
these changes need to be restricted to solaris specific files.
>
> Is the v8plus ABI documented somewhere?
Unfortunately I dont think it is, I cant find any :(.
Thanks
tunji
>
> Mark
next prev parent reply other threads:[~2006-02-22 17:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-02-10 20:12 Olatunji Ruwase
2006-02-17 22:52 ` Olatunji Ruwase
2006-02-17 23:31 ` Mark Kettenis
2006-02-22 18:24 ` Olatunji Ruwase [this message]
2006-03-03 19:46 ` Olatunji Ruwase
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=43FC99DF.5010408@Sun.COM \
--to=olatunji.ruwase@sun.com \
--cc=gdb-patches@sources.redhat.com \
--cc=mark.kettenis@xs4all.nl \
/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