From: Andrew Cagney <ac131313@redhat.com>
To: Corinna Vinschen <vinschen@redhat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [RFA] sh-tdep.c (sh_use_struct_convention): Restructure and fix
Date: Mon, 06 Oct 2003 15:52:00 -0000 [thread overview]
Message-ID: <3F818FAA.6050005@redhat.com> (raw)
In-Reply-To: <20031004180852.GA29063@cygbert.vinschen.de>
> On Sat, Oct 04, 2003 at 11:54:09AM -0400, Andrew Cagney wrote:
>
>> > * sh-tdep.c (sh_use_struct_convention): Clean up to have a
>> > more readable code. Accomodate 4 byte structs with 4 byte sized
>> > first field (e.g. bitfields).
>
>>
>> Corinna,
>>
>> See: http://sources.redhat.com/ml/gdb-patches/2003-10/msg00033.html.
>> The ppc64_sysv_return_value code in ppc-sysv-tdep.c, has been written in
>> a way that allows a quick update to this new iterface.
>
>
> I think my patch is fine. I'm fixing non-deprecated functions to
> work better than before. There's nothing wrong with this and I
> don't see any gain to use an entirely new technique (2 days old!)
> to get probably new errors which I don't have using this method.
Corinna, here are some URLs that pretty much spell out the fact that
these changes are comming. They are even prompted by problems you,
yourself, identifed.
2003-09-29: [wip] return value architecture method
http://sources.redhat.com/ml/gdb-patches/2003-09/msg00616.html
which was me giving a very clear heads up that the method was comming.
2003-09-28: value to function?
http://sources.redhat.com/ml/gdb/2003-09/msg00345.html
2003-09-20: [rfa:ppc64] Fix return value
http://sources.redhat.com/ml/gdb-patches/2003-09/msg00435.html
For the origin of that version.
2003-08-??: [rfc] Supporting alternative ABIs
http://sources.redhat.com/ml/gdb/2003-08/msg00252.html
For for a potential future need to add "struct value *function".
2003-09-30: Phone discussion where I alerted you to these pending changes.
> Fixing the bugs is step 1. Converting them to a new technique is
> another, later step.
It stops the existing test cases failing. Unfortunatly the testsuite is
deficient in this area, lacking proper coverage of this feature (would
you like to help me improve the testsuite?).
Unless the new _return_value method is used, GDB refuses to handle:
(gdb) list
struct { float f; } s;
(gdb) return s;
In fact, your SH changes to store_return_value:
http://sources.redhat.com/ml/gdb-patches/2003-10/msg00077.html
that try to handle this specific case are never executed! See
set_return_value.
So? There's a judgment call here - will GDB be better off using the old
or new technique during this transition period? Here, I think it is
questionably the case that it is in everyones best interest to make the
switch. This is because things will be in a much better position for
the change to add a "struct value *function" method to the return-value
code (I assume that that you're still working towards that). The old
code would have required mods to four architecture methods
(RETURN_VALUE_ON_STACK was missed) while the new code will involve mods
to only one.
I should also note that what I'm suggesting here isn't exactly rocket
science. Just grab extract_return_value, or store_return_value, and
massage it into return_value. I just did it for ppc32 and it took an
hour, at max in the case of ppc64 it was a day.
Andrew
next prev parent reply other threads:[~2003-10-06 15:52 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-04 11:39 Corinna Vinschen
2003-10-04 15:54 ` Andrew Cagney
2003-10-04 17:04 ` Kevin Buettner
2003-10-04 17:35 ` Andrew Cagney
2003-10-04 18:13 ` Kevin Buettner
2003-10-06 16:31 ` Andrew Cagney
2003-10-04 18:08 ` Corinna Vinschen
2003-10-06 15:52 ` Andrew Cagney [this message]
2003-10-07 14:52 ` Corinna Vinschen
2003-10-08 17:39 ` Andrew Cagney
2003-10-09 22:51 ` Elena Zannoni
2003-10-11 20:05 ` Andrew Cagney
2003-10-09 22:51 ` Elena Zannoni
2003-10-10 7:29 ` Corinna Vinschen
2003-10-10 15:01 ` Corinna Vinschen
2003-10-10 16:32 ` Elena Zannoni
2003-10-10 16:59 ` Corinna Vinschen
2003-10-10 17:56 ` Elena Zannoni
2003-10-10 19:14 ` Corinna Vinschen
2003-10-10 16:28 ` Elena Zannoni
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=3F818FAA.6050005@redhat.com \
--to=ac131313@redhat.com \
--cc=gdb-patches@sources.redhat.com \
--cc=vinschen@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