diff options
author | uweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-07 16:02:30 +0000 |
---|---|---|
committer | uweigand <uweigand@138bc75d-0d04-0410-961f-82ee72b054a4> | 2009-03-07 16:02:30 +0000 |
commit | c9b50df73a654ecde5ff35fc2798d8862b350226 (patch) | |
tree | d9b4cde82193c8beaf6b83e9cd810d0370752e67 /gcc/except.c | |
parent | 7be6ccf46baec555f54275a8576536e8b2ddb5e2 (diff) | |
download | gcc-c9b50df73a654ecde5ff35fc2798d8862b350226.tar.gz |
PR middle-end/38028
* function.c (assign_parm_setup_stack): Use STACK_SLOT_ALIGNMENT to
determine alignment passed to assign_stack_local.
(assign_parms_unsplit_complex): Likewise.
* except.c (sjlj_build_landing_pads): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@144696 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/except.c')
-rw-r--r-- | gcc/except.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/gcc/except.c b/gcc/except.c index c762edc022e..2913fc8f31f 100644 --- a/gcc/except.c +++ b/gcc/except.c @@ -2017,11 +2017,13 @@ sjlj_build_landing_pads (void) if (sjlj_find_directly_reachable_regions (lp_info)) { rtx dispatch_label = gen_label_rtx (); - + int align = STACK_SLOT_ALIGNMENT (sjlj_fc_type_node, + TYPE_MODE (sjlj_fc_type_node), + TYPE_ALIGN (sjlj_fc_type_node)); crtl->eh.sjlj_fc = assign_stack_local (TYPE_MODE (sjlj_fc_type_node), int_size_in_bytes (sjlj_fc_type_node), - TYPE_ALIGN (sjlj_fc_type_node)); + align); sjlj_assign_call_site_values (dispatch_label, lp_info); sjlj_mark_call_sites (lp_info); |