diff options
author | Richard Kenner <kenner@gcc.gnu.org> | 1993-03-23 20:20:32 -0500 |
---|---|---|
committer | Richard Kenner <kenner@gcc.gnu.org> | 1993-03-23 20:20:32 -0500 |
commit | 0cf91217da8a154f5df2273b5236d690e32366d0 (patch) | |
tree | 3a560a187497997ac38876c2393df2ce95e0863b /gcc | |
parent | 77e67eac60930cda48fcf7ceaa9dca6ebf69ae60 (diff) | |
download | gcc-0cf91217da8a154f5df2273b5236d690e32366d0.zip gcc-0cf91217da8a154f5df2273b5236d690e32366d0.tar.gz gcc-0cf91217da8a154f5df2273b5236d690e32366d0.tar.bz2 |
(store_one_arg): Use int_size_in_bytes and expr_size when appropriate
instead of size_in_bytes.
From-SVN: r3863
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/calls.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/gcc/calls.c b/gcc/calls.c index 009eda8..bd7b909 100644 --- a/gcc/calls.c +++ b/gcc/calls.c @@ -2794,12 +2794,11 @@ store_one_arg (arg, argblock, may_be_alloca, variable_size, fndecl, } else { - register tree size = size_in_bytes (TREE_TYPE (pval)); /* PUSH_ROUNDING has no effect on us, because emit_push_insn for BLKmode is careful to avoid it. */ - excess = (arg->size.constant - TREE_INT_CST_LOW (size) + excess = (arg->size.constant - int_size_in_bytes (TREE_TYPE (pval)) + partial * UNITS_PER_WORD); - size_rtx = expand_expr (size, NULL_RTX, VOIDmode, 0); + size_rtx = expr_size (TREE_TYPE (pval)); } emit_push_insn (arg->value, arg->mode, TREE_TYPE (pval), size_rtx, |