OSDN Git Service

* calls.c (struct arg_data): Move offset, slot_offset, size and
authoramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 May 2003 14:22:09 +0000 (14:22 +0000)
committeramodra <amodra@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 2 May 2003 14:22:09 +0000 (14:22 +0000)
commit241399f6793dac1fdefa6b6c7c33cabe1c4f1cc9
tree3499480542d5aee3c1e4cc0cd83f51a439861617
parent30e87df7d5b99e14e55e7f93055e8481ffff587a
* calls.c (struct arg_data): Move offset, slot_offset, size and
alignment_pad to struct locate_and_pad_arg_data.  Update all refs.
(initialize_argument_information): Adjust call to locate_and_pad_parm.
Delete alignment_pad var.  Don't calculate slot_offset here.
(emit_library_call_value_1): Delete alignment_pad, offset and size
vars.  Use struct locate_and_pad_arg_data instead.  Adjust refs.
Adjust call to locate_and_pad_parm.  Don't tweak arg size for
partial in-regs here.  Formatting fixes.
* expr.h (struct locate_and_pad_arg_data): New struct.
(locate_and_pad_parm): Adjust declaration.
* function.c (assign_parms): Localize vars.  Use "locate" instead of
other arg location vars.  Don't invoke FUNCTION_ARG or
FUNCTION_INCOMING_ARG unless pretend_named is different from
named_arg.  Heed MUST_PASS_IN_STACK and set up "partial" before
calling locate_and_pad_parm.  Adjust locate_and_pad_parm call.
Use slot_offset for stack home of reg parms.  Correct test for
parm passed in memory.  Formatting fixes.
(locate_and_pad_parm): Add "partial" to params.  Replace offset_ptr
arg_size_ptr and alignment pad with "locate".  Set slot_offset here.
Correct initial_offset_ptr handling.  Localize vars.  Always pad
locate->offset even when in_regs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@66383 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/calls.c
gcc/expr.h
gcc/function.c