public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* PING: gcc.target/arm: skip 5 tests for flag conflicts
@ 2013-01-14 21:21 Janis Johnson
  0 siblings, 0 replies; 4+ messages in thread
From: Janis Johnson @ 2013-01-14 21:21 UTC (permalink / raw)
  To: gcc-patches, Richard Earnshaw

Richard,

Back in September I submitted a patch to fix five ARM tests in
 <http://gcc.gnu.org/ml/gcc-patches/2012-09/msg01515.html>.

You responded in < http://gcc.gnu.org/ml/gcc-patches/2012-10/msg00972.html>
and I answered your questions in a reply.

The first of the modified tests doesn't need to be changed, at least for
the sets of flags with which I usually test, but the others all conflict
with some of my multilib flags.  Note that the tests will be run with
the specified options for a default multilib, or one that doesn't use
any of the same options that are needed for the multilib.

Can I check those in now?

Janis

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PING: gcc.target/arm: skip 5 tests for flag conflicts
  2013-01-16 23:47 ` Janis Johnson
@ 2013-01-17 15:04   ` nick clifton
  0 siblings, 0 replies; 4+ messages in thread
From: nick clifton @ 2013-01-17 15:04 UTC (permalink / raw)
  To: janisjo; +Cc: Janis Johnson, gcc-patches, rearnshaw

Hi Janis,

> Now I get it.  This version is more selective about which multilibs
> are skipped.  I tested it by using multilib test flags for all valid
> values for -march, with and without -mthumb as appropriate for the
> arch.  The ones that are now skipped are the ones that used to fail
> with complaints from the compiler.
>
> Is this OK?

Approved - please apply - thanks for persevering with this.

Cheers
   Nick


^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PING: gcc.target/arm: skip 5 tests for flag conflicts
  2013-01-16 13:35 Nick Clifton
@ 2013-01-16 23:47 ` Janis Johnson
  2013-01-17 15:04   ` nick clifton
  0 siblings, 1 reply; 4+ messages in thread
From: Janis Johnson @ 2013-01-16 23:47 UTC (permalink / raw)
  To: Nick Clifton; +Cc: gcc-patches, rearnshaw

