]> gcc.gnu.org Git - gcc.git/commit - gcc/calls.c
tm.texi (BLOCK_REG_PADDING): Describe.
authorAlan Modra <amodra@bigpond.net.au>
Mon, 14 Jul 2003 05:17:18 +0000 (05:17 +0000)
committerAlan Modra <amodra@gcc.gnu.org>
Mon, 14 Jul 2003 05:17:18 +0000 (14:47 +0930)
commit6e98504002b3ee32c9b3d17da648b01e1424f833
treed7df914db340221693c15fa50acf2fcb2f8905f0
parenta3d8777127800e056bf525c39ab4f7bd72b7818b
tm.texi (BLOCK_REG_PADDING): Describe.

* doc/tm.texi (BLOCK_REG_PADDING): Describe.
* expr.h (struct locate_and_pad_arg_data): Add where_pad.
(emit_group_load, emit_group_store): Adjust declarations.
Remove most occurrences of #ifdef TREE_CODE.
* expr.c (emit_group_load): Add "type" param, and use
BLOCK_REG_PADDING to determine need for a shift.  Optimize non-
aligned accesses if !SLOW_UNALIGNED_ACCESS.
(emit_group_store): Likewise.
(emit_push_insn, expand_assignment, store_expr, expand_expr): Adjust
emit_group_load and emit_group_store calls.
* calls.c (store_unaligned_arguments_into_pseudos): Tidy.  Use
BLOCK_REG_PADDING to determine whether we need endian_correction.
(load_register_parameters): Localize vars.  Handle shifting of
small values to the correct end of regs.  Adjust emit_group_load
call.
(expand_call, emit_library_call_value_1): Adjust emit_group_load
and emit_group_store calls.
* function.c (assign_parms): Set mem alignment for stack slots.
Adjust emit_group_store call.  Store values at the "wrong" end
of regs to the stack.  Use BLOCK_REG_PADDING.
(locate_and_pad_parm): Save where_pad.
(expand_function_end): Adjust emit_group_load call.
* stmt.c (expand_value_return): Adjust emit_group_load call.
* Makefile.in (calls.o): Depend on $(OPTABS_H).
* config/rs6000/linux64.h (TARGET_LITTLE_ENDIAN): Redefine as 0.
(AGGREGATE_PADDING_FIXED, AGGREGATES_PAD_UPWARD_ALWAYS): Define.
(MUST_PASS_IN_STACK): Define.
(BLOCK_REG_PADDING): Define.
* config/rs6000/rs6000.h (struct rs6000_args): Remove orig_nargs.
(PAD_VARARGS_DOWN): Define in terms of FUNCTION_ARG_PADDING.
* config/rs6000/rs6000.c (init_cumulative_args): Don't set orig_nargs.
(function_arg_padding): !AGGREGATE_PADDING_FIXED compatibility code.
Act on AGGREGATES_PAD_UPWARD_ALWAYS.

From-SVN: r69318
gcc/ChangeLog
gcc/Makefile.in
gcc/calls.c
gcc/config/rs6000/linux64.h
gcc/config/rs6000/rs6000.c
gcc/config/rs6000/rs6000.h
gcc/doc/tm.texi
gcc/expr.c
gcc/expr.h
gcc/function.c
gcc/stmt.c
This page took 0.061088 seconds and 5 git commands to generate.