diff options
author | Nick Clifton <nickc@cygnus.com> | 1999-05-11 06:27:30 +0000 |
---|---|---|
committer | Nick Clifton <nickc@gcc.gnu.org> | 1999-05-11 06:27:30 +0000 |
commit | f797c10bb0a45c7e762f2aaa51ba30c05ce5847b (patch) | |
tree | f6c1b4c8fa191e003435e4f6cdb805ad8724d7d5 /gcc | |
parent | ef16b5e5ddcb5bff43c81f92c451fd11eeec57e6 (diff) | |
download | gcc-f797c10bb0a45c7e762f2aaa51ba30c05ce5847b.zip gcc-f797c10bb0a45c7e762f2aaa51ba30c05ce5847b.tar.gz gcc-f797c10bb0a45c7e762f2aaa51ba30c05ce5847b.tar.bz2 |
(FUNCTION_ARG): Stack element of PARALLEL must come first
From-SVN: r26879
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/tm.texi | 17 |
2 files changed, 15 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index c5b5fd8..3385b7f 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Mon May 10 13:51:24 1999 Nick Clifton <nickc@cygnus.com> + + * tm.texi (FUNCTION_ARG): Stack element of PARALLEL must come + first. + Tue May 11 01:32:01 1999 Jeffrey A Law (law@cygnus.com) * fixinc/inclhack.def (sun_auth_proto): Apply to all targets. diff --git a/gcc/tm.texi b/gcc/tm.texi index ac6e6be..48f4439 100644 --- a/gcc/tm.texi +++ b/gcc/tm.texi @@ -2787,13 +2787,16 @@ The value of the expression can also be a @code{parallel} RTX. This is used when an argument is passed in multiple locations. The mode of the of the @code{parallel} should be the mode of the entire argument. The @code{parallel} holds any number of @code{expr_list} pairs; each one -describes where part of the argument is passed. In each @code{expr_list}, -the first operand can be either a @code{reg} RTX for the hard register -in which to pass this part of the argument, or zero to pass the argument -on the stack. If this operand is a @code{reg}, then the mode indicates -how large this part of the argument is. The second operand of the -@code{expr_list} is a @code{const_int} which gives the offset in bytes -into the entire argument where this part starts. +describes where part of the argument is passed. In each +@code{expr_list} the first operand must be a @code{reg} RTX for the hard +register in which to pass this part of the argument, and the mode of the +register RTX indicates how large this part of the argument is. The +second operand of the @code{expr_list} is a @code{const_int} which gives +the offset in bytes into the entire argument of where this part starts. +As a special exception the first @code{expr_list} in the @code{parallel} +RTX may have a first operand of zero. This indicates that the bytes +starting from the second operand of that @code{expr_list} are stored on +the stack and not held in a register. @cindex @file{stdarg.h} and register arguments The usual way to make the ANSI library @file{stdarg.h} work on a machine |