This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)
On Sat, Jan 29, 2005 at 02:28:27PM -0500, Jakub Jelinek wrote:
> On Sat, Jan 29, 2005 at 01:38:28PM -0500, Daniel Jacobowitz wrote:
> > On Sat, Jan 29, 2005 at 06:41:53PM +0100, Andreas Schwab wrote:
> > > Jakub Jelinek <jakub@redhat.com> writes:
> > >
> > > > Calling such functions doesn't work properly in gdb's inferior, true.
> > > > But I'd call that a gdb bug, because the debug information is correct
> > >
> > > Does the debug information specify where the arguments are to be passed
> > > (in addition to where they end up after the prologue)?
> >
> > Currently, I believe the answer is "no". Certainly historically the
> > answer has been "no", so GDB can not trust the parameter locations.
>
> So what does gdb do about transparently regparm(2/3)ized local functions?
> They apparently do work in inferior calls.
GDB, at least the copy I'm looking at, has no support for regparm at
all. You may just be lucky :-) It always appears to push arguments
onto the stack (i386_push_dummy_call).
--
Daniel Jacobowitz
- References:
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or doublevalues (take 2)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or doublevalues (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or doublevalues (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/ordouble values (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)
- Re: [PATCH, i386] Optionally use %xmm0 to return float and/or double values (take 3)