aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2004-09-08 23:19:58 +0000
committerAlan Modra <amodra@gcc.gnu.org>2004-09-09 08:49:58 +0930
commit640450295efd52c5ed8a0868e14866c1a269efb7 (patch)
tree3d654a20894f4652041e9a612bdd924f2434c280 /gcc
parent626ff3dea737de35b6865d637d9de731e6185b98 (diff)
downloadgcc-640450295efd52c5ed8a0868e14866c1a269efb7.zip
gcc-640450295efd52c5ed8a0868e14866c1a269efb7.tar.gz
gcc-640450295efd52c5ed8a0868e14866c1a269efb7.tar.bz2
rs6000.c (rs6000_stack_info): Correct alignment of save_size.
* config/rs6000/rs6000.c (rs6000_stack_info): Correct alignment of save_size. From-SVN: r87205
Diffstat (limited to 'gcc')
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/rs6000/rs6000.c5
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 49c2939..c61f9b1 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2004-09-09 Alan Modra <amodra@bigpond.net.au>
+
+ * config/rs6000/rs6000.c (rs6000_stack_info): Correct alignment of
+ save_size.
+
2004-09-08 David Edelsohn <edelsohn@gnu.org>
* config/rs6000/power4.md (power4-lmul): du4 feeds iu1.
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 1881fc1..2dc1f77 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -11728,6 +11728,7 @@ rs6000_stack_info (void)
rs6000_stack_t *info_ptr = &info;
int reg_size = TARGET_32BIT ? 4 : 8;
int ehrd_size;
+ int save_align;
HOST_WIDE_INT non_fixed_size;
/* Zero all fields portably. */
@@ -11947,6 +11948,7 @@ rs6000_stack_info (void)
break;
}
+ save_align = (TARGET_ALTIVEC_ABI || DEFAULT_ABI == ABI_DARWIN) ? 16 : 8;
info_ptr->save_size = RS6000_ALIGN (info_ptr->fp_size
+ info_ptr->gp_size
+ info_ptr->altivec_size
@@ -11958,8 +11960,7 @@ rs6000_stack_info (void)
+ info_ptr->lr_size
+ info_ptr->vrsave_size
+ info_ptr->toc_size,
- (TARGET_ALTIVEC_ABI || ABI_DARWIN)
- ? 16 : 8);
+ save_align);
non_fixed_size = (info_ptr->vars_size
+ info_ptr->parm_size