From: Andrew Cagney <ac131313@ges.redhat.com>
To: Michael Snyder <msnyder@redhat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [RFA] mips_push_arguments gdbarch-ified
Date: Fri, 09 Aug 2002 19:36:00 -0000 [thread overview]
Message-ID: <3D547C3D.2030401@ges.redhat.com> (raw)
In-Reply-To: <3D54638C.1189FD8D@redhat.com>
> Andrew Cagney wrote:
>
>>
>
>> > These changes fix 16 testsuite failures, based in the Irix native
>> > compiler running with -n32 (and produce no regressions for -o32).
>
>>
>> Yes, with tweaks.
>>
>> General comment. You may want to consider restructuring the function to
>> read:
>>
>> for (argument in arguments)
>> for (argument broken down in to 8 byte chunks)
>> if (fp argument && fnpreg <= num fp arg regs)
>> write argument chunk to fp register
>> else if (!fp argument && reg <= num arg regs)
>> write chunk (carefully aligned) to gp register
>> else
>> write chunk to (carefully aligned) memory
>
>
> OK, I've checked in, with all of your tweaks except for the above.
> Come on, you can't ask me to restructure the whole function just
> to get what was originally a 5-line change in!!! ;-)
If you haven't already, look through the document:
http://techpubs.sgi.com/library/tpl/cgi-bin/getdoc.cgi?coll=0650&db=bks&srch=&fname=/SGI_Developer/Mpro_n32_ABI/sgi_html/ch02.html
which Kevin cited. The above was based on that. With the introduction
of a new mips_n32n64_push_arguments() unction there is an oportunity to
start with a clean slate. To be honest, I think taking that oportunity
will make getting this working much easier! :-)
> As it is, I've fixed a bunch of bugs that weren't mine,
> just to get this in. Diffs that went in attached below.
Oops, I didn't mean for you to touch the old mips_push_arguments() code.
That can be left to rot.
> 2002-08-09 Michael Snyder <msnyder@redhat.com>
>
> * mips-tdep.c (ROUND_DOWN, ROUND_UP): Move to global scope.
> (mips_push_arguments): Correct some comments. Use paddr_nz
> for printing addresses in debug output. Replace static
> allocation using MAX_REGISTER_RAW_SIZE with alloca.
> (mips_n32n64_push_arguments): New function, cloned from
> mips_push_arguments and tuned for the n32/n64 ABI.
> (mips_push_register): Buffer needs dynamic allocation.
> (mips_print_register): Ditto.
> (do_gp_register_row): Ditto.
> (mips_store_return_value): Ditto.
> (mips_gdbarch_init): Set gdbarch_push_arguments per ABI.
ok, thanks
Andrew
prev parent reply other threads:[~2002-08-10 2:36 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-08-08 17:29 Michael Snyder
2002-08-08 20:51 ` Andrew Cagney
2002-08-09 18:10 ` Michael Snyder
2002-08-09 19:36 ` Andrew Cagney [this message]
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=3D547C3D.2030401@ges.redhat.com \
--to=ac131313@ges.redhat.com \
--cc=gdb-patches@sources.redhat.com \
--cc=msnyder@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