... plus some cleanups due to unused macro argument. No functional changes.
2015-10-20 Uros Bizjak <ubiz...@gmail.com> * config/alpha/alpha.h (HARD_REGNO_NREGS): Use CEIL macro. (ALPHA_ARG_SIZE): Ditto. Remove unused NAMED argument. * config/alpha/alpha.c (alpha_function_arg_advance): Update ALPHA_ARG_SIZE usage. (alpha_arg_partial_bytes): Ditto. Bootstrapped and regression tested on alpha-linux-gnu, committed to mainline SVN. Uros.
Index: config/alpha/alpha.c =================================================================== --- config/alpha/alpha.c (revision 229082) +++ config/alpha/alpha.c (working copy) @@ -5613,7 +5613,7 @@ alpha_function_arg_advance (cumulative_args_t cum_ { CUMULATIVE_ARGS *cum = get_cumulative_args (cum_v); bool onstack = targetm.calls.must_pass_in_stack (mode, type); - int increment = onstack ? 6 : ALPHA_ARG_SIZE (mode, type, named); + int increment = onstack ? 6 : ALPHA_ARG_SIZE (mode, type); #if TARGET_ABI_OSF *cum += increment; @@ -5635,10 +5635,10 @@ alpha_arg_partial_bytes (cumulative_args_t cum_v, #if TARGET_ABI_OPEN_VMS if (cum->num_args < 6 - && 6 < cum->num_args + ALPHA_ARG_SIZE (mode, type, named)) + && 6 < cum->num_args + ALPHA_ARG_SIZE (mode, type)) words = 6 - cum->num_args; #elif TARGET_ABI_OSF - if (*cum < 6 && 6 < *cum + ALPHA_ARG_SIZE (mode, type, named)) + if (*cum < 6 && 6 < *cum + ALPHA_ARG_SIZE (mode, type)) words = 6 - *cum; #else #error Unhandled ABI Index: config/alpha/alpha.h =================================================================== --- config/alpha/alpha.h (revision 229082) +++ config/alpha/alpha.h (working copy) @@ -383,7 +383,7 @@ extern enum alpha_fp_trap_mode alpha_fptm; but can be less for certain modes in special long registers. */ #define HARD_REGNO_NREGS(REGNO, MODE) \ - ((GET_MODE_SIZE (MODE) + UNITS_PER_WORD - 1) / UNITS_PER_WORD) + CEIL (GET_MODE_SIZE (MODE), UNITS_PER_WORD) /* Value is 1 if hard register REGNO can hold a value of machine-mode MODE. On Alpha, the integer registers can hold any mode. The floating-point @@ -674,13 +674,15 @@ extern int alpha_memory_latency; #define INIT_CUMULATIVE_ARGS(CUM, FNTYPE, LIBNAME, INDIRECT, N_NAMED_ARGS) \ (CUM) = 0 -/* Define intermediate macro to compute the size (in registers) of an argument - for the Alpha. */ +/* Define intermediate macro to compute + the size (in registers) of an argument. */ -#define ALPHA_ARG_SIZE(MODE, TYPE, NAMED) \ +#define ALPHA_ARG_SIZE(MODE, TYPE) \ ((MODE) == TFmode || (MODE) == TCmode ? 1 \ - : (((MODE) == BLKmode ? int_size_in_bytes (TYPE) : GET_MODE_SIZE (MODE)) \ - + (UNITS_PER_WORD - 1)) / UNITS_PER_WORD) + : CEIL (((MODE) == BLKmode \ + ? int_size_in_bytes (TYPE) \ + : GET_MODE_SIZE (MODE)), \ + UNITS_PER_WORD)) /* Make (or fake) .linkage entry for function call. IS_LOCAL is 0 if name is used in call, 1 if name is used in definition. */