diff options
author | Richard Henderson <rth@redhat.com> | 2004-07-13 01:43:41 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2004-07-13 01:43:41 -0700 |
commit | af064de51e5c824f1afb56bbc5bbf4b138c4e483 (patch) | |
tree | d9a896211b7b86323ca0988aebcee6681c40a375 /gcc/config/pa/pa.c | |
parent | 0976078c73f58e7350fcc0516618fdd7737c9696 (diff) | |
download | gcc-af064de51e5c824f1afb56bbc5bbf4b138c4e483.zip gcc-af064de51e5c824f1afb56bbc5bbf4b138c4e483.tar.gz gcc-af064de51e5c824f1afb56bbc5bbf4b138c4e483.tar.bz2 |
builtins.c (std_gimplify_va_arg_expr): Handle types passed by reference.
* builtins.c (std_gimplify_va_arg_expr): Handle types passed
by reference.
(ind_gimplify_va_arg_expr): Remove.
* tree.h (ind_gimplify_va_arg_expr): Remove.
* config/pa/pa.c (hppa_gimplify_va_arg_expr): Don't use it.
* config/mmix/mmix.c (mmix_function_arg_pass_by_reference): Allow
argsp to be null.
* config/arc/arc.c (arc_gimplify_va_arg_expr): Remove.
(TARGET_GIMPLIFY_VA_ARG_EXPR): Remove.
* config/cris/cris.c, config/fr30/fr30.c, config/frv/frv.c,
config/iq2000/iq2000.c, config/m32r/m32r.c, config/mmix/mmix.c,
config/mn10300/mn10300.c, config/v850/v850.c: Similarly.
From-SVN: r84608
Diffstat (limited to 'gcc/config/pa/pa.c')
-rw-r--r-- | gcc/config/pa/pa.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/gcc/config/pa/pa.c b/gcc/config/pa/pa.c index bbc27bd..723fbec 100644 --- a/gcc/config/pa/pa.c +++ b/gcc/config/pa/pa.c @@ -5956,18 +5956,10 @@ hppa_va_start (tree valist, rtx nextarg) static tree hppa_gimplify_va_arg_expr (tree valist, tree type, tree *pre_p, tree *post_p) { - bool indirect; - - indirect = FUNCTION_ARG_PASS_BY_REFERENCE (dummy, TYPE_MODE (type), type, 0); - if (TARGET_64BIT) { /* Args grow upward. We can use the generic routines. */ - - if (indirect) - return ind_gimplify_va_arg_expr (valist, type, pre_p, post_p); - else - return std_gimplify_va_arg_expr (valist, type, pre_p, post_p); + return std_gimplify_va_arg_expr (valist, type, pre_p, post_p); } else /* !TARGET_64BIT */ { @@ -5975,7 +5967,9 @@ hppa_gimplify_va_arg_expr (tree valist, tree type, tree *pre_p, tree *post_p) tree valist_type; tree t, u; unsigned int size, ofs; + bool indirect; + indirect = pass_by_reference (NULL, TYPE_MODE (type), type, 0); if (indirect) { type = ptr; |