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?

-----Original Message-----
From: Richard Earnshaw (lists) [mailto:richard.earns...@arm.com] 
Sent: Monday, August 7, 2017 5:32 AM
To: Michael Collison <michael.colli...@arm.com>; gcc-patches@gcc.gnu.org
Cc: nd <n...@arm.com>
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  <michael.colli...@arm.com>
> 
>       * 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 <nat...@codesourcery.com> 
> 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);
> 

Reply via email to