[-- Attachment #1: Type: text/plain, Size: 805 bytes --]

On 01/16/2013 05:31 AM, Nick Clifton wrote:
> Hi Janis,
> 
>> Back in September I submitted a patch to fix five ARM tests in
>>  <http://gcc.gnu.org/ml/gcc-patches/2012-09/msg01515.html>.
>> You responded in < http://gcc.gnu.org/ml/gcc-patches/2012-10/msg00972.html>
>> and I answered your questions in a reply.
> 
> I believe that Richard's main point was that the skips that you were
> adding to the tests meant that they would not be run for valid
> command line options.

Now I get it.  This version is more selective about which multilibs
are skipped.  I tested it by using multilib test flags for all valid 
values for -march, with and without -mthumb as appropriate for the 
arch.  The ones that are now skipped are the ones that used to fail
with complaints from the compiler.

Is this OK?

Janis

[-- Attachment #2: gcc-20130116-2 --]
[-- Type: text/plain, Size: 3561 bytes --]

2013-01-16  Janis Johnson  <janisjo@codesourcery.com>

	* gcc.target/arm/pr40887.c: Require at least armv5.
	* gcc.target/arm/pr51835.c: Avoid conflicts with multilib flags.
	* gcc.target/arm/pr51915.c: Likewise.
	* gcc.target/arm/pr52006.c: Likewise.
	* gcc.target/arm/pr53187.c: Likewise.

Index: src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr40887.c
===================================================================
--- src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr40887.c	(revision 195216)
+++ src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr40887.c	(working copy)
@@ -1,3 +1,4 @@
+/* { dg-skip-if "need at least armv5" { *-*-* } { "-march=armv[234]*" } { "" } } */
 /* { dg-options "-O2 -march=armv5te" }  */
 /* { dg-final { scan-assembler "blx" } } */
 
Index: src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr51835.c
===================================================================
--- src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr51835.c	(revision 195216)
+++ src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr51835.c	(working copy)
@@ -1,6 +1,8 @@
 /* { dg-do compile } */
-/* { dg-options "-O2 -mfloat-abi=hard -mfpu=fpv4-sp-d16" }  */
-/* { dg-require-effective-target arm_thumb2_ok } */
+/* { dg-skip-if "no support for hard-float VFP ABI" { arm_thumb1 } { "-march=*" } { "" } } */
+/* { dg-skip-if "do not override -mfloat-abi" { *-*-* } { "-mfloat-abi=*" } { "-mfloat-abi=hard" } } */
+/* { dg-skip-if "avoid conflicting -mfpu" { *-*-* } { "-mfpu=*" } { "-mfpu=fpv4-sp-d16" "-mfpu=vfpv3xd" "-mfpu=vfpv3xd-fp16" } } */
+/* { dg-options "-O2 -march=armv7-a -mfloat-abi=hard -mfpu=fpv4-sp-d16" }  */
 
 int func1 (double d)
 {
Index: src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr51915.c
===================================================================
--- src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr51915.c	(revision 195216)
+++ src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr51915.c	(working copy)
@@ -1,5 +1,7 @@
 /* PR target/51915 */
 /* { dg-do compile } */
+/* { dg-skip-if "no support for hard-float VFP ABI" { arm_thumb1 } { "-march=*" } { "" } } */
+/* { dg-skip-if "do not override -mfloat-abi" { *-*-* } { "-mfloat-abi=*" } { "-mfloat-abi=hard" } } */
 /* { dg-options "-march=armv7-a -mfloat-abi=hard -O2" } */
 
 struct S { int s1; void *s2; };
Index: src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr52006.c
===================================================================
--- src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr52006.c	(revision 195216)
+++ src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr52006.c	(working copy)
@@ -1,5 +1,7 @@
 /* PR target/52006 */
 /* { dg-do compile } */
+/* { dg-skip-if "avoid conflicts with multilib flags" { *-*-* } { "-mfloat-abi=*" } { "-mfloat-abi=hard" } } */
+/* { dg-skip-if "no support for hard-float VFP ABI" { arm_thumb1 } { "-march=*" } { "" } } */
 /* { dg-options "-march=armv7-a -mfloat-abi=hard -O2 -fPIC" } */
 
 unsigned long a;
Index: src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr53187.c
===================================================================
--- src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr53187.c	(revision 195216)
+++ src/gcc-mainline/gcc/testsuite/gcc.target/arm/pr53187.c	(working copy)
@@ -1,5 +1,7 @@
 /* PR target/53187 */
 /* { dg-do compile } */
+/* { dg-skip-if "no support for hard-float VFP ABI" { arm_thumb1 } { "-march=*" } { "" } } */
+/* { dg-skip-if "do not override -mfloat-abi" { *-*-* } { "-mfloat-abi=*" } { "-mfloat-abi=hard" } } */
 /* { dg-options "-march=armv7-a -mfloat-abi=hard -O2" } */
 
 void bar (int);

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PING: gcc.target/arm: skip 5 tests for flag conflicts
@ 2013-01-16 13:35 Nick Clifton
  2013-01-16 23:47 ` Janis Johnson
  0 siblings, 1 reply; 4+ messages in thread
From: Nick Clifton @ 2013-01-16 13:35 UTC (permalink / raw)
  To: janis_johnson; +Cc: gcc-patches, rearnshaw

Hi Janis,

> Back in September I submitted a patch to fix five ARM tests in
>  <http://gcc.gnu.org/ml/gcc-patches/2012-09/msg01515.html>.
> You responded in < http://gcc.gnu.org/ml/gcc-patches/2012-10/msg00972.html>
> and I answered your questions in a reply.

I believe that Richard's main point was that the skips that you were
adding to the tests meant that they would not be run for valid
command line options.

Eg:

  Index: gcc.target/arm/pr53187.c
  ===================================================================
  --- gcc.target/arm/pr53187.c	(revision 191502)
  +++ gcc.target/arm/pr53187.c	(working copy)
  @@ -1,5 +1,6 @@
    /* PR target/53187 */
    /* { dg-do compile } */
  + /* { dg-skip-if "do not override -march" { *-*-* } { "-march=*" } { "-march=armv7-a" } } */
    /* { dg-options "-march=armv7-a -mfloat-abi=hard -O2" } */

With your patch applied this test will be skipped when, eg,
-march=armv7-r is specified as the multilib selector.  Or in fact any
-march that is not armv7-a, even though, for many of these, the test
will successfully compile.

Given that there are more compatible architectures than incompatible
ones, I think that it would be better to allow the test by default and
only exclude when necessary.  Eg:

    /* PR target/53187 */
    /* { dg-do compile } */
  + /* { dg-skip-if "incompatible -march" { *-*-* } { "-march=armv6s-m" "-march=armv6-m" } { "" } } */
    /* { dg-options "-march=armv7-a -mfloat-abi=hard -O2" } */

Cheers
  Nick

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2013-01-17 15:04 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-14 21:21 PING: gcc.target/arm: skip 5 tests for flag conflicts Janis Johnson
2013-01-16 13:35 Nick Clifton
2013-01-16 23:47 ` Janis Johnson
2013-01-17 15:04   ` nick clifton

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).