https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83858

--- Comment #4 from rsandifo at gcc dot gnu.org <rsandifo at gcc dot gnu.org> 
---
Author: rsandifo
Date: Tue Jan 16 14:47:49 2018
New Revision: 256744

URL: https://gcc.gnu.org/viewcvs?rev=256744&root=gcc&view=rev
Log:
Move pa.h FUNCTION_ARG_SIZE to pa.c (PR83858)

The port-local FUNCTION_ARG_SIZE:

  ((((MODE) != BLKmode \
     ? (HOST_WIDE_INT) GET_MODE_SIZE (MODE) \
     : int_size_in_bytes (TYPE)) + UNITS_PER_WORD - 1) / UNITS_PER_WORD)

is used by code in pa.c and by ASM_DECLARE_FUNCTION_NAME in som.h.
Treating GET_MODE_SIZE as a constant is OK for the former but not
the latter, which is used in target-independent code.  This caused
a build failure on hppa2.0w-hp-hpux11.11.

2018-01-16  Richard Sandiford  <richard.sandif...@linaro.org>

gcc/
        PR target/83858
        * config/pa/pa.h (FUNCTION_ARG_SIZE): Delete.
        * config/pa/pa-protos.h (pa_function_arg_size): Declare.
        * config/pa/som.h (ASM_DECLARE_FUNCTION_NAME): Use
        pa_function_arg_size instead of FUNCTION_ARG_SIZE.
        * config/pa/pa.c (pa_function_arg_advance): Likewise.
        (pa_function_arg, pa_arg_partial_bytes): Likewise.
        (pa_function_arg_size): New function.

Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/pa/pa-protos.h
    trunk/gcc/config/pa/pa.c
    trunk/gcc/config/pa/pa.h
    trunk/gcc/config/pa/som.h

Reply via email to