fr30.c (TARGET_PROMOTE_PROTOTYPES): New.
* config/fr30/fr30.c (TARGET_PROMOTE_PROTOTYPES): New. (fr30_setup_incoming_varargs): Don't use STRICT_ARGUMENT_NAMING. * config/fr30/fr30.h (PROMOTE_PROTOTYPES): Remove. (STRICT_ARGUMENT_NAMING): Likewise. From-SVN: r76830
This commit is contained in:
parent
ba4aecd9d2
commit
0fd818e75b
@ -1,3 +1,11 @@
|
||||
2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* config/fr30/fr30.c (TARGET_PROMOTE_PROTOTYPES): New.
|
||||
(fr30_setup_incoming_varargs): Don't use
|
||||
STRICT_ARGUMENT_NAMING.
|
||||
* config/fr30/fr30.h (PROMOTE_PROTOTYPES): Remove.
|
||||
(STRICT_ARGUMENT_NAMING): Likewise.
|
||||
|
||||
2004-01-28 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* config/frv/frv-protos.h: Remove the prototype for
|
||||
|
@ -1,5 +1,6 @@
|
||||
/* FR30 specific functions.
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004
|
||||
Free Software Foundation, Inc.
|
||||
Contributed by Cygnus Solutions.
|
||||
|
||||
This file is part of GCC.
|
||||
@ -148,6 +149,9 @@ static rtx fr30_pass_by_value (tree, tree);
|
||||
#undef TARGET_ASM_ALIGNED_SI_OP
|
||||
#define TARGET_ASM_ALIGNED_SI_OP "\t.word\t"
|
||||
|
||||
#undef TARGET_PROMOTE_PROTOTYPES
|
||||
#define TARGET_PROMOTE_PROTOTYPES hook_bool_tree_true
|
||||
|
||||
struct gcc_target targetm = TARGET_INITIALIZER;
|
||||
|
||||
/* Returns the number of bytes offset between FROM_REG and TO_REG
|
||||
@ -417,11 +421,12 @@ fr30_setup_incoming_varargs (CUMULATIVE_ARGS arg_regs_used_so_far,
|
||||
if (mode == BLKmode)
|
||||
abort ();
|
||||
|
||||
#if STRICT_ARGUMENT_NAMING
|
||||
/* If STRICT_ARGUMENT_NAMING is true then the last named
|
||||
arg must not be treated as an anonymous arg. */
|
||||
arg_regs_used_so_far += fr30_num_arg_regs (int_mode, type);
|
||||
#endif
|
||||
/* ??? This run-time test as well as the code inside the if
|
||||
statement is probably unnecessary. */
|
||||
if (targetm.calls.strict_argument_naming (&arg_regs_used_so_far))
|
||||
/* If TARGET_STRICT_ARGUMENT_NAMING returns true, then the last named
|
||||
arg must not be treated as an anonymous arg. */
|
||||
arg_regs_used_so_far += fr30_num_arg_regs (int_mode, type);
|
||||
|
||||
size = FR30_NUM_ARG_REGS - arg_regs_used_so_far;
|
||||
|
||||
|
@ -1,7 +1,8 @@
|
||||
/*{{{ Comment. */
|
||||
|
||||
/* Definitions of FR30 target.
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2002 Free Software Foundation, Inc.
|
||||
Copyright (C) 1998, 1999, 2000, 2001, 2002, 2004
|
||||
Free Software Foundation, Inc.
|
||||
Contributed by Cygnus Solutions.
|
||||
|
||||
This file is part of GCC.
|
||||
@ -602,12 +603,6 @@ enum reg_class
|
||||
/*}}}*/
|
||||
/*{{{ Passing Function Arguments on the Stack. */
|
||||
|
||||
/* Define this macro if an argument declared in a prototype as an integral type
|
||||
smaller than `int' should actually be passed as an `int'. In addition to
|
||||
avoiding errors in certain cases of mismatch, it also makes for better code
|
||||
on certain machines. */
|
||||
#define PROMOTE_PROTOTYPES 1
|
||||
|
||||
/* If defined, the maximum amount of space required for outgoing arguments will
|
||||
be computed and placed into the variable
|
||||
`current_function_outgoing_args_size'. No space will be pushed onto the
|
||||
@ -903,17 +898,6 @@ enum reg_class
|
||||
if (! SECOND_TIME) \
|
||||
fr30_setup_incoming_varargs (ARGS_SO_FAR, MODE, TYPE, & PRETEND_ARGS_SIZE)
|
||||
|
||||
/* Define this macro if the location where a function argument is passed
|
||||
depends on whether or not it is a named argument.
|
||||
|
||||
This macro controls how the NAMED argument to `FUNCTION_ARG' is set for
|
||||
varargs and stdarg functions. With this macro defined, the NAMED argument
|
||||
is always true for named arguments, and false for unnamed arguments. If
|
||||
this is not defined, but `SETUP_INCOMING_VARARGS' is defined, then all
|
||||
arguments are treated as named. Otherwise, all named arguments except the
|
||||
last are treated as named. */
|
||||
#define STRICT_ARGUMENT_NAMING 0
|
||||
|
||||
/*}}}*/
|
||||
/*{{{ Trampolines for Nested Functions. */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user