On Tue, Jul 15, 2014 at 11:23 AM, Ulrich Weigand <uweig...@de.ibm.com> wrote: > Richard Biener wrote: >> On Mon, Jul 14, 2014 at 8:55 PM, Ulrich Weigand <uweig...@de.ibm.com> wrote: >> > Hello, >> > >> > this is an attempt to update the prior patch: >> > https://gcc.gnu.org/ml/gcc-patches/2014-07/msg00635.html >> > to add a -Wpsabi note as discussed. >> > >> > However, this is causing a bit of difficulties. First of all, the warning >> > triggers in a larger number of tests -- which was probably to be expected >> > since a number of tests in the suite explicitly work on GCC vectors defined >> > using various vector_size values, and any size except 16 will result in the >> > warning. Note that the warning gets issued at the site of definition of >> > the structure type -- it does not have to be used in a function call. >> > >> > More problematic is that this new warning causes four tests to fail >> > (it's actually 38 new FAILS since each of the tests fails in multiple >> > optimization levels): >> > >> > FAIL: gcc.c-torture/execute/20050316-1.c compilation >> > gcc.c-torture/execute/20050316-1.c:53:9: note: the layout of aggregates >> > containing vectors with 8-byte alignment has changed in GCC 4.10 >> > FAIL: gcc.c-torture/execute/20050316-3.c compilation >> > gcc.c-torture/execute/20050316-3.c:26:9: note: the layout of aggregates >> > containing vectors with 8-byte alignment has changed in GCC 4.10 >> > FAIL: gcc.c-torture/execute/20050604-1.c compilation >> > gcc.c-torture/execute/20050604-1.c:12:1: note: the layout of aggregates >> > containing vectors with 8-byte alignment has changed in GCC 4.10 >> > FAIL: gcc.c-torture/execute/pr23135.c compilation >> > gcc.c-torture/execute/pr23135.c:20:1: note: the layout of aggregates >> > containing vectors with 8-byte alignment has changed in GCC 4.10 >> > >> > Unfortunately, while most of the tests in the suite use the dg-test >> > framework which ignores "note" messages, the gcc.c-torture/execute >> > tests still use the old "torture" test framework, which does *not*. >> > (Also, in the old framework you cannot even add dg-... commands to >> > ignore those messages for a certain test, or add a -Wno-psabi option.) >> > >> > Therefore, I'm not proposing to commit this patch as-is, but would >> > like to ask for feedback on how to best proceed with this. >> > >> > One option might be to move the affected tests to the dg-test framework. >> > Or else we might decide we don't actually need a warning for this change, >> > since it only affects GCC synthetic vectors, where we might not have made >> > strict ABI guarantees anyway ... >> > >> > Thoughts? >> >> cat gcc/testsuite/gcc.c-torture/execute/pr38151.x >> set additional_flags "-Wno-psabi" >> return 0 > > Ah, I had forgotten about the .x files. Thanks! > > Here's a version with the -Wno-psabi added to the .x files. This now > passes regression testing. > > OK for mainline? > > Bye, > Ulrich > > > gcc/ChangeLog: > > * config/rs6000/rs6000-protos.h (rs6000_special_adjust_field_align_p): > Add prototype. > * config/rs6000/rs6000.c (rs6000_special_adjust_field_align_p): New > function. > * config/rs6000/sysv4.h (ADJUST_FIELD_ALIGN): Call it. > * config/rs6000/linux64.h (ADJUST_FIELD_ALIGN): Likewise. > * config/rs6000/freebsd64.h (ADJUST_FIELD_ALIGN): Likewise. > > gcc/testsuite/ChangeLog: > > * gcc.target/powerpc/ppc64-abi-warn-3.c: New test. > > * gcc.c-torture/execute/20050316-1.x: Add -Wno-psabi. > * gcc.c-torture/execute/20050604-1.x: Add -Wno-psabi. > * gcc.c-torture/execute/20050316-3.x: New file. Add -Wno-psabi. > * gcc.c-torture/execute/pr23135.x: Likewise.
This patch is okay. Thanks, David