All of lore.kernel.org
 help / color / mirror / Atom feed
From: Philipp Rumpf <prumpf@suse.de>
To: Jeffrey A Law <law@cygnus.com>
Cc: Matthew Wilcox <Matthew.Wilcox@genedata.com>,
	parisc-linux@thepuffingroup.com
Subject: Re: [parisc-linux] HPUX syscall ABI?
Date: Mon, 2 Aug 1999 06:21:41 +0200	[thread overview]
Message-ID: <19990802062141.A23880@suse.de> (raw)
In-Reply-To: <31287.933567147@upchuck.cygnus.com>; from Jeffrey A Law on Sun, Aug 01, 1999 at 10:12:27PM -0600

>> An ABI that would specify too many argument registers would force the 
>> caller
>> to load them before the call and the callee to save them again because both
>> would need the additional argument registers.
> At function entry the compiler copies all parameters passed in registers into
> pseudo-registers.
> 
> Those pseudo registers are then subject to normal register allocation.  ie,
> the compiler can allocate it into a call saved register, into a stack slot
> (and bring it into a register where needed) or into a call clobbered register
> and save/restore it around calls based on which of the options minimizes
> cost.

Is this gcc-specific ?

> There's no benefit to not using those call clobbered registers for parameter
> passing other than to save a little stack space (you have a register flush to
> fixed areas in the frame inside varargs/stdarg functions).

I can imagine cases for which the PA1.1 ABI is better but of course I am not
sure how frequent they are.  For syscalls we definitely want to avoid having
to look at the user stack as soon as we have PL 0.

	Philipp Rumpf

  reply	other threads:[~1999-08-02  4:20 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
1999-08-01 19:50 [parisc-linux] HPUX syscall ABI? Matthew Wilcox
1999-08-02  3:32 ` Philipp Rumpf
1999-08-02  4:12   ` Jeffrey A Law
1999-08-02  4:21     ` Philipp Rumpf [this message]
1999-08-02  4:27       ` Jeffrey A Law
1999-08-02  6:08 ` LaMont Jones
1999-08-02  6:26   ` Matthew Wilcox
1999-08-02  8:36     ` LaMont Jones
1999-08-02 16:50     ` Jerry Huck

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=19990802062141.A23880@suse.de \
    --to=prumpf@suse.de \
    --cc=Matthew.Wilcox@genedata.com \
    --cc=law@cygnus.com \
    --cc=parisc-linux@thepuffingroup.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.