public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
* __builtin_apply questions
@ 2003-10-04  9:34 Eric Botcazou
  2003-10-04 22:29 ` Hans-Peter Nilsson
  0 siblings, 1 reply; 2+ messages in thread
From: Eric Botcazou @ 2003-10-04  9:34 UTC (permalink / raw)
  To: gcc

Hi,

Firstly, the docs contain these sentence for __builtin_apply_args:

     The function saves the arg pointer register, structure value
     address, and all registers that might be used to pass arguments to
     a function into a block of memory allocated on the stack.  Then it
     returns the address of that block.

What is the "structure value address"? Is it a typo for "return value 
address"?


Secondly, the docs contain these sentence for __builtin_apply:

     It is not always simple to compute the proper value for SIZE.  The
     value is used by `__builtin_apply' to compute the amount of data
     that should be pushed on the stack and copied from the incoming
     argument area.

How should it be interpreted for an ABI (namely SPARC) where the first 
arguments are passed in registers (and the rest on the stack) but where room 
is always reserved for them on the stack by the caller (for eventual use by 
the callee) but not filled by the caller? As the size of the whole area 
allocated by the caller or that of the area allocated for the arguments not 
passed in registers?

-- 
Eric Botcazou

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: __builtin_apply questions
  2003-10-04  9:34 __builtin_apply questions Eric Botcazou
@ 2003-10-04 22:29 ` Hans-Peter Nilsson
  0 siblings, 0 replies; 2+ messages in thread
From: Hans-Peter Nilsson @ 2003-10-04 22:29 UTC (permalink / raw)
  To: Eric Botcazou; +Cc: gcc

On Sat, 4 Oct 2003, Eric Botcazou wrote:
> Firstly, the docs contain these sentence for __builtin_apply_args:
>
>      The function saves the arg pointer register, structure value
>      address, and all registers that might be used to pass arguments to
>      a function into a block of memory allocated on the stack.  Then it
>      returns the address of that block.
>
> What is the "structure value address"? Is it a typo for "return value
> address"?

Should be "structure value return address", the address used
when returning structures seemingly by-value but using a
caller-provided caller-allocated address for the area.

brgds, H-P

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-10-04 22:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-10-04  9:34 __builtin_apply questions Eric Botcazou
2003-10-04 22:29 ` Hans-Peter Nilsson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).