Patch from David Taylor.
authorDavid Taylor <dtaylor@emc.com>
Tue, 10 Jun 2003 05:34:02 +0000 (05:34 +0000)
committerJim Wilson <wilson@gcc.gnu.org>
Tue, 10 Jun 2003 05:34:02 +0000 (22:34 -0700)
* config/rs6000/rs6000.c (rs6000_va_start, rs6000_va_arg):  Skip over
the f_res field.

From-SVN: r67697

gcc/ChangeLog
gcc/config/rs6000/rs6000.c

index 5f5031a..43d458d 100644 (file)
@@ -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.
index c9b5849..6a9c436 100644 (file)
@@ -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);