aboutsummaryrefslogtreecommitdiff
path: root/gcc/config/pa/pa.c
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2004-07-13 01:43:41 -0700
committerRichard Henderson <rth@gcc.gnu.org>2004-07-13 01:43:41 -0700
commitaf064de51e5c824f1afb56bbc5bbf4b138c4e483 (patch)
treed9a896211b7b86323ca0988aebcee6681c40a375 /gcc/config/pa/pa.c
parent0976078c73f58e7350fcc0516618fdd7737c9696 (diff)
downloadgcc-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.c12
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;