@@ -118,10 +118,7 @@ extern int s390_compare_and_branch_condition_mask (rtx);
#endif /* RTX_CODE */
#ifdef TREE_CODE
-extern void s390_function_arg_advance (CUMULATIVE_ARGS *, enum machine_mode,
- tree, int);
#ifdef RTX_CODE
-extern rtx s390_function_arg (CUMULATIVE_ARGS *, enum machine_mode, tree, int);
extern rtx s390_function_value (const_tree, const_tree, enum machine_mode);
#endif /* RTX_CODE */
#endif /* TREE_CODE */
@@ -8263,7 +8263,7 @@ s390_function_arg_size (enum machine_mode mode, const_tree type)
is to be passed in a floating-point register, if available. */
static bool
-s390_function_arg_float (enum machine_mode mode, tree type)
+s390_function_arg_float (enum machine_mode mode, const_tree type)
{
int size = s390_function_arg_size (mode, type);
if (size > 8)
@@ -8308,7 +8308,7 @@ s390_function_arg_float (enum machine_mode mode, tree type)
registers, if available. */
static bool
-s390_function_arg_integer (enum machine_mode mode, tree type)
+s390_function_arg_integer (enum machine_mode mode, const_tree type)
{
int size = s390_function_arg_size (mode, type);
if (size > 8)
@@ -8370,9 +8370,9 @@ s390_pass_by_reference (CUMULATIVE_ARGS *ca ATTRIBUTE_UNUSED,
argument is a named argument (as opposed to an unnamed argument
matching an ellipsis). */
-void
+static void
s390_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode,
- tree type, int named ATTRIBUTE_UNUSED)
+ const_tree type, bool named ATTRIBUTE_UNUSED)
{
if (s390_function_arg_float (mode, type))
{
@@ -8406,9 +8406,9 @@ s390_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode,
to pass floating point arguments. All remaining arguments
are pushed to the stack. */
-rtx
-s390_function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
- int named ATTRIBUTE_UNUSED)
+static rtx
+s390_function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode,
+ const_tree type, bool named ATTRIBUTE_UNUSED)
{
if (s390_function_arg_float (mode, type))
{
@@ -10483,6 +10483,10 @@ s390_loop_unroll_adjust (unsigned nunroll, struct loop *loop)
#undef TARGET_FUNCTION_OK_FOR_SIBCALL
#define TARGET_FUNCTION_OK_FOR_SIBCALL s390_function_ok_for_sibcall
+#undef TARGET_FUNCTION_ARG
+#define TARGET_FUNCTION_ARG s390_function_arg
+#undef TARGET_FUNCTION_ARG_ADVANCE
+#define TARGET_FUNCTION_ARG_ADVANCE s390_function_arg_advance
#undef TARGET_FIXED_CONDITION_CODE_REGS
#define TARGET_FIXED_CONDITION_CODE_REGS s390_fixed_condition_code_regs
@@ -686,12 +686,6 @@ CUMULATIVE_ARGS;
#define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, NN, N_NAMED_ARGS) \
((CUM).gprs=0, (CUM).fprs=0)
-#define FUNCTION_ARG_ADVANCE(CUM, MODE, TYPE, NAMED) \
- s390_function_arg_advance (&CUM, MODE, TYPE, NAMED)
-
-#define FUNCTION_ARG(CUM, MODE, TYPE, NAMED) \
- s390_function_arg (&CUM, MODE, TYPE, NAMED)
-
/* Arguments can be placed in general registers 2 to 6, or in floating
point registers 0 and 2 for 31 bit and fprs 0, 2, 4 and 6 for 64
bit. */