diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4b0150365a5..7a1e1fcb49c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,16 @@ +2010-10-08 Nathan Froyd + + * config/bfin/bfin-protos.h (function_arg, function_arg_advance): + Delete. + * config/bfin/bfin.h (FUNCTION_ARG, FUNCTION_ARG_ADVANCE): Delete. + * config/bfin/bfin.c (function_arg_advance): Rename to... + (bfin_function_arg_advance): ...this. Make static. Take const_tree + and bool arguments. + (function_arg): Rename to... + (bfin_function_arg): ...this. Make static. Take const_tree and bool + arguments. + (TARGET_FUNCTION_ARG, TARGET_FUNCTION_ARG_ADVANCE): Define. + 2010-10-08 Nathan Froyd * config/score/score-protos.h (score_function_arg): Delete. diff --git a/gcc/config/bfin/bfin-protos.h b/gcc/config/bfin/bfin-protos.h index 1e18307d710..d713ae57dc9 100644 --- a/gcc/config/bfin/bfin-protos.h +++ b/gcc/config/bfin/bfin-protos.h @@ -65,8 +65,6 @@ #define Mmode enum machine_mode -extern rtx function_arg (CUMULATIVE_ARGS *, Mmode, tree, int); -extern void function_arg_advance (CUMULATIVE_ARGS *, Mmode, tree, int); extern bool function_arg_regno_p (int); extern const char *output_load_immediate (rtx *); diff --git a/gcc/config/bfin/bfin.c b/gcc/config/bfin/bfin.c index da5a8eef237..1ef311b625b 100644 --- a/gcc/config/bfin/bfin.c +++ b/gcc/config/bfin/bfin.c @@ -1907,9 +1907,9 @@ init_cumulative_args (CUMULATIVE_ARGS *cum, tree fntype, of mode MODE and data type TYPE. (TYPE is null for libcalls where that information may not be available.) */ -void -function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type, - int named ATTRIBUTE_UNUSED) +static void +bfin_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, + const_tree type, bool named ATTRIBUTE_UNUSED) { int count, bytes, words; @@ -1946,9 +1946,9 @@ function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type, NAMED is nonzero if this argument is a named parameter (otherwise it is an extra parameter matching an ellipsis). */ -struct rtx_def * -function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type, - int named ATTRIBUTE_UNUSED) +static rtx +bfin_function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, + const_tree type, bool named ATTRIBUTE_UNUSED) { int bytes = (mode == BLKmode) ? int_size_in_bytes (type) : GET_MODE_SIZE (mode); @@ -6634,6 +6634,12 @@ bfin_expand_builtin (tree exp, rtx target ATTRIBUTE_UNUSED, #undef TARGET_ARG_PARTIAL_BYTES #define TARGET_ARG_PARTIAL_BYTES bfin_arg_partial_bytes +#undef TARGET_FUNCTION_ARG +#define TARGET_FUNCTION_ARG bfin_function_arg + +#undef TARGET_FUNCTION_ARG_ADVANCE +#define TARGET_FUNCTION_ARG_ADVANCE bfin_function_arg_advance + #undef TARGET_PASS_BY_REFERENCE #define TARGET_PASS_BY_REFERENCE bfin_pass_by_reference diff --git a/gcc/config/bfin/bfin.h b/gcc/config/bfin/bfin.h index 11cc5cab71b..70ed6dcb561 100644 --- a/gcc/config/bfin/bfin.h +++ b/gcc/config/bfin/bfin.h @@ -815,22 +815,6 @@ typedef struct { int call_cookie; /* Do special things for this call */ } CUMULATIVE_ARGS; -/* Define where to put the arguments to a function. - Value is zero to push the argument on the stack, - or a hard register in which to store the argument. - - MODE is the argument's machine mode. - TYPE is the data type of the argument (as a tree). - This is null for libcalls where that information may - not be available. - CUM is a variable of type CUMULATIVE_ARGS which gives info about - the preceding args and about the function being called. - NAMED is nonzero if this argument is a named parameter - (otherwise it is an extra parameter matching an ellipsis). */ - -#define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \ - (function_arg (&CUM, MODE, TYPE, NAMED)) - #define FUNCTION_ARG_REGNO_P(REGNO) function_arg_regno_p (REGNO) @@ -840,12 +824,6 @@ typedef struct { #define INIT_CUMULATIVE_ARGS(CUM,FNTYPE,LIBNAME,INDIRECT, N_NAMED_ARGS) \ (init_cumulative_args (&CUM, FNTYPE, LIBNAME)) -/* Update the data in CUM to advance over an argument - of mode MODE and data type TYPE. - (TYPE is null for libcalls where that information may not be available.) */ -#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \ - (function_arg_advance (&CUM, MODE, TYPE, NAMED)) - /* Define how to find the value returned by a function. VALTYPE is the data type of the value (as a tree). If the precise function being called is known, FUNC is its FUNCTION_DECL;