From: John David Anglin Date: Mon, 6 Mar 2017 22:55:33 +0000 (+0000) Subject: PR target 77850 X-Git-Tag: releases/gcc-5.5.0~485 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=db4fdc0dc04cd34ada021eab06a89826f39bd2ee;p=thirdparty%2Fgcc.git PR target 77850 PR target 77850 * config/pa/pa-64.h (PAD_VARARGS_DOWN): Don't pad down complex and vector types. From-SVN: r245934 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 40ed48354211..a20f3d7f8026 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-03-06 John David Anglin + + PR target 77850 + * config/pa/pa-64.h (PAD_VARARGS_DOWN): Don't pad down complex and + vector types. + 2017-03-02 Uros Bizjak PR target/79514 diff --git a/gcc/config/pa/pa-64.h b/gcc/config/pa/pa-64.h index dec8688afa62..13771f6b4619 100644 --- a/gcc/config/pa/pa-64.h +++ b/gcc/config/pa/pa-64.h @@ -83,7 +83,10 @@ along with GCC; see the file COPYING3. If not see arguments are padded down when BYTES_BIG_ENDIAN is true. We don't want aggregates padded down. */ -#define PAD_VARARGS_DOWN (!AGGREGATE_TYPE_P (type)) +#define PAD_VARARGS_DOWN \ + (!AGGREGATE_TYPE_P (type) \ + && TREE_CODE (type) != COMPLEX_TYPE \ + && TREE_CODE (type) != VECTOR_TYPE) /* In the PA architecture, it is not possible to directly move data between GENERAL_REGS and FP_REGS. On the 32-bit port, we use the