diff options
Diffstat (limited to 'gcc/config/m68hc11/m68hc11.c')
-rw-r--r-- | gcc/config/m68hc11/m68hc11.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/gcc/config/m68hc11/m68hc11.c b/gcc/config/m68hc11/m68hc11.c index 38690ee7319..c97ea89c447 100644 --- a/gcc/config/m68hc11/m68hc11.c +++ b/gcc/config/m68hc11/m68hc11.c @@ -1490,7 +1490,7 @@ m68hc11_init_cumulative_args (cum, fntype, libname) ret_type = TREE_TYPE (fntype); - if (ret_type && aggregate_value_p (ret_type)) + if (ret_type && aggregate_value_p (ret_type, fntype)) { cum->words = 1; cum->nregs = 1; @@ -1582,14 +1582,8 @@ m68hc11_function_arg_padding (mode, type) if (type != 0 && AGGREGATE_TYPE_P (type)) return upward; - /* This is the default definition. */ - return (!BYTES_BIG_ENDIAN - ? upward - : ((mode == BLKmode - ? (type && TREE_CODE (TYPE_SIZE (type)) == INTEGER_CST - && int_size_in_bytes (type) < - (PARM_BOUNDARY / BITS_PER_UNIT)) : GET_MODE_BITSIZE (mode) < - PARM_BOUNDARY) ? downward : upward)); + /* Fall back to the default. */ + return DEFAULT_FUNCTION_ARG_PADDING (mode, type); } |