Commit 648d2ffc by Richard Henderson

m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise.

        * m32r.h (EXPAND_BUILTIN_SAVEREGS): Likewise.
        * m88k.h, m88k.c: Likewise.
        * mn10300.h, mn10300.c: Likewise.
        * pa.h, pa.c: Likewise.
        * rs6000.h, rs6000.c: Likewise.
        * sh.h, sh.c: Likewise.
        * sparc.h, sparc.c: Likewise.

From-SVN: r28245
parent 5379f4a4
......@@ -981,7 +981,7 @@ M32R_STACK_ALIGN (current_function_outgoing_args_size)
If this macro is not defined, the compiler will output an ordinary
call to the library function `__builtin_saveregs'. */
extern struct rtx *m32r_expand_builtin_savergs ();
#define EXPAND_BUILTIN_SAVEREGS(ARGS) m32r_expand_builtin_saveregs (ARGS)
#define EXPAND_BUILTIN_SAVEREGS() m32r_expand_builtin_saveregs ()
#endif
/* This macro offers an alternative
......
......@@ -2573,14 +2573,12 @@ m88k_function_arg (args_so_far, mode, type, named)
2 + args_so_far);
}
/* Do what is necessary for `va_start'. The argument is ignored;
We look at the current function to determine if stdargs or varargs
is used and fill in an initial va_list. A pointer to this constructor
is returned. */
/* Do what is necessary for `va_start'. We look at the current function
to determine if stdargs or varargs is used and fill in an initial
va_list. A pointer to this constructor is returned. */
struct rtx_def *
m88k_builtin_saveregs (arglist)
tree arglist;
m88k_builtin_saveregs ()
{
rtx block, addr, argsize, dest;
tree fntype = TREE_TYPE (current_function_decl);
......
......@@ -198,13 +198,13 @@ extern char * reg_names[];
Redefined in sysv4.h, and luna.h. */
#define VERSION_INFO1 "m88k, "
#ifndef VERSION_INFO2
#define VERSION_INFO2 "$Revision: 1.11 $"
#define VERSION_INFO2 "$Revision: 1.12 $"
#endif
#ifndef VERSION_STRING
#define VERSION_STRING version_string
#ifdef __STDC__
#define TM_RCS_ID "@(#)" __FILE__ " $Revision: 1.11 $ " __DATE__
#define TM_RCS_ID "@(#)" __FILE__ " $Revision: 1.12 $ " __DATE__
#else
#define TM_RCS_ID "$What: <@(#) m88k.h,v 1.1.1.2.2.2> $"
#endif /* __STDC__ */
......@@ -1093,7 +1093,7 @@ enum reg_class { NO_REGS, AP_REG, XRF_REGS, GENERAL_REGS, AGRF_REGS,
/* Generate necessary RTL for __builtin_saveregs().
ARGLIST is the argument list; see expr.c. */
#define EXPAND_BUILTIN_SAVEREGS(ARGLIST) m88k_builtin_saveregs (ARGLIST)
#define EXPAND_BUILTIN_SAVEREGS() m88k_builtin_saveregs ()
/* Generate the assembly code for function entry. */
#define FUNCTION_PROLOGUE(FILE, SIZE) m88k_begin_prologue(FILE, SIZE)
......
......@@ -627,8 +627,7 @@ initial_offset (from, to)
/* Flush the argument registers to the stack for a stdarg function;
return the new argument pointer. */
rtx
mn10300_builtin_saveregs (arglist)
tree arglist;
mn10300_builtin_saveregs ()
{
rtx offset;
tree fntype = TREE_TYPE (current_function_decl);
......
......@@ -570,7 +570,7 @@ extern struct rtx_def *function_arg ();
_builtin_saveregs, so we must make this explicit. */
extern struct rtx_def *mn10300_builtin_saveregs ();
#define EXPAND_BUILTIN_SAVEREGS(ARGLIST) mn10300_builtin_saveregs (ARGLIST)
#define EXPAND_BUILTIN_SAVEREGS() mn10300_builtin_saveregs ()
/* Addressing modes, and classification of registers for them. */
......
......@@ -4259,14 +4259,12 @@ function_arg_padding (mode, type)
}
/* Do what is necessary for `va_start'. The argument is ignored;
We look at the current function to determine if stdargs or varargs
is used and fill in an initial va_list. A pointer to this constructor
is returned. */
/* Do what is necessary for `va_start'. We look at the current function
to determine if stdargs or varargs is used and fill in an initial
va_list. A pointer to this constructor is returned. */
struct rtx_def *
hppa_builtin_saveregs (arglist)
tree arglist ATTRIBUTE_UNUSED;
hppa_builtin_saveregs ()
{
rtx offset, dest;
tree fntype = TREE_TYPE (current_function_decl);
......
......@@ -1217,7 +1217,7 @@ extern union tree_node *current_function_decl;
_builtin_saveregs, so we must make this explicit. */
extern struct rtx_def *hppa_builtin_saveregs ();
#define EXPAND_BUILTIN_SAVEREGS(ARGLIST) hppa_builtin_saveregs (ARGLIST)
#define EXPAND_BUILTIN_SAVEREGS() hppa_builtin_saveregs ()
/* Addressing modes, and classification of registers for them.
......
......@@ -1758,12 +1758,6 @@ setup_incoming_varargs (cum, mode, type, pretend_size, no_rtl)
are made. The return value of this function should be an RTX that
contains the value to use as the return of `__builtin_saveregs'.
The argument ARGS is a `tree_list' containing the arguments that
were passed to `__builtin_saveregs'.
If this macro is not defined, the compiler will output an ordinary
call to the library function `__builtin_saveregs'.
On the Power/PowerPC return the address of the area on the stack
used to hold arguments. Under AIX, this includes the 8 word register
save area.
......@@ -1774,8 +1768,7 @@ setup_incoming_varargs (cum, mode, type, pretend_size, no_rtl)
to a block copy. This is similar to the way we do things on Alpha. */
struct rtx_def *
expand_builtin_saveregs (args)
tree args ATTRIBUTE_UNUSED;
expand_builtin_saveregs ()
{
rtx block, mem_gpr_fpr, mem_reg_save_area, mem_overflow, tmp;
tree fntype;
......
......@@ -1566,16 +1566,10 @@ typedef struct rs6000_args
code for a call to `__builtin_saveregs'. This code will be moved
to the very beginning of the function, before any parameter access
are made. The return value of this function should be an RTX that
contains the value to use as the return of `__builtin_saveregs'.
contains the value to use as the return of `__builtin_saveregs'. */
The argument ARGS is a `tree_list' containing the arguments that
were passed to `__builtin_saveregs'.
If this macro is not defined, the compiler will output an ordinary
call to the library function `__builtin_saveregs'. */
#define EXPAND_BUILTIN_SAVEREGS(ARGS) \
expand_builtin_saveregs (ARGS)
#define EXPAND_BUILTIN_SAVEREGS() \
expand_builtin_saveregs ()
/* This macro generates the assembly code for function entry.
FILE is a stdio stream to output the code to.
......
......@@ -3872,8 +3872,7 @@ function_epilogue (stream, size)
}
rtx
sh_builtin_saveregs (arglist)
tree arglist;
sh_builtin_saveregs ()
{
tree fntype = TREE_TYPE (current_function_decl);
/* First unnamed integer register. */
......
......@@ -1153,10 +1153,9 @@ extern int current_function_anonymous_args;
? gen_rtx (MEM, Pmode, gen_rtx (REG, Pmode, RETURN_ADDRESS_POINTER_REGNUM)) \
: (rtx) 0)
/* Generate necessary RTL for __builtin_saveregs().
ARGLIST is the argument list; see expr.c. */
/* Generate necessary RTL for __builtin_saveregs(). */
extern struct rtx_def *sh_builtin_saveregs ();
#define EXPAND_BUILTIN_SAVEREGS(ARGLIST) sh_builtin_saveregs (ARGLIST)
#define EXPAND_BUILTIN_SAVEREGS() sh_builtin_saveregs ()
/* Addressing modes, and classification of registers for them. */
#define HAVE_POST_INCREMENT 1
......
......@@ -4256,14 +4256,12 @@ function_value (type, mode, incoming_p)
return gen_rtx_REG (mode, regno);
}
/* Do what is necessary for `va_start'. The argument is ignored.
We look at the current function to determine if stdarg or varargs
is used and return the address of the first unnamed parameter. */
/* Do what is necessary for `va_start'. We look at the current function
to determine if stdarg or varargs is used and return the address of
the first unnamed parameter. */
rtx
sparc_builtin_saveregs (arglist)
tree arglist ATTRIBUTE_UNUSED;
sparc_builtin_saveregs ()
{
int first_reg = current_function_args_info.words;
rtx address;
......
......@@ -2039,11 +2039,10 @@ void sparc64_initialize_trampoline ();
else \
sparc_initialize_trampoline (TRAMP, FNADDR, CXT)
/* Generate necessary RTL for __builtin_saveregs().
ARGLIST is the argument list; see expr.c. */
/* Generate necessary RTL for __builtin_saveregs(). */
extern struct rtx_def *sparc_builtin_saveregs ();
#define EXPAND_BUILTIN_SAVEREGS(ARGLIST) sparc_builtin_saveregs (ARGLIST)
#define EXPAND_BUILTIN_SAVEREGS() sparc_builtin_saveregs ()
/* Define this macro if the location where a function argument is passed
depends on whether or not it is a named argument.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment