Patch updated to remove -mstructure-size-boundary from tests based on comments from Richard. Outdated comments also removed. Okay for trunk? 2017-08-01 Michael Collison * testsuite/g++.dg/ext/packed8.C: Remove -mstructure-size boundary option and fix comment. * testsuite/g++.dg/init/array16.C: Remove -mstructure-size boundary option and fix comment. * testsuite/g++.dg/other/crash-4.C: Remove -mstructure-size boundary option and fix comment. * testsuite/gcc.dg/builtin-stringop-chk-1.c: Remove -mstructure-size boundary option. -----Original Message----- From: Richard Earnshaw (lists) [mailto:Richard.Earnshaw@arm.com] Sent: Wednesday, August 9, 2017 1:21 AM To: Michael Collison ; gcc-patches@gcc.gnu.org Cc: nd Subject: Re: [PATCH][Arm] Test suite failures resulting from deprecation of -mstructure-size-boundary On 09/08/17 06:25, Michael Collison wrote: > Because the comment (for example) in g+=.dg/ext/packed8.C says > > // NOTE: This test assumes packed structure layout differs from unpacked > // structure layout. This isn't true, e.g., with the default > // arm-none-elf options. > > If we could just delete the -mstructure-size-boundary=8 option why was it added in the first place? > Because the comment it out of date. It was added at a time when the default structure size boundard (pre eabi) was 32. R. > -----Original Message----- > From: Richard Earnshaw (lists) [mailto:Richard.Earnshaw@arm.com] > Sent: Monday, August 7, 2017 5:32 AM > To: Michael Collison ; > gcc-patches@gcc.gnu.org > Cc: nd > Subject: Re: [PATCH][Arm] Test suite failures resulting from > deprecation of -mstructure-size-boundary > > On 06/08/17 00:25, Michael Collison wrote: >> This patch fixes test case failures on arm targets due to '-mstructure-size-boundary' being deprecated. The test cases were failing because a warning was being issued and due to the fact that the size of packed and unpacked structures is the same after deprecating '-mstructure-size-boundary' >> >> Okay for trunk? >> >> 2017-08-04 Michael Collison >> >> * testsuite/g++.dg/ext/packed8.C: Skip test for arm_eabi. >> * testsuite/g++.dg/init/array16.C: Skip test for arm_eabi. >> * testsuite/g++.dg/other/crash-4.C: Skip test for arm_eabi. >> * testsuite/gcc.dg/builtin-stringop-chk-1.c: Skip test for arm_eabi. >> > > Why would we want to skip the test? If you delete the -mstructure-size-boundary option then the test should execute correctly on all arm-eabi based platforms and most other ARM platforms where 8 was the default anyway. > > R. > >> >> pr7519v1.patch >> >> >> diff --git a/gcc/testsuite/g++.dg/ext/packed8.C >> b/gcc/testsuite/g++.dg/ext/packed8.C >> index 91ee8b3..4f38670 100644 >> --- a/gcc/testsuite/g++.dg/ext/packed8.C >> +++ b/gcc/testsuite/g++.dg/ext/packed8.C >> @@ -2,7 +2,7 @@ >> // NOTE: This test assumes packed structure layout differs from unpacked >> // structure layout. This isn't true, e.g., with the default >> // arm-none-elf options. >> -// { dg-options "-mstructure-size-boundary=8" { target arm*-*-* } } >> +// { dg-skip-if "packed structure layout does not differ from >> +unpacked layout" { { arm*-*-* } && { arm_eabi } } } >> >> class A >> { >> diff --git a/gcc/testsuite/g++.dg/init/array16.C >> b/gcc/testsuite/g++.dg/init/array16.C >> index 188d1a8..3334e25 100644 >> --- a/gcc/testsuite/g++.dg/init/array16.C >> +++ b/gcc/testsuite/g++.dg/init/array16.C >> @@ -1,7 +1,7 @@ >> // Causes timeout for the MMIX simulator on a 3GHz P4 and we can't >> // have "compile" for some targets and "run" for others. >> // { dg-do run { target { ! mmix-*-* } } } -// { dg-options >> "-mstructure-size-boundary=8" { target arm*-*-* } } >> +// { dg-skip-if "packed structure layout does not differ from >> +unpacked layout" { { arm*-*-* } && { arm_eabi } } } >> >> // Copyright (C) 2004 Free Software Foundation, Inc. >> // Contributed by Nathan Sidwell 8 Dec 2004 >> diff --git >> a/gcc/testsuite/g++.dg/other/crash-4.C >> b/gcc/testsuite/g++.dg/other/crash-4.C >> index a77fe05..8530f44 100644 >> --- a/gcc/testsuite/g++.dg/other/crash-4.C >> +++ b/gcc/testsuite/g++.dg/other/crash-4.C >> @@ -7,7 +7,7 @@ >> // NOTE: This test assumes packed structure layout differs from unpacked >> // structure layout. This isn't true, e.g., with the default >> // arm-none-elf options. >> -// { dg-options "-mstructure-size-boundary=8" { target arm*-*-* } } >> +// { dg-skip-if "packed structure layout does not differ" { { >> +arm*-*-* } && { arm_eabi } } } >> >> struct a >> { >> diff --git a/gcc/testsuite/gcc.dg/builtin-stringop-chk-1.c >> b/gcc/testsuite/gcc.dg/builtin-stringop-chk-1.c >> index e265578..d839097 100644 >> --- a/gcc/testsuite/gcc.dg/builtin-stringop-chk-1.c >> +++ b/gcc/testsuite/gcc.dg/builtin-stringop-chk-1.c >> @@ -2,7 +2,7 @@ >> are emitted properly. */ >> /* { dg-do compile } */ >> /* { dg-options "-O2 -Wno-format -std=gnu99 >> -ftrack-macro-expansion=0" } */ >> -/* { dg-additional-options "-mstructure-size-boundary=8" { target >> arm*-*-* } } */ >> +// { dg-skip-if "packed structure layout does not differ from >> +unpacked layout" { { arm*-*-* } && { arm_eabi } } } >> // { dg-skip-if "packed attribute missing for t" { "epiphany-*-*" } >> } >> >> extern void abort (void); >> >