This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Ada gdb failures on hppa


> The closest thing to an hppa ABI is the "32-bit PA-RISC Run-time
> Architecture Document".  It explicitly says that: "The caller may not
> assume that the result's address is still in GR28 on return from the
> function."  So that places hppa firmly into the
> RETURN_VALUE_STRUCT_CONVENTION category.

Argh, I missed that part when I read the document. Thanks!

> So Joel, sadly there is no way to fix this.  I guess the particular
> test should be XFAIL'ed for hppa-*-* and other targets that use
> RETURN_VALUE_STRUCT_CONVENTION.

I have just posted a patch that does this for hppa32 targets.
See: http://sources.redhat.com/ml/gdb-patches/2006-01/msg00002.html.

> The distinction is that RETURN_VALUE_ABI_RETURNS_ADDRESS address
> guarantees that the address is available just after we returned from a
> function, whereas RETURN_VALUE_ABI_PRESERVES_ADDRESS guarantees that
> that address will be available even if we're somewhere in the middle
> of the function (which implies that the address is the same as the
> address being passed in).  This is mainly for the benefit of
> implementing "return".  The (32-bit) sparc allows
> RETURN_VALUE_ABI_PRESERVES_ADDRESS but I guess I really implemented
> it.
> 
> The wording could be improved I think; proposals for better wording
> are welcome!

I think the above already gives a pretty clear idea of the difference,
so it's already pretty good wording according to me.

-- 
Joel



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]