aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/d30v
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2003-10-29 18:02:49 -0800
committerRichard Henderson <rth@gcc.gnu.org>2003-10-29 18:02:49 -0800
commitc35d187fc31fdd5836d1acb13e29a03537d22b46 (patch)
treede282819f47f9d9172dff72434c1129a8147296c /gcc/config/d30v
parent12d104a2b9c2bcb0e85cd0289dc7616422d55753 (diff)
downloadgcc-c35d187fc31fdd5836d1acb13e29a03537d22b46.zip
gcc-c35d187fc31fdd5836d1acb13e29a03537d22b46.tar.gz
gcc-c35d187fc31fdd5836d1acb13e29a03537d22b46.tar.bz2
builtins.c (std_build_builtin_va_list): New.
* builtins.c (std_build_builtin_va_list): New. * expr.h (std_build_builtin_va_list): Declare. * defaults.h (BUILD_VA_LIST_TYPE): New. * system.h (BUILD_VA_LIST_TYPE): Poison. * target-def.h (TARGET_BUILD_BUILTIN_VA_LIST): New. * target.h (struct gcc_target): Add build_builtin_va_list. * tree.c (build_common_tree_nodes_2): Use it. * config/alpha/alpha-protos.h, config/alpha/alpha.c, config/alpha/alpha.h, config/alpha/unicosmk.h, config/d30v/d30v-protos.h, config/d30v/d30v.c, config/d30v/d30v.h, config/i386/i386-protos.h, config/i386/i386.c, config/i386/i386.h, config/i860/i860-protos.h, config/i860/i860.c, config/i860/i860.h, config/i960/i960-protos.h, config/i960/i960.c, config/i960/i960.h, config/mips/iris6.h, config/mips/mips-protos.h, config/mips/mips.c, config/mips/mips.h, config/rs6000/rs6000-protos.h, config/rs6000/rs6000.c, config/rs6000/rs6000.h, config/s390/s390-protos.h, config/s390/s390.c, config/s390/s390.h, config/sh/sh-protos.h, config/sh/sh.c, config/sh/sh.h, config/xtensa/xtensa-protos.h, config/xtensa/xtensa.c, config/xtensa/xtensa.h: Rename foo_build_va_list to foo_build_builtin_va_list; make it static. Define TARGET_BUILD_BUILTIN_VA_LIST. Remove BUILD_VA_LIST_TYPE. Update protos. * config/i386/i386.c (ix86_expand_carry_flag_compare): Make static. * config/iq2000/iq2000.h (BUILD_VA_LIST_TYPE): Remove. From-SVN: r73076
Diffstat (limited to 'gcc/config/d30v')
-rw-r--r--gcc/config/d30v/d30v-protos.h1
-rw-r--r--gcc/config/d30v/d30v.c8
-rw-r--r--gcc/config/d30v/d30v.h7
3 files changed, 6 insertions, 10 deletions
diff --git a/gcc/config/d30v/d30v-protos.h b/gcc/config/d30v/d30v-protos.h
index 7ce90af..cd5be23 100644
--- a/gcc/config/d30v/d30v-protos.h
+++ b/gcc/config/d30v/d30v-protos.h
@@ -103,7 +103,6 @@ extern rtx d30v_expand_builtin_saveregs PARAMS ((void));
extern void d30v_setup_incoming_varargs PARAMS ((CUMULATIVE_ARGS *,
enum machine_mode,
tree, int *, int));
-extern tree d30v_build_va_list PARAMS ((void));
#ifdef RTX_CODE
extern void d30v_expand_builtin_va_start PARAMS ((tree, rtx));
extern rtx d30v_expand_builtin_va_arg PARAMS ((tree, tree));
diff --git a/gcc/config/d30v/d30v.c b/gcc/config/d30v/d30v.c
index 4093ab2..aadba9d 100644
--- a/gcc/config/d30v/d30v.c
+++ b/gcc/config/d30v/d30v.c
@@ -55,6 +55,7 @@ static void d30v_output_function_epilogue PARAMS ((FILE *, HOST_WIDE_INT));
static int d30v_adjust_cost PARAMS ((rtx, rtx, rtx, int));
static int d30v_issue_rate PARAMS ((void));
static bool d30v_rtx_costs PARAMS ((rtx, int, int, int *));
+static tree d30v_build_builtin_va_list PARAMS ((void));
/* Define the information needed to generate branch and scc insns. This is
stored from the compare operation. */
@@ -105,6 +106,9 @@ enum reg_class reg_class_from_letter[256];
#undef TARGET_ADDRESS_COST
#define TARGET_ADDRESS_COST hook_int_rtx_0
+#undef TARGET_BUILD_BUILTIN_VA_LIST
+#define TARGET_BUILD_BUILTIN_VA_LIST d30v_build_builtin_va_list
+
struct gcc_target targetm = TARGET_INITIALIZER;
/* Sometimes certain combinations of command options do not make
@@ -2201,8 +2205,8 @@ d30v_setup_incoming_varargs (cum, mode, type, pretend_size, second_time)
/* Create the va_list data type. */
-tree
-d30v_build_va_list ()
+static tree
+d30v_build_builtin_va_list ()
{
tree f_arg_ptr, f_arg_num, record, type_decl;
tree int_type_node;
diff --git a/gcc/config/d30v/d30v.h b/gcc/config/d30v/d30v.h
index 59ba9b7..6c4c066 100644
--- a/gcc/config/d30v/d30v.h
+++ b/gcc/config/d30v/d30v.h
@@ -1407,13 +1407,6 @@ typedef struct machine_function GTY(())
d30v_setup_incoming_varargs (&ARGS_SO_FAR, (int) MODE, TYPE, \
&PRETEND_ARGS_SIZE, SECOND_TIME)
-/* Build up the stdarg/varargs va_list type tree, assinging it to NODE. If not
- defined, it is assumed that va_list is a void * pointer. */
-
-#define BUILD_VA_LIST_TYPE(VALIST) \
- (VALIST) = d30v_build_va_list ()
-
-
/* Implement the stdarg/varargs va_start macro. STDARG_P is nonzero if this
is stdarg.h instead of varargs.h. VALIST is the tree of the va_list
variable to initialize. NEXTARG is the machine independent notion of the