calls.c (expand_call): Update comments.
* calls.c (expand_call): Update comments. * system.h (PRETEND_OUTGOING_VARARGS_NAMED): Poison. * targhooks.c: Do not refer to PRETEND_OUTGOING_VARARGS_NAMED. From-SVN: r74770
This commit is contained in:
parent
b0656d8b25
commit
4ac8340c31
|
@ -1,3 +1,9 @@
|
|||
2003-12-17 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* calls.c (expand_call): Update comments.
|
||||
* system.h (PRETEND_OUTGOING_VARARGS_NAMED): Poison.
|
||||
* targhooks.c: Do not refer to PRETEND_OUTGOING_VARARGS_NAMED.
|
||||
|
||||
2003-12-17 James E Wilson <wilson@specifixinc.com>
|
||||
Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
|
|
17
gcc/calls.c
17
gcc/calls.c
|
@ -2413,15 +2413,16 @@ expand_call (tree exp, rtx target, int ignore)
|
|||
(If no anonymous args follow, the result of list_length is actually
|
||||
one too large. This is harmless.)
|
||||
|
||||
If PRETEND_OUTGOING_VARARGS_NAMED is set and STRICT_ARGUMENT_NAMING is
|
||||
zero, this machine will be able to place unnamed args that were
|
||||
passed in registers into the stack. So treat all args as named.
|
||||
This allows the insns emitting for a specific argument list to be
|
||||
independent of the function declaration.
|
||||
If targetm.calls.pretend_outgoing_varargs_named() returns
|
||||
nonzero, and STRICT_ARGUMENT_NAMING is zero, this machine will be
|
||||
able to place unnamed args that were passed in registers into the
|
||||
stack. So treat all args as named. This allows the insns
|
||||
emitting for a specific argument list to be independent of the
|
||||
function declaration.
|
||||
|
||||
If PRETEND_OUTGOING_VARARGS_NAMED is not set, we do not have any
|
||||
reliable way to pass unnamed args in registers, so we must force
|
||||
them into memory. */
|
||||
If targetm.calls.pretend_outgoing_varargs_named() returns zero,
|
||||
we do not have any reliable way to pass unnamed args in
|
||||
registers, so we must force them into memory. */
|
||||
|
||||
if ((targetm.calls.strict_argument_naming (&args_so_far)
|
||||
|| ! targetm.calls.pretend_outgoing_varargs_named (&args_so_far))
|
||||
|
|
|
@ -594,7 +594,8 @@ typedef char _Bool;
|
|||
ASM_SIMPLIFY_DWARF_ADDR INIT_TARGET_OPTABS INIT_SUBTARGET_OPTABS \
|
||||
INIT_GOFAST_OPTABS MULSI3_LIBCALL MULDI3_LIBCALL DIVSI3_LIBCALL \
|
||||
DIVDI3_LIBCALL UDIVSI3_LIBCALL UDIVDI3_LIBCALL MODSI3_LIBCALL \
|
||||
MODDI3_LIBCALL UMODSI3_LIBCALL UMODDI3_LIBCALL BUILD_VA_LIST_TYPE
|
||||
MODDI3_LIBCALL UMODSI3_LIBCALL UMODDI3_LIBCALL BUILD_VA_LIST_TYPE \
|
||||
PRETEND_OUTGOING_VARARGS_NAMED
|
||||
|
||||
/* Other obsolete target macros, or macros that used to be in target
|
||||
headers and were not used, and may be obsolete or may never have
|
||||
|
|
|
@ -185,15 +185,11 @@ default_strict_argument_naming (CUMULATIVE_ARGS *ca ATTRIBUTE_UNUSED)
|
|||
bool
|
||||
default_pretend_outgoing_varargs_named(CUMULATIVE_ARGS *ca ATTRIBUTE_UNUSED)
|
||||
{
|
||||
#ifdef PRETEND_OUTGOING_VARARGS_NAMED
|
||||
return PRETEND_OUTGOING_VARARGS_NAMED;
|
||||
#else
|
||||
#ifdef SETUP_INCOMING_VARARGS
|
||||
return 1;
|
||||
#else
|
||||
return (targetm.calls.setup_incoming_varargs != default_setup_incoming_varargs);
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
||||
/* Generic hook that takes a CUMULATIVE_ARGS pointer and returns true. */
|
||||
|
|
Loading…
Reference in New Issue