diff options
author | David Taylor <dtaylor@emc.com> | 2003-06-10 05:34:02 +0000 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 2003-06-09 22:34:02 -0700 |
commit | c566f9bd367cf07de6e9151dd5a5882241b367bf (patch) | |
tree | c02c1eb9f0fa9eb3819bc43d46f28bfbc3d7962d | |
parent | e489eeb9331efd07f584794f69db5ced3cc959da (diff) | |
download | gcc-c566f9bd367cf07de6e9151dd5a5882241b367bf.zip gcc-c566f9bd367cf07de6e9151dd5a5882241b367bf.tar.gz gcc-c566f9bd367cf07de6e9151dd5a5882241b367bf.tar.bz2 |
Patch from David Taylor.
* config/rs6000/rs6000.c (rs6000_va_start, rs6000_va_arg): Skip over
the f_res field.
From-SVN: r67697
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 10 |
2 files changed, 11 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5f5031a..43d458d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2003-06-09 David Taylor <dtaylor@emc.com> + + * config/rs6000/rs6000.c (rs6000_va_start, rs6000_va_arg): Skip over + the f_res field. + 2003-06-09 Nathanael Nerode <neroden@gcc.gnu.org> * configure.in: Remove references to host_truncate_target. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index c9b5849..6a9c436 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -4231,7 +4231,7 @@ rs6000_va_start (valist, nextarg) rtx nextarg; { HOST_WIDE_INT words, n_gpr, n_fpr; - tree f_gpr, f_fpr, f_ovf, f_sav; + tree f_gpr, f_fpr, f_res, f_ovf, f_sav; tree gpr, fpr, ovf, sav, t; /* Only SVR4 needs something special. */ @@ -4243,7 +4243,8 @@ rs6000_va_start (valist, nextarg) f_gpr = TYPE_FIELDS (TREE_TYPE (va_list_type_node)); f_fpr = TREE_CHAIN (f_gpr); - f_ovf = TREE_CHAIN (f_fpr); + f_res = TREE_CHAIN (f_fpr); + f_ovf = TREE_CHAIN (f_res); f_sav = TREE_CHAIN (f_ovf); valist = build1 (INDIRECT_REF, TREE_TYPE (TREE_TYPE (valist)), valist); @@ -4294,7 +4295,7 @@ rtx rs6000_va_arg (valist, type) tree valist, type; { - tree f_gpr, f_fpr, f_ovf, f_sav; + tree f_gpr, f_fpr, f_res, f_ovf, f_sav; tree gpr, fpr, ovf, sav, reg, t, u; int indirect_p, size, rsize, n_reg, sav_ofs, sav_scale; rtx lab_false, lab_over, addr_rtx, r; @@ -4325,7 +4326,8 @@ rs6000_va_arg (valist, type) f_gpr = TYPE_FIELDS (TREE_TYPE (va_list_type_node)); f_fpr = TREE_CHAIN (f_gpr); - f_ovf = TREE_CHAIN (f_fpr); + f_res = TREE_CHAIN (f_fpr); + f_ovf = TREE_CHAIN (f_res); f_sav = TREE_CHAIN (f_ovf); valist = build1 (INDIRECT_REF, TREE_TYPE (TREE_TYPE (valist)), valist); |