aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Elliston <bje@au.ibm.com>2004-10-20 22:57:05 +0000
committerBen Elliston <bje@gcc.gnu.org>2004-10-21 08:57:05 +1000
commit872a65b54c56b3d98a318a37823db3853722bac3 (patch)
tree55cd9aac0ec388069924a069a83cb4e8cfd43684
parentb3a450236a41f0b207e0e1bd93f15ecf15b3c5eb (diff)
downloadgcc-872a65b54c56b3d98a318a37823db3853722bac3.zip
gcc-872a65b54c56b3d98a318a37823db3853722bac3.tar.gz
gcc-872a65b54c56b3d98a318a37823db3853722bac3.tar.bz2
* config/rs6000/rs6000.c
(rs6000_va_start): Use build_va_arg_indirect_ref. (rs6000_gimplify_va_arg): Likewise. From-SVN: r89349
-rw-r--r--gcc/ChangeLog6
-rw-r--r--gcc/config/rs6000/rs6000.c8
2 files changed, 10 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 5ecd023..4c6280b 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-10-20 Ben Elliston <bje@au.ibm.com>
+
+ * config/rs6000/rs6000.c
+ (rs6000_va_start): Use build_va_arg_indirect_ref.
+ (rs6000_gimplify_va_arg): Likewise.
+
2004-10-20 Bryce McKinlay <mckinlay@redhat.com>
PR java/15575
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 3026e59..7d2d1d9 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -5519,7 +5519,7 @@ rs6000_va_start (tree valist, rtx nextarg)
f_ovf = TREE_CHAIN (f_res);
f_sav = TREE_CHAIN (f_ovf);
- valist = build1 (INDIRECT_REF, TREE_TYPE (TREE_TYPE (valist)), valist);
+ valist = build_va_arg_indirect_ref (valist);
gpr = build (COMPONENT_REF, TREE_TYPE (f_gpr), valist, f_gpr, NULL_TREE);
fpr = build (COMPONENT_REF, TREE_TYPE (f_fpr), valist, f_fpr, NULL_TREE);
ovf = build (COMPONENT_REF, TREE_TYPE (f_ovf), valist, f_ovf, NULL_TREE);
@@ -5578,7 +5578,7 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p)
if (pass_by_reference (NULL, TYPE_MODE (type), type, false))
{
t = rs6000_gimplify_va_arg (valist, ptrtype, pre_p, post_p);
- return build_fold_indirect_ref (t);
+ return build_va_arg_indirect_ref (t);
}
if (DEFAULT_ABI != ABI_V4)
@@ -5617,7 +5617,7 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p)
f_ovf = TREE_CHAIN (f_res);
f_sav = TREE_CHAIN (f_ovf);
- valist = build1 (INDIRECT_REF, TREE_TYPE (TREE_TYPE (valist)), valist);
+ valist = build_va_arg_indirect_ref (valist);
gpr = build (COMPONENT_REF, TREE_TYPE (f_gpr), valist, f_gpr, NULL_TREE);
fpr = build (COMPONENT_REF, TREE_TYPE (f_fpr), valist, f_fpr, NULL_TREE);
ovf = build (COMPONENT_REF, TREE_TYPE (f_ovf), valist, f_ovf, NULL_TREE);
@@ -5733,7 +5733,7 @@ rs6000_gimplify_va_arg (tree valist, tree type, tree *pre_p, tree *post_p)
}
addr = fold_convert (ptrtype, addr);
- return build_fold_indirect_ref (addr);
+ return build_va_arg_indirect_ref (addr);
}
/* Builtins. */