From: Jason Merrill Date: Thu, 12 Sep 2002 13:53:39 +0000 (-0400) Subject: calls.c (store_one_arg): Use size_in_bytes to determine the amount of space to push. X-Git-Tag: releases/gcc-3.2.1~291 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=11805975034e1a54ab579416a3f0f71b1454a68c;p=thirdparty%2Fgcc.git 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: r57063 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 15802244ec9b..d1ca4b3180be 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2002-09-12 Jason Merrill + + * calls.c (store_one_arg): Use size_in_bytes to determine the + amount of space to push. + 2002-09-12 Jakub Jelinek * config/sparc/linux64.h (STARTFILE_SPEC32): Fix a typo. diff --git a/gcc/calls.c b/gcc/calls.c index 6cb2956d66cf..c0a73e7740e9 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -4491,7 +4491,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)