aboutsummaryrefslogtreecommitdiff
path: root/gcc/function.h
diff options
context:
space:
mode:
authorRichard Henderson <rth@redhat.com>2012-08-01 13:41:16 -0700
committerRichard Henderson <rth@gcc.gnu.org>2012-08-01 13:41:16 -0700
commit70ce4a25c465584cee191674cefe7b00aa47def4 (patch)
tree040c558b53700de0429c84a129ccd952f1ec8dfb /gcc/function.h
parent91f8035e9b79eef334ef701af7bb05ff9b5780be (diff)
downloadgcc-70ce4a25c465584cee191674cefe7b00aa47def4.zip
gcc-70ce4a25c465584cee191674cefe7b00aa47def4.tar.gz
gcc-70ce4a25c465584cee191674cefe7b00aa47def4.tar.bz2
re PR middle-end/34548 (GCC generates too many alignment adds for alloca)
PR 34548 * function.h (struct rtl_data): Add max_dynamic_stack_alignment. * cfgexpand.c (gimple_expand_cfg): Initialise it. * explow.c (allocate_dynamic_stack_space): Set it. Simplify alignment requirements given the known alignment of dynamic_offset. * function.c (instantiate_virtual_regs): Align dtnamic_offset. From-SVN: r190051
Diffstat (limited to 'gcc/function.h')
-rw-r--r--gcc/function.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/gcc/function.h b/gcc/function.h
index 3d3313f..ed6fcb1 100644
--- a/gcc/function.h
+++ b/gcc/function.h
@@ -347,6 +347,10 @@ struct GTY(()) rtl_data {
local stack. */
unsigned int stack_alignment_estimated;
+ /* The (capped) maximum alignment of dynamic stack space, and thus the
+ required alignment of STACK_DYNAMIC_OFFSET. */
+ unsigned int max_dynamic_stack_alignment;
+
/* For reorg. */
/* If some insns can be deferred to the delay slots of the epilogue, the