diff options
author | Jakub Jelinek <jakub@redhat.com> | 2010-09-20 22:37:10 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2010-09-20 22:37:10 +0200 |
commit | 0a7a6af67e6311a427052ef6fc21f6df72be7b51 (patch) | |
tree | 82e842427bc4d7ca35dfd84c249d21dd198008e6 /gcc | |
parent | 523e82a7a3204343688a56345ed5e99df777aea5 (diff) | |
download | gcc-0a7a6af67e6311a427052ef6fc21f6df72be7b51.zip gcc-0a7a6af67e6311a427052ef6fc21f6df72be7b51.tar.gz gcc-0a7a6af67e6311a427052ef6fc21f6df72be7b51.tar.bz2 |
re PR rtl-optimization/45678 (crash on vector code with -m32 -msse)
PR middle-end/45678
* cfgexpand.c (expand_one_stack_var_at): Use
crtl->max_used_stack_slot_alignment as max_align, instead
of maximum of that and PREFERRED_STACK_BOUNDARY.
Don't call update_stack_alignment.
From-SVN: r164454
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/cfgexpand.c | 4 |
2 files changed, 9 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index faf3d0b..5538b50 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,11 @@ +2010-09-20 Jakub Jelinek <jakub@redhat.com> + + PR middle-end/45678 + * cfgexpand.c (expand_one_stack_var_at): Use + crtl->max_used_stack_slot_alignment as max_align, instead + of maximum of that and PREFERRED_STACK_BOUNDARY. + Don't call update_stack_alignment. + 2010-09-20 Eric Botcazou <ebotcazou@adacore.com> * langhooks.h (struct lang_hooks_for_types): Remove hash_types field. diff --git a/gcc/cfgexpand.c b/gcc/cfgexpand.c index 1e67e77..f9d3fa6 100644 --- a/gcc/cfgexpand.c +++ b/gcc/cfgexpand.c @@ -738,12 +738,10 @@ expand_one_stack_var_at (tree decl, HOST_WIDE_INT offset) offset -= frame_phase; align = offset & -offset; align *= BITS_PER_UNIT; - max_align = MAX (crtl->max_used_stack_slot_alignment, - PREFERRED_STACK_BOUNDARY); + max_align = crtl->max_used_stack_slot_alignment; if (align == 0 || align > max_align) align = max_align; - update_stack_alignment (align); DECL_ALIGN (decl) = align; DECL_USER_ALIGN (decl) = 0; } |