sh.c (sh_canonical_va_list_type): New.
authorKaz Kojima <kkojima@gcc.gnu.org>
Wed, 9 Jul 2008 10:58:13 +0000 (10:58 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Wed, 9 Jul 2008 10:58:13 +0000 (10:58 +0000)
* config/sh/sh.c (sh_canonical_va_list_type): New.
(TARGET_CANONICAL_VA_LIST_TYPE): Define.

From-SVN: r137656

gcc/ChangeLog
gcc/config/sh/sh.c

index 29576bbc7ad1b417cb352e6161d5f97066d2c623..c579c50da1d097d46fcd8c145fcc26ae8a5622d7 100644 (file)
@@ -1,3 +1,8 @@
+2008-07-09  Kaz Kojima  <kkojima@gcc.gnu.org>
+
+       * config/sh/sh.c (sh_canonical_va_list_type): New.
+       (TARGET_CANONICAL_VA_LIST_TYPE): Define.
+
 2008-07-09  Raksit Ashok <raksit@google.com>
 
        * doc/invoke.texi (Option Summary): Mention new option
index 380705104eea78feba52d784b7d1432362b538cb..e311362de6cf082420db826d17364c9e6869e554 100644 (file)
@@ -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