diff options
author | Andreas Krebbel <krebbel@linux.vnet.ibm.com> | 2016-08-24 10:56:37 +0000 |
---|---|---|
committer | Andreas Krebbel <krebbel@gcc.gnu.org> | 2016-08-24 10:56:37 +0000 |
commit | b9553e20ad92d1c29416d72061816712b7bea39d (patch) | |
tree | 2e11fdf0443fbb511d7ed3a149f4acbf9633d951 /gcc | |
parent | 0630b8ec3d991a3a7bbd1e041a167a1424c1d388 (diff) | |
download | gcc-b9553e20ad92d1c29416d72061816712b7bea39d.zip gcc-b9553e20ad92d1c29416d72061816712b7bea39d.tar.gz gcc-b9553e20ad92d1c29416d72061816712b7bea39d.tar.bz2 |
Revert "Drop excess size used for run time allocated stack variables."
This patch caused a bootstrap failure on AIX.
2016-08-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com>
Revert
2016-08-23 Dominik Vogt <vogt@linux.vnet.ibm.com>
* explow.c (get_dynamic_stack_size): Take known alignment of stack
pointer + STACK_DYNAMIC_OFFSET into account when calculating the
size needed.
From-SVN: r239735
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/explow.c | 12 |
2 files changed, 12 insertions, 9 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8d104ec..66ec428 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2016-08-24 Andreas Krebbel <krebbel@linux.vnet.ibm.com> + + Revert + 2016-08-23 Dominik Vogt <vogt@linux.vnet.ibm.com> + + * explow.c (get_dynamic_stack_size): Take known alignment of stack + pointer + STACK_DYNAMIC_OFFSET into account when calculating the size + needed. + 2016-08-24 Thomas Preud'homme <thomas.preudhomme@arm.com> * doc/fragments.texi (MULTILIB_REUSE): Mention that only options in diff --git a/gcc/explow.c b/gcc/explow.c index f97a214..b14291d 100644 --- a/gcc/explow.c +++ b/gcc/explow.c @@ -1224,15 +1224,9 @@ get_dynamic_stack_size (rtx *psize, unsigned size_align, example), so we must preventively align the value. We leave space in SIZE for the hole that might result from the alignment operation. */ - unsigned known_align = REGNO_POINTER_ALIGN (VIRTUAL_STACK_DYNAMIC_REGNUM); - if (known_align == 0) - known_align = BITS_PER_UNIT; - if (required_align > known_align) - { - extra = (required_align - known_align) / BITS_PER_UNIT; - size = plus_constant (Pmode, size, extra); - size = force_operand (size, NULL_RTX); - } + extra = (required_align - BITS_PER_UNIT) / BITS_PER_UNIT; + size = plus_constant (Pmode, size, extra); + size = force_operand (size, NULL_RTX); if (flag_stack_usage_info && pstack_usage_size) *pstack_usage_size += extra; |