aboutsummaryrefslogtreecommitdiff
path: root/gcc/function.c
diff options
context:
space:
mode:
authorUros Bizjak <ubizjak@gmail.com>2008-02-15 10:55:36 +0100
committerUros Bizjak <uros@gcc.gnu.org>2008-02-15 10:55:36 +0100
commit6f6b8f8142d2d6d0db596e21bc3ba30da9f90b2e (patch)
tree21f08bb68d0866d8d823ff4c9523a6c58effd23b /gcc/function.c
parent74cb1d8bfd6839f112540c02e48cfea699384522 (diff)
downloadgcc-6f6b8f8142d2d6d0db596e21bc3ba30da9f90b2e.zip
gcc-6f6b8f8142d2d6d0db596e21bc3ba30da9f90b2e.tar.gz
gcc-6f6b8f8142d2d6d0db596e21bc3ba30da9f90b2e.tar.bz2
re PR middle-end/34621 (gcc.c-torture/execute/va-arg-25.c:32: internal compiler error: in expand_call, at calls.c:2785)
PR middle-end/34621 * function.c (pad_to_arg_alignment): Remove test for STACK_BOUNDARY when calculating alignment_pad. From-SVN: r132336
Diffstat (limited to 'gcc/function.c')
-rw-r--r--gcc/function.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/function.c b/gcc/function.c
index d3fbd17..275b702 100644
--- a/gcc/function.c
+++ b/gcc/function.c
@@ -3450,7 +3450,7 @@ pad_to_arg_alignment (struct args_size *offset_ptr, int boundary,
sp_offset = 0;
#endif
- if (boundary > PARM_BOUNDARY && boundary > STACK_BOUNDARY)
+ if (boundary > PARM_BOUNDARY)
{
save_var = offset_ptr->var;
save_constant = offset_ptr->constant;
@@ -3476,7 +3476,7 @@ pad_to_arg_alignment (struct args_size *offset_ptr, int boundary,
offset_ptr->var = size_binop (MINUS_EXPR, rounded, sp_offset_tree);
/* ARGS_SIZE_TREE includes constant term. */
offset_ptr->constant = 0;
- if (boundary > PARM_BOUNDARY && boundary > STACK_BOUNDARY)
+ if (boundary > PARM_BOUNDARY)
alignment_pad->var = size_binop (MINUS_EXPR, offset_ptr->var,
save_var);
}
@@ -3488,7 +3488,7 @@ pad_to_arg_alignment (struct args_size *offset_ptr, int boundary,
#else
CEIL_ROUND (offset_ptr->constant + sp_offset, boundary_in_bytes);
#endif
- if (boundary > PARM_BOUNDARY && boundary > STACK_BOUNDARY)
+ if (boundary > PARM_BOUNDARY)
alignment_pad->constant = offset_ptr->constant - save_constant;
}
}