diff options
author | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-10 05:34:02 +0000 |
---|---|---|
committer | wilson <wilson@138bc75d-0d04-0410-961f-82ee72b054a4> | 2003-06-10 05:34:02 +0000 |
commit | c6e9edd10e729bfb54bc3e1e6059a054d71b11b6 (patch) | |
tree | c02c1eb9f0fa9eb3819bc43d46f28bfbc3d7962d | |
parent | 91a385a522a94154f9e0cd940c5937177737af02 (diff) | |
download | gcc-c6e9edd10e729bfb54bc3e1e6059a054d71b11b6.tar.gz |
Patch from David Taylor.
* config/rs6000/rs6000.c (rs6000_va_start, rs6000_va_arg): Skip over
the f_res field.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@67697 138bc75d-0d04-0410-961f-82ee72b054a4
-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 5f5031a23cc..43d458d0963 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 c9b5849737f..6a9c4369508 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); |