From: Richard Henderson Date: Mon, 12 Jul 2004 22:16:09 +0000 (-0700) Subject: target.h (struct gcc_target): Move gimplify_va_arg_expr next to build_builtin_va_list. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=cdc3ddb81c47013a85e2243a1b1df2c99dd484b7;p=gcc.git target.h (struct gcc_target): Move gimplify_va_arg_expr next to build_builtin_va_list. * target.h (struct gcc_target): Move gimplify_va_arg_expr next to build_builtin_va_list. * target-def.h (TARGET_GIMPLIFY_VA_ARG_EXPR): Update to match. * builtins.c (gimplify_va_arg_expr): Likewise. * gimplify.c (copy_if_shared_r): Likewise. From-SVN: r84578 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 96b391fb8c8..54541ef236b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2004-07-12 Richard Henderson + + * target.h (struct gcc_target): Move gimplify_va_arg_expr + next to build_builtin_va_list. + * target-def.h (TARGET_GIMPLIFY_VA_ARG_EXPR): Update to match. + * builtins.c (gimplify_va_arg_expr): Likewise. + * gimplify.c (copy_if_shared_r): Likewise. + 2004-07-12 Alexandre Oliva * passes.c (rest_of_decl_compilation): Don't defer call of diff --git a/gcc/builtins.c b/gcc/builtins.c index 5b2a63ff942..f8a794db0a7 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -4642,11 +4642,11 @@ gimplify_va_arg_expr (tree *expr_p, tree *pre_p, tree *post_p) else gimplify_expr (&valist, pre_p, post_p, is_gimple_min_lval, fb_lvalue); - if (!targetm.calls.gimplify_va_arg_expr) + if (!targetm.gimplify_va_arg_expr) /* Once most targets are converted this should abort. */ return GS_ALL_DONE; - *expr_p = targetm.calls.gimplify_va_arg_expr (valist, type, pre_p, post_p); + *expr_p = targetm.gimplify_va_arg_expr (valist, type, pre_p, post_p); return GS_OK; } } diff --git a/gcc/gimplify.c b/gcc/gimplify.c index f2003b65628..770739af04a 100644 --- a/gcc/gimplify.c +++ b/gcc/gimplify.c @@ -667,7 +667,7 @@ copy_if_shared_r (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED, { TREE_VISITED (t) = 1; if (TREE_CODE (*tp) == VA_ARG_EXPR - && targetm.calls.gimplify_va_arg_expr == NULL) + && targetm.gimplify_va_arg_expr == NULL) { /* Mark any _DECL inside the operand as volatile to avoid the optimizers messing around with it. We have to do this diff --git a/gcc/target-def.h b/gcc/target-def.h index 50487f15933..14943da383f 100644 --- a/gcc/target-def.h +++ b/gcc/target-def.h @@ -376,7 +376,6 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. TARGET_STRICT_ARGUMENT_NAMING, \ TARGET_PRETEND_OUTGOING_VARARGS_NAMED, \ TARGET_SPLIT_COMPLEX_ARG, \ - TARGET_GIMPLIFY_VA_ARG_EXPR, \ } @@ -458,6 +457,7 @@ Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. TARGET_CC_MODES_COMPATIBLE, \ TARGET_MACHINE_DEPENDENT_REORG, \ TARGET_BUILD_BUILTIN_VA_LIST, \ + TARGET_GIMPLIFY_VA_ARG_EXPR, \ TARGET_GET_PCH_VALIDITY, \ TARGET_PCH_VALID_P, \ TARGET_DEFAULT_SHORT_ENUMS, \ diff --git a/gcc/target.h b/gcc/target.h index e2c24c67cbf..befe67bf906 100644 --- a/gcc/target.h +++ b/gcc/target.h @@ -414,6 +414,10 @@ struct gcc_target /* Create the __builtin_va_list type. */ tree (* build_builtin_va_list) (void); + /* Gimplifies a VA_ARG_EXPR. */ + tree (* gimplify_va_arg_expr) (tree valist, tree type, tree *pre_p, + tree *post_p); + /* Validity-checking routines for PCH files, target-specific. get_pch_validity returns a pointer to the data to be stored, and stores the size in its argument. pch_valid_p gets the same @@ -458,10 +462,6 @@ struct gcc_target /* Given a complex type T, return true if a parameter of type T should be passed as two scalars. */ bool (* split_complex_arg) (tree type); - - /* Gimplifies a VA_ARG_EXPR. */ - tree (* gimplify_va_arg_expr) (tree valist, tree type, tree *pre_p, - tree *post_p); } calls; /* Functions specific to the C++ frontend. */