diff options
author | Carlos O'Donell <carlos@codesourcery.com> | 2006-04-04 16:19:59 +0000 |
---|---|---|
committer | Carlos O'Donell <carlos@gcc.gnu.org> | 2006-04-04 16:19:59 +0000 |
commit | 2225b57c2884d2e674ccd5ad972a10a7c1316ec9 (patch) | |
tree | 320de322098272075404c4d8bf933e1c2b3bfa03 /gcc/doc | |
parent | 41ed243ff0f5c098b930eb3fcc333077b346348a (diff) | |
download | gcc-2225b57c2884d2e674ccd5ad972a10a7c1316ec9.zip gcc-2225b57c2884d2e674ccd5ad972a10a7c1316ec9.tar.gz gcc-2225b57c2884d2e674ccd5ad972a10a7c1316ec9.tar.bz2 |
tm.texi (TARGET_STRUCT_VALUE_RTX): Document new value 2 for incoming.
gcc/
2006-04-04 Carlos O'Donell <carlos@codesourcery.com>
* doc/tm.texi (TARGET_STRUCT_VALUE_RTX): Document
new value 2 for incoming.
* function.c (expand_function_start): Call struct_value_rtx
with incoming as 2.
* config/sparc/sparc.md: Comment updated_return.
* config/sparc/sparc.opt: Add -mstd-struct-return option.
* config/sparc/sparc.c (sparc_struct_value_rtx): Use standard
struct return if sparc_std_struct_return and incoming is 2.
(print_operand): Do not adjust return if
sparc_std_struct_return.
gcc/testsuite/
2006-04-04 Carlos O'Donell <carlos@codesourcery.com>
* gcc.target/sparc/struct-ret-check.c: New test.
From-SVN: r112672
Diffstat (limited to 'gcc/doc')
-rw-r--r-- | gcc/doc/tm.texi | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi index 2e7632e..69514e2 100644 --- a/gcc/doc/tm.texi +++ b/gcc/doc/tm.texi @@ -4187,12 +4187,15 @@ On some architectures the place where the structure value address is found by the called function is not the same place that the caller put it. This can be due to register windows, or it could be because the function prologue moves it to a different place. -@var{incoming} is @code{true} when the location is needed in -the context of the called function, and @code{false} in the context of +@var{incoming} is @code{1} or @code{2} when the location is needed in +the context of the called function, and @code{0} in the context of the caller. -If @var{incoming} is @code{true} and the address is to be found on the -stack, return a @code{mem} which refers to the frame pointer. +If @var{incoming} is non-zero and the address is to be found on the +stack, return a @code{mem} which refers to the frame pointer. If +@var{incoming} is @code{2}, the result is being used to fetch the +structure value address at the beginning of a function. If you need +to emit adjusting code, you should do it at this point. @end deftypefn @defmac PCC_STATIC_STRUCT_RETURN |