tm.texi (FUNCTION_ARG_REG_LITTLE_ENDIAN): New.
authorSteve Ellcey <sje@cup.hp.com>
Tue, 11 Dec 2001 23:04:36 +0000 (23:04 +0000)
committerJanis Johnson <janis@gcc.gnu.org>
Tue, 11 Dec 2001 23:04:36 +0000 (23:04 +0000)
commit0d7839daeef826108df3788cc82c198df2e56b2d
tree204c988a001cb54478276500f93ea95df61d9865
parent81deb0a3e6fc4528d84b11356a470c4054b171a1
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
gcc/ChangeLog
gcc/calls.c
gcc/config/ia64/hpux.h
gcc/config/ia64/ia64-protos.h
gcc/config/ia64/ia64.c
gcc/defaults.h
gcc/doc/tm.texi
gcc/expr.c
gcc/stmt.c
gcc/stor-layout.c