diff options
author | Jason Merrill <jason@redhat.com> | 2002-09-12 10:00:21 -0400 |
---|---|---|
committer | Jason Merrill <jason@gcc.gnu.org> | 2002-09-12 10:00:21 -0400 |
commit | db4c55f6934574f06f5c3c7af90c976453095501 (patch) | |
tree | 27d201d1be83cd8ba27ee7a791611ef89c4b1062 | |
parent | 13c0bc206158d370f4a9396c2970650575aa4acf (diff) | |
download | gcc-db4c55f6934574f06f5c3c7af90c976453095501.zip gcc-db4c55f6934574f06f5c3c7af90c976453095501.tar.gz gcc-db4c55f6934574f06f5c3c7af90c976453095501.tar.bz2 |
calls.c (store_one_arg): Use size_in_bytes to determine the amount of space to push.
* calls.c (store_one_arg): Use size_in_bytes to determine the
amount of space to push.
From-SVN: r57064
-rw-r--r-- | gcc/ChangeLog | 11 | ||||
-rw-r--r-- | gcc/calls.c | 3 |
2 files changed, 8 insertions, 6 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 22006f0..11d2c28 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-09-12 Jason Merrill <jason@redhat.com> + + * calls.c (store_one_arg): Use size_in_bytes to determine the + amount of space to push. + 2002-09-12 Jakub Jelinek <jakub@redhat.com> * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo. @@ -2720,12 +2725,8 @@ Sat Aug 10 19:59:43 CEST 2002 Jan Hubicka <jh@suse.cz> * testsuite/gcc.dg/tls/diag-3.c: New. -2002-08-06 Jason Merrill <jason@redhat.com> - - * c-common.c (c_expand_expr) [STMT_EXPR]: If the last expression is - a VAR_DECL with RTL that matches the target, just return that RTL. - 2002-08-06 Dale Johannesen <dalej@apple.com> + * c-common.c (fname_decl): Use line number 0 for __func__, to avoid confusing debuggers. diff --git a/gcc/calls.c b/gcc/calls.c index 2e23809..378c54f 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -4512,7 +4512,8 @@ store_one_arg (arg, argblock, flags, variable_size, reg_parm_stack_space) emit_push_insn for BLKmode is careful to avoid it. */ excess = (arg->size.constant - int_size_in_bytes (TREE_TYPE (pval)) + partial * UNITS_PER_WORD); - size_rtx = expr_size (pval); + size_rtx = expand_expr (size_in_bytes (TREE_TYPE (pval)), + NULL_RTX, TYPE_MODE (sizetype), 0); } if ((flags & ECF_SIBCALL) && GET_CODE (arg->value) == MEM) |