diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-09 22:05:51 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-10-09 22:05:51 +0000 |
commit | 5be42b3963507aba2ab5946c590b70d9bd3a1e25 (patch) | |
tree | a90073debda145f6a7cc32fb368f7c0370185f15 /gcc/expr.h | |
parent | 23a9ff5e82f1ae63ed3b3950784659dccb37761c (diff) | |
download | gcc-5be42b3963507aba2ab5946c590b70d9bd3a1e25.tar.gz |
PR rtl-opt/33721
* explow.c (allocate_dynamic_stack_space): Add REQUIRED_ALIGN parm,
remove TARGET parm, convert KNOWN_ALIGN parm to SIZE_ALIGN. Honor
required_align, tidy the code a bit. Emit split_stack code in the
right place. Mark the return value with the alignment properly.
* expr.h (allocate_dynamic_stack_space): Update decl.
* builtins.c (expand_builtin_apply): Update call to
allocate_dynamic_stack_space.
(expand_builtin_alloca): Likewise. Remove TARGET parameter.
* calls.c (initialize_argument_information): Update call to
allocate_dynamic_stack_space.
(expand_call): Likewise.
* cfgexpand.c (get_decl_align_unit): Don't limit alignment.
Don't update_stack_alignment here.
(alloc_stack_frame_space): Make ALIGN unsigned.
(stack_var_cmp): Sort by alignment too.
(partition_stack_vars): Don't merge large and small alignment vars.
(expand_one_stack_var_at): Add BASE and BASE_ALIGN parameters.
Take care when BASE is not virtual_stack_vars_rtx.
(expand_stack_vars): Allocate dynamic stack space for large
alignment variables.
(expand_one_stack_var): Update all to expand_one_stack_var_at.
(defer_stack_allocation): True for large alignment vars.
(update_stack_alignment): Merge into ...
(expand_one_var): ... here.
(gimple_expand_cfg): Place code from expand_stack_vars.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@165240 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/expr.h')
-rw-r--r-- | gcc/expr.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/expr.h b/gcc/expr.h index 8631ea70c3a..3d4ad236981 100644 --- a/gcc/expr.h +++ b/gcc/expr.h @@ -642,7 +642,7 @@ extern void emit_stack_restore (enum save_level, rtx, rtx); extern void update_nonlocal_goto_save_area (void); /* Allocate some space on the stack dynamically and return its address. */ -extern rtx allocate_dynamic_stack_space (rtx, rtx, int, bool); +extern rtx allocate_dynamic_stack_space (rtx, unsigned, unsigned, bool); /* Emit one stack probe at ADDRESS, an address within the stack. */ extern void emit_stack_probe (rtx); |