rs6000.c (rs6000_function_arg_boundary): In the AIX and ELFv2 ABI...
authorUlrich Weigand <uweigand@de.ibm.com>
Thu, 24 Jul 2014 17:12:45 +0000 (17:12 +0000)
committerUlrich Weigand <uweigand@gcc.gnu.org>
Thu, 24 Jul 2014 17:12:45 +0000 (17:12 +0000)
commite1089c7a5caebffb0986d87435d2bfaf6bb55d89
treee86a439386e107b23e13426ef34eeb7a7aa96180
parentff46d64d829740dee098b0181d60db1231d90c09
rs6000.c (rs6000_function_arg_boundary): In the AIX and ELFv2 ABI...

gcc/

* config/rs6000/rs6000.c (rs6000_function_arg_boundary): In the AIX
and ELFv2 ABI, do not use the "mode == BLKmode" check to test for
aggregate types.  Instead, *all* aggregate types, except for single-
element or homogeneous float/vector aggregates, are quadword-aligned
if required by their type alignment.  Issue -Wpsabi note when a type
is now treated differently than before.

gcc/testsuite/

* gcc.target/powerpc/ppc64-abi-warn-2.c: New test.

From-SVN: r213016
gcc/ChangeLog
gcc/config/rs6000/rs6000.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/powerpc/ppc64-abi-warn-2.c [new file with mode: 0644]