summaryrefslogtreecommitdiff
path: root/gcc/config
diff options
context:
space:
mode:
authorKaz Kojima <kkojima@gcc.gnu.org>2008-07-09 10:58:13 +0000
committerKaz Kojima <kkojima@gcc.gnu.org>2008-07-09 10:58:13 +0000
commit28f16d05a00d360b76f3c48ac739bcab22fb1418 (patch)
treeaae7c0570dd29bcd58ce3c63b412b1b33069d8d6 /gcc/config
parent1ebc7e681079e61300e75a5c0f3b2da335720cc7 (diff)
downloadgcc-28f16d05a00d360b76f3c48ac739bcab22fb1418.tar.gz
sh.c (sh_canonical_va_list_type): New.
* config/sh/sh.c (sh_canonical_va_list_type): New. (TARGET_CANONICAL_VA_LIST_TYPE): Define. From-SVN: r137656
Diffstat (limited to 'gcc/config')
-rw-r--r--gcc/config/sh/sh.c11
1 files changed, 11 insertions, 0 deletions
diff --git a/gcc/config/sh/sh.c b/gcc/config/sh/sh.c
index 380705104ee..e311362de6c 100644
--- a/gcc/config/sh/sh.c
+++ b/gcc/config/sh/sh.c
@@ -260,6 +260,7 @@ static void sh_setup_incoming_varargs (CUMULATIVE_ARGS *, enum machine_mode, tre
static bool sh_strict_argument_naming (CUMULATIVE_ARGS *);
static bool sh_pretend_outgoing_varargs_named (CUMULATIVE_ARGS *);
static tree sh_build_builtin_va_list (void);
+static tree sh_canonical_va_list_type (tree);
static void sh_va_start (tree, rtx);
static tree sh_gimplify_va_arg_expr (tree, tree, tree *, tree *);
static bool sh_pass_by_reference (CUMULATIVE_ARGS *, enum machine_mode,
@@ -441,6 +442,8 @@ static int sh2a_function_vector_p (tree);
#undef TARGET_BUILD_BUILTIN_VA_LIST
#define TARGET_BUILD_BUILTIN_VA_LIST sh_build_builtin_va_list
+#undef TARGET_CANONICAL_VA_LIST_TYPE
+#define TARGET_CANONICAL_VA_LIST_TYPE sh_canonical_va_list_type
#undef TARGET_EXPAND_BUILTIN_VA_START
#define TARGET_EXPAND_BUILTIN_VA_START sh_va_start
#undef TARGET_GIMPLIFY_VA_ARG_EXPR
@@ -7145,6 +7148,14 @@ sh_build_builtin_va_list (void)
return record;
}
+/* Return always va_list_type_node. */
+
+static tree
+sh_canonical_va_list_type (tree type ATTRIBUTE_UNUSED)
+{
+ return va_list_type_node;
+}
+
/* Implement `va_start' for varargs and stdarg. */
static void