2018-01-16 John David Anglin <danglin@gcc.gnu.org>
+ * config/pa/som.h (ASM_DECLARE_FUNCTION_NAME): Cleanup type and mode
+ variables.
+
* config/pa/pa.c (pa_function_arg_size): Apply CEIL to GET_MODE_SIZE
return value.
for (parm = DECL_ARGUMENTS (DECL), i = 0; parm && i < 4; \
parm = DECL_CHAIN (parm)) \
{ \
- if (TYPE_MODE (DECL_ARG_TYPE (parm)) == SFmode \
- && ! TARGET_SOFT_FLOAT) \
+ tree type = DECL_ARG_TYPE (parm); \
+ machine_mode mode = TYPE_MODE (type); \
+ if (mode == SFmode && ! TARGET_SOFT_FLOAT) \
fprintf (FILE, ",ARGW%d=FR", i++); \
- else if (TYPE_MODE (DECL_ARG_TYPE (parm)) == DFmode \
- && ! TARGET_SOFT_FLOAT) \
+ else if (mode == DFmode && ! TARGET_SOFT_FLOAT) \
{ \
if (i <= 2) \
{ \
} \
else \
{ \
- int arg_size = \
- pa_function_arg_size (TYPE_MODE (DECL_ARG_TYPE (parm)),\
- DECL_ARG_TYPE (parm)); \
+ int arg_size = pa_function_arg_size (mode, type); \
/* Passing structs by invisible reference uses \
one general register. */ \
- if (arg_size > 2 \
- || TREE_ADDRESSABLE (DECL_ARG_TYPE (parm))) \
+ if (arg_size > 2 || TREE_ADDRESSABLE (type)) \
arg_size = 1; \
if (arg_size == 2 && i <= 2) \
{ \