From 28f16d05a00d360b76f3c48ac739bcab22fb1418 Mon Sep 17 00:00:00 2001 From: Kaz Kojima Date: Wed, 9 Jul 2008 10:58:13 +0000 Subject: [PATCH] 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 --- gcc/ChangeLog | 5 +++++ gcc/config/sh/sh.c | 11 +++++++++++ 2 files changed, 16 insertions(+) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 29576bbc7ad..c579c50da1d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2008-07-09 Kaz Kojima + + * config/sh/sh.c (sh_canonical_va_list_type): New. + (TARGET_CANONICAL_VA_LIST_TYPE): Define. + 2008-07-09 Raksit Ashok * doc/invoke.texi (Option Summary): Mention new option 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 -- 2.30.2