This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH v2] ARM: __attribute__ ((reg_return))
- From: Daniel Jacobowitz <drow at false dot org>
- To: Zack Weinberg <zack at codesourcery dot com>
- Cc: gcc-patches at gcc dot gnu dot org, Paul Brook <paul at codesourcery dot com>, Mark Mitchell <mark at codesourcery dot com>
- Date: Tue, 11 Sep 2007 08:32:26 -0400
- Subject: Re: [PATCH v2] ARM: __attribute__ ((reg_return))
- References: <46E50F6A.firstname.lastname@example.org>
On Mon, Sep 10, 2007 at 02:33:30AM -0700, Zack Weinberg wrote:
> Here is a revised version of my patch from last week [
> http://gcc.gnu.org/ml/gcc-patches/2007-09/msg00163.html ] which adds an
> ARM-specific type attribute that overrides the ABI and causes an aggregate to
> be returned in registers. Aggregates of up to 16 bytes can be returned this
> way (in r0-r3).
FWIW, I also think it's bizarre to have this as a type attribute. I
understand it made the implementation easier, but it's harder to
explain. And we should be able to do this as automatically
as an optimization for local functions - messing around with the
attributes of the return type is a non-starter.