diff options
| author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-10 18:47:36 +0000 |
|---|---|---|
| committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-07-10 18:47:36 +0000 |
| commit | b8e8e485d37e2ea71ba892c4e94a09ae748502de (patch) | |
| tree | 72d5e9df6e1fad670ec1a43acd8622cb51fb195d | |
| parent | 6ada6abc57fc1a77de38156ff5d68101c8ac10bc (diff) | |
| download | ppe42-gcc-b8e8e485d37e2ea71ba892c4e94a09ae748502de.tar.gz ppe42-gcc-b8e8e485d37e2ea71ba892c4e94a09ae748502de.zip | |
* builtins.c (std_gimplify_va_arg_expr): Widen align/boundary
to HOST_WIDE_INT. Fold pad-args-down arithmetic.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@84469 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 5 | ||||
| -rw-r--r-- | gcc/builtins.c | 4 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 87c42b826e0..e6d9dd85dbc 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2004-07-10 Richard Henderson <rth@redhat.com> + + * builtins.c (std_gimplify_va_arg_expr): Widen align/boundary + to HOST_WIDE_INT. Fold pad-args-down arithmetic. + 2004-07-10 Jakub Jelinek <jakub@redhat.com> * expr.h (store_bit_field, extract_bit_field): Remove last argument. diff --git a/gcc/builtins.c b/gcc/builtins.c index 7c9334ba3fb..02fdc929b41 100644 --- a/gcc/builtins.c +++ b/gcc/builtins.c @@ -4474,7 +4474,7 @@ tree std_gimplify_va_arg_expr (tree valist, tree type, tree *pre_p, tree *post_p) { tree addr, t, type_size, rounded_size, valist_tmp; - unsigned int align, boundary; + unsigned HOST_WIDE_INT align, boundary; #ifdef ARGS_GROW_DOWNWARD /* All of the alignment and movement below is for args-grow-up machines. @@ -4520,7 +4520,7 @@ std_gimplify_va_arg_expr (tree valist, tree type, tree *pre_p, tree *post_p) t = fold (build3 (COND_EXPR, sizetype, t, size_zero_node, size_binop (MINUS_EXPR, rounded_size, type_size))); t = fold_convert (TREE_TYPE (addr), t); - addr = build2 (PLUS_EXPR, TREE_TYPE (addr), addr, t); + addr = fold (build2 (PLUS_EXPR, TREE_TYPE (addr), addr, t)); } /* Compute new value for AP. */ |

