+2002-07-16 Zack Weinberg <zack@codesourcery.com>
+
+ * builtins.c (std_expand_builtin_va_start): Remove unused
+ first argument.
+ (expand_builtin_va_start): Call EXPAND_BUILTIN_VA_START and
+ std_expand_builtin_va_start with just two arguments.
+ * expr.h: Update prototypes.
+
+ * alpha-protos.h, alpha.h, alpha.c, arc-protos.h, arc.h,
+ arc.c, d30v-protos.h, d30v.h, d30v.c, i386-protos.h, i386.h,
+ i386.c, i960-protos.h, i960.h, i960.c, m88k-protos.h, m88k.h,
+ m88k.c, mips-protos.h, mips.h, mips.c, mn10300-protos.h,
+ mn10300.h, mn10300.c, pa-protos.h, pa.h, pa.c,
+ rs6000-protos.h, rs6000.h, rs6000.c, s390-protos.h, s390.h,
+ s390.c, sh-protos.h, sh.h, sh.c, sparc-protos.h, sparc.h,
+ sparc.c, stormy16-protos.h, stormy16.h, stormy16.c,
+ xtensa-protos.h, xtensa.h, xtensa.c: Remove unused first
+ argument from all implementations of EXPAND_BUILTIN_VA_START
+ and all uses of std_expand_builtin_va_start.
+
Tue Jul 16 19:32:58 2002 J"orn Rennecke <joern.rennecke@superh.com>
* regrename.c (copy_value): Don't record high part copies.
* config/ns32k/ns32k.md (*madddf, *maddsf, *msubdf, *msubsf):
"earlyclobber" constraint modifier for some alternative.
-
+
* config/ns32k/ns32k.md (tstdf, tstsf, cmpdf, cmpsf, blt, ble)
(*ble, *blt): Flag to indicate bCOND and sCOND should check for
unordered.
2002-07-16 Jeroen Dobbelaere <jeroen.dobbelaere@acunia.com>
Richard Earnshaw <rearnsha@arm.com>
- * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
+ * arm.h (LEGITIMATE_PIC_OPERAND_P): Only test
CONSTANT_POOL_ADDRESS_P if a SYMBOL_REF. Simplify logic.
2002-07-16 Richard Earnshaw <rearnsha@arm.com>
* ra-rewrite.c: #include reload.h, insn-config.h
* ra-build.c: #include reload.h
* Makefile.in: Update ra-rewrite.o, ra-build.o dependencies to
- depend on reload.h, insn-config.h.
+ depend on reload.h, insn-config.h.
Tue Jul 16 11:57:45 2002 J"orn Rennecke <joern.rennecke@superh.com>
the variable. */
void
-std_expand_builtin_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+std_expand_builtin_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
valist = stabilize_va_list (TREE_VALUE (arglist), 1);
#ifdef EXPAND_BUILTIN_VA_START
- EXPAND_BUILTIN_VA_START (1, valist, nextarg);
+ EXPAND_BUILTIN_VA_START (valist, nextarg);
#else
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
#endif
return const0_rtx;
extern void alpha_reorg PARAMS ((rtx));
extern tree alpha_build_va_list PARAMS ((void));
-extern void alpha_va_start PARAMS ((int, tree, rtx));
+extern void alpha_va_start PARAMS ((tree, rtx));
extern rtx alpha_va_arg PARAMS ((tree, tree));
extern rtx function_arg PARAMS ((CUMULATIVE_ARGS, enum machine_mode,
tree, int));
}
void
-alpha_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+alpha_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
return;
if (TARGET_ABI_UNICOSMK)
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
/* For Unix, SETUP_INCOMING_VARARGS moves the starting address base
up by 48, storing fp arg registers in the first 48 bytes, and the
(VALIST) = alpha_build_va_list ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- alpha_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ alpha_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
#ifdef RTX_CODE
#ifdef TREE_CODE
-extern void arc_va_start PARAMS ((int, tree, rtx));
+extern void arc_va_start PARAMS ((tree, rtx));
extern rtx arc_va_arg PARAMS ((tree, tree));
#endif /* TREE_CODE */
}
\f
void
-arc_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+arc_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
&& (current_function_args_info & 1))
nextarg = plus_constant (nextarg, UNITS_PER_WORD);
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
}
rtx
\f
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- arc_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ arc_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
tree, int *, int));
extern tree d30v_build_va_list PARAMS ((void));
#ifdef RTX_CODE
-extern void d30v_expand_builtin_va_start PARAMS ((int, tree, rtx));
+extern void d30v_expand_builtin_va_start PARAMS ((tree, rtx));
extern rtx d30v_expand_builtin_va_arg PARAMS ((tree, tree));
#endif /* RTX_CODE */
#endif /* TREE_CODE */
/* Expand __builtin_va_start to do the va_start macro. */
void
-d30v_expand_builtin_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+d30v_expand_builtin_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
'next' argument after the variable arguments. If not defined, a standard
implementation will be defined that works for arguments passed on the stack. */
-#define EXPAND_BUILTIN_VA_START(STDARG_P, VALIST, NEXTARG) \
-(d30v_expand_builtin_va_start(STDARG_P, VALIST, NEXTARG))
+#define EXPAND_BUILTIN_VA_START(VALIST, NEXTARG) \
+ d30v_expand_builtin_va_start(VALIST, NEXTARG)
/* Implement the stdarg/varargs va_arg macro. VALIST is the variable of type
va_list as a tree, TYPE is the type passed to va_arg. */
extern bool ix86_function_arg_regno_p PARAMS ((int));
extern int ix86_function_arg_boundary PARAMS ((enum machine_mode, tree));
extern int ix86_return_in_memory PARAMS ((tree));
-extern void ix86_va_start PARAMS ((int, tree, rtx));
+extern void ix86_va_start PARAMS ((tree, rtx));
extern rtx ix86_va_arg PARAMS ((tree, tree));
extern void ix86_setup_incoming_varargs PARAMS ((CUMULATIVE_ARGS *,
enum machine_mode,
/* Implement va_start. */
void
-ix86_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+ix86_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
/* Only 64bit target needs something special. */
if (!TARGET_64BIT)
{
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
return;
}
((VALIST) = ix86_build_va_list ())
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(STDARG, VALIST, NEXTARG) \
- ix86_va_start ((STDARG), (VALIST), (NEXTARG))
+#define EXPAND_BUILTIN_VA_START(VALIST, NEXTARG) \
+ ix86_va_start (VALIST, NEXTARG)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(VALIST, TYPE) \
enum machine_mode,
tree, int));
extern rtx i960_va_arg PARAMS ((tree, tree));
-extern void i960_va_start PARAMS ((int, tree, rtx));
+extern void i960_va_start PARAMS ((tree, rtx));
#endif /* TREE_CODE */
extern enum reg_class secondary_reload_class PARAMS ((enum reg_class, enum machine_mode, rtx));
#endif /* RTX_CODE */
/* Implement `va_start' for varargs and stdarg. */
void
-i960_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+i960_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
(VALIST) = i960_build_va_list ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- i960_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ i960_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
extern int pc_or_label_ref PARAMS ((rtx, enum machine_mode));
extern int symbolic_operand PARAMS ((rtx, enum machine_mode));
#ifdef TREE_CODE
-extern void m88k_va_start PARAMS ((int, tree, rtx));
+extern void m88k_va_start PARAMS ((tree, rtx));
#endif /* TREE_CODE */
#endif /* RTX_CODE */
/* Implement `va_start' for varargs and stdarg. */
void
-m88k_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+m88k_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
(VALIST) = m88k_build_va_list ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- m88k_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ m88k_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
extern int mips_output_external PARAMS ((FILE *, tree,
const char *));
extern tree mips_build_va_list PARAMS ((void));
-extern void mips_va_start PARAMS ((int, tree, rtx));
+extern void mips_va_start PARAMS ((tree, rtx));
extern struct rtx_def *mips_va_arg PARAMS ((tree, tree));
extern void expand_block_move PARAMS ((rtx *));
/* Implement va_start. stdarg_p is always 1. */
void
-mips_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+mips_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
/* Everything is in the GPR save area, or in the overflow
area which is contiguous with it. */
nextarg = plus_constant (nextarg, -gpr_save_area_size);
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
}
}
else
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
}
/* Implement va_arg. */
(VALIST) = mips_build_va_list ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- mips_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ mips_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
#ifdef RTX_CODE
#ifdef TREE_CODE
-extern void mn10300_va_start PARAMS ((int, tree, rtx));
+extern void mn10300_va_start PARAMS ((tree, rtx));
#endif /* TREE_CODE */
extern struct rtx_def *legitimize_address PARAMS ((rtx, rtx, enum machine_mode));
}
void
-mn10300_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+mn10300_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
nextarg = expand_builtin_saveregs ();
- std_expand_builtin_va_start (stdarg_p, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
}
rtx
#define EXPAND_BUILTIN_SAVEREGS() mn10300_builtin_saveregs ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- mn10300_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ mn10300_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
extern int lhs_lshift_cint_operand PARAMS ((rtx, enum machine_mode));
#ifdef TREE_CODE
-extern void hppa_va_start PARAMS ((int, tree, rtx));
+extern void hppa_va_start PARAMS ((tree, rtx));
extern rtx hppa_va_arg PARAMS ((tree, tree));
#endif /* TREE_CODE */
extern rtx hppa_legitimize_address PARAMS ((rtx, rtx, enum machine_mode));
}
void
-hppa_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+hppa_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
nextarg = expand_builtin_saveregs ();
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
}
rtx
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- hppa_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ hppa_va_start (valist, nextarg)
/* Implement `va_arg'. */
#ifdef TREE_CODE
extern void init_cumulative_args PARAMS ((CUMULATIVE_ARGS *, tree, rtx, int));
-extern void rs6000_va_start PARAMS ((int, tree, rtx));
+extern void rs6000_va_start PARAMS ((tree, rtx));
#endif /* TREE_CODE */
extern struct rtx_def *rs6000_got_register PARAMS ((rtx));
/* Implement va_start. */
void
-rs6000_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+rs6000_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
/* Only SVR4 needs something special. */
if (DEFAULT_ABI != ABI_V4)
{
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
return;
}
(VALIST) = rs6000_build_va_list ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- rs6000_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ rs6000_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
extern tree s390_build_va_list PARAMS ((void));
#ifdef RTX_CODE
extern rtx s390_function_arg PARAMS ((CUMULATIVE_ARGS *, enum machine_mode, tree, int));
-extern void s390_va_start PARAMS ((int, tree, rtx));
+extern void s390_va_start PARAMS ((tree, rtx));
extern rtx s390_va_arg PARAMS ((tree, tree));
#endif /* RTX_CODE */
#endif /* TREE_CODE */
(relative to the virtual arg pointer). */
void
-s390_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+s390_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- s390_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ s390_va_start (valist, nextarg)
/* Implement `va_arg'. */
extern int sh_insn_length_adjustment PARAMS ((rtx));
extern int sh_can_redirect_branch PARAMS ((rtx, rtx));
#ifdef TREE_CODE
-extern void sh_va_start PARAMS ((int, tree, rtx));
+extern void sh_va_start PARAMS ((tree, rtx));
extern rtx sh_va_arg PARAMS ((tree, tree));
#endif /* TREE_CODE */
#endif /* RTX_CODE */
/* Implement `va_start' for varargs and stdarg. */
void
-sh_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+sh_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
if (TARGET_SH5)
{
expand_builtin_saveregs ();
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
return;
}
if ((! TARGET_SH3E && ! TARGET_SH4) || TARGET_HITACHI)
{
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
return;
}
(VALIST) = sh_build_va_list ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- sh_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ sh_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
extern struct rtx_def *sparc_builtin_saveregs PARAMS ((void));
#ifdef RTX_CODE
extern void init_cumulative_args PARAMS ((CUMULATIVE_ARGS *, tree, rtx, int));
-extern void sparc_va_start PARAMS ((int, tree, rtx));
+extern void sparc_va_start PARAMS ((tree, rtx));
#endif
extern struct rtx_def *sparc_va_arg PARAMS ((tree, tree));
extern unsigned long sparc_type_code PARAMS ((tree));
/* Implement `va_start' for varargs and stdarg. */
void
-sparc_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+sparc_va_start (valist, nextarg)
tree valist;
rtx nextarg;
{
nextarg = expand_builtin_saveregs ();
- std_expand_builtin_va_start (1, valist, nextarg);
+ std_expand_builtin_va_start (valist, nextarg);
}
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_SAVEREGS() sparc_builtin_saveregs ()
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- sparc_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ sparc_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
#endif
#if defined (TREE_CODE) && defined (RTX_CODE)
-extern void xstormy16_expand_builtin_va_start PARAMS ((int, tree, rtx));
+extern void xstormy16_expand_builtin_va_start PARAMS ((tree, rtx));
extern rtx xstormy16_expand_builtin_va_arg PARAMS ((tree, tree));
extern void xstormy16_initialize_trampoline PARAMS ((rtx, rtx, rtx));
extern rtx xstormy16_function_value PARAMS ((tree, tree));
variable to initialize. NEXTARG is the machine independent notion of the
'next' argument after the variable arguments. */
void
-xstormy16_expand_builtin_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+xstormy16_expand_builtin_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
variable to initialize. NEXTARG is the machine independent notion of the
'next' argument after the variable arguments. If not defined, a standard
implementation will be defined that works for arguments passed on the stack. */
-#define EXPAND_BUILTIN_VA_START(STDARG_P, VALIST, NEXTARG) \
- xstormy16_expand_builtin_va_start (STDARG_P, VALIST, NEXTARG)
+#define EXPAND_BUILTIN_VA_START(VALIST, NEXTARG) \
+ xstormy16_expand_builtin_va_start (VALIST, NEXTARG)
/* Implement the stdarg/varargs va_arg macro. VALIST is the variable of type
va_list as a tree, TYPE is the type passed to va_arg. */
#ifdef TREE_CODE
extern void init_cumulative_args PARAMS ((CUMULATIVE_ARGS *, tree, rtx));
-extern void xtensa_va_start PARAMS ((int, tree, rtx));
+extern void xtensa_va_start PARAMS ((tree, rtx));
extern rtx xtensa_va_arg PARAMS ((tree, tree));
#endif /* TREE_CODE */
current function to fill in an initial va_list. */
void
-xtensa_va_start (stdarg_p, valist, nextarg)
- int stdarg_p ATTRIBUTE_UNUSED;
+xtensa_va_start (valist, nextarg)
tree valist;
rtx nextarg ATTRIBUTE_UNUSED;
{
xtensa_builtin_saveregs
/* Implement `va_start' for varargs and stdarg. */
-#define EXPAND_BUILTIN_VA_START(stdarg, valist, nextarg) \
- xtensa_va_start (stdarg, valist, nextarg)
+#define EXPAND_BUILTIN_VA_START(valist, nextarg) \
+ xtensa_va_start (valist, nextarg)
/* Implement `va_arg'. */
#define EXPAND_BUILTIN_VA_ARG(valist, type) \
\f
/* Functions from builtins.c: */
extern rtx expand_builtin PARAMS ((tree, rtx, rtx, enum machine_mode, int));
-extern void std_expand_builtin_va_start PARAMS ((int, tree, rtx));
+extern void std_expand_builtin_va_start PARAMS ((tree, rtx));
extern rtx std_expand_builtin_va_arg PARAMS ((tree, tree));
extern rtx expand_builtin_va_arg PARAMS ((tree, tree));
extern void default_init_builtins PARAMS ((void));