aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorSteve Ellcey <sje@cup.hp.com>2001-12-11 23:04:36 +0000
committerJanis Johnson <janis@gcc.gnu.org>2001-12-11 23:04:36 +0000
commit0d7839daeef826108df3788cc82c198df2e56b2d (patch)
tree204c988a001cb54478276500f93ea95df61d9865 /gcc/doc
parent81deb0a3e6fc4528d84b11356a470c4054b171a1 (diff)
downloadgcc-0d7839daeef826108df3788cc82c198df2e56b2d.zip
gcc-0d7839daeef826108df3788cc82c198df2e56b2d.tar.gz
gcc-0d7839daeef826108df3788cc82c198df2e56b2d.tar.bz2
tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): New.
2001-12-11 Steve Ellcey <sje@cup.hp.com> * doc/tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): New. * defaults.h (FUNCTION_ARG_REG_LITTLE_ENDIAN): New. * calls.c (store_unaligned_arguments_into_pseudos): Check FUNCTION_ARG_REG_LITTLE_ENDIAN to see how structures are passed/returned. * expr.c (move_block_from_reg): Ditto. (move_block_from_reg): Ditto. (copy_blkmode_from_reg): Ditto. * stmt.c (expand_return): Ditto. * stor-layout.c (compute_record_mode): If FUNCTION_ARG_REG_LITTLE_ENDIAN is set then check MEMBER_TYPE_FORCES_BLK even if mode == VOIDmode. * config/ia64/hpux.h (MEMBER_TYPE_FORCES_BLK): Set to true so that Structures of one field are still treated as structures. (FUNCTION_ARG_REG_LITTLE_ENDIAN): New, set it to true. (FUNCTION_ARG_PADDING): Set to ia64_hpux_function_arg_padding(). (PAD_VARARGS_DOWN): Modify from default to not pad structures down. * config/ia64/ia64-protos.h (ia64_hpux_function_arg_padding): New. * config/ia64/ia64.c (ia64_hpux_function_arg_padding): New function to special case handling of structure padding. From-SVN: r47904
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/tm.texi8
1 files changed, 8 insertions, 0 deletions
diff --git a/gcc/doc/tm.texi b/gcc/doc/tm.texi
index beae6e5..5e97e91 100644
--- a/gcc/doc/tm.texi
+++ b/gcc/doc/tm.texi
@@ -3435,6 +3435,14 @@ nonzero, the caller does not make a copy. Instead, it passes a pointer to the
determined that the value won't be modified, it need not make a copy;
otherwise a copy must be made.
+@findex FUNCTION_ARG_REG_LITTLE_ENDIAN
+@item FUNCTION_ARG_REG_LITTLE_ENDIAN
+If defined TRUE on a big-endian system then structure arguments passed
+(and returned) in registers are passed in a little-endian manner instead of
+the big-endian manner. On the HP-UX IA64 and PA64 platforms structures are
+aligned differently then integral values and setting this value to true will
+allow for the special handling of structure arguments and return values.
+
@findex CUMULATIVE_ARGS
@item CUMULATIVE_ARGS
A C type for declaring a variable that is used as the first argument of