On 10/9/18 11:03 AM, Rainer Orth wrote: > Hi Martin, > >> rename from gcc/testsuite/g++.dg/ext/pr82625.C >> rename to gcc/testsuite/g++.target/i386/pr82625.C >> index 59b174f8c51..0eb70baed5e 100644 >> --- a/gcc/testsuite/g++.dg/ext/pr82625.C >> +++ b/gcc/testsuite/g++.target/i386/pr82625.C >> @@ -1,7 +1,7 @@ >> /* { dg-do compile } */ >> /* { dg-require-ifunc "" } */ >> /* { dg-options "-O2 -fdump-tree-optimized" } */ >> -/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ >> +/* { dg-do compile } */ > > this is wrong: two instances of dg-do and dg-do after target selections > don't play well with one another. When you added it yesterday, you > badly broke the test on all x86 targets without ifunc support (probably > everything non-Linux): > > +UNRESOLVED: g++.dg/ext/pr82625.C -std=gnu++11 scan-tree-dump-times > optimized "return 4096;" 1 > +UNRESOLVED: g++.dg/ext/pr82625.C -std=gnu++11 scan-tree-dump-times > optimized "return 8192;" 1 > +FAIL: g++.dg/ext/pr82625.C -std=gnu++11 (test for excess errors) > > Excess errors: > /vol/gcc/src/hg/trunk/local/gcc/testsuite/g++.dg/ext/pr82625.C:7:17: error: > multiversioning needs ifunc which is not supported on this target > /vol/gcc/src/hg/trunk/local/gcc/testsuite/g++.dg/ext/pr82625.C:24:1: error: > use of multiversioned function without a default > > Just remove the second dg-do line.
Thanks for testing! I'm sending updated version of the patch. Martin > > Rainer >
>From 7e53582805ace4399a77b6dfa1350708ceba06e1 Mon Sep 17 00:00:00 2001 From: marxin <mli...@suse.cz> Date: Tue, 9 Oct 2018 10:43:35 +0200 Subject: [PATCH] Move some i386 C++ tests into g++.target/i386. testsuite/ChangeLog: 2018-10-09 Martin Liska <mli...@suse.cz> * pr57362.C: Move to g++.target/i386 folder. * pr57548.C: Likewise. * pr59492.C: Likewise. * pr82625.C: Likewise. * pr85329-2.C: Likewise. * pr85329.C: Likewise. --- gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr57362.C | 2 +- gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr57548.C | 2 +- gcc/testsuite/{g++.dg/other => g++.target/i386}/pr59492.C | 2 +- gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr82625.C | 1 - gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr85329-2.C | 2 +- gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr85329.C | 2 +- 6 files changed, 5 insertions(+), 6 deletions(-) rename gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr57362.C (99%) rename gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr57548.C (93%) rename gcc/testsuite/{g++.dg/other => g++.target/i386}/pr59492.C (87%) rename gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr82625.C (93%) rename gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr85329-2.C (81%) rename gcc/testsuite/{g++.dg/ext => g++.target/i386}/pr85329.C (80%) diff --git a/gcc/testsuite/g++.dg/ext/pr57362.C b/gcc/testsuite/g++.target/i386/pr57362.C similarity index 99% rename from gcc/testsuite/g++.dg/ext/pr57362.C rename to gcc/testsuite/g++.target/i386/pr57362.C index 07270946d55..8c07e857525 100644 --- a/gcc/testsuite/g++.dg/ext/pr57362.C +++ b/gcc/testsuite/g++.target/i386/pr57362.C @@ -1,4 +1,4 @@ -/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ +/* { dg-do compile } */ /* { dg-require-ifunc "" } */ __attribute__((target("default"))) diff --git a/gcc/testsuite/g++.dg/ext/pr57548.C b/gcc/testsuite/g++.target/i386/pr57548.C similarity index 93% rename from gcc/testsuite/g++.dg/ext/pr57548.C rename to gcc/testsuite/g++.target/i386/pr57548.C index 1cc728d294c..e027f7d432f 100644 --- a/gcc/testsuite/g++.dg/ext/pr57548.C +++ b/gcc/testsuite/g++.target/i386/pr57548.C @@ -1,4 +1,4 @@ -/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ +/* { dg-do compile } */ /* { dg-require-ifunc "" } */ int fum (); // Extra declaration that is merged with the second one. diff --git a/gcc/testsuite/g++.dg/other/pr59492.C b/gcc/testsuite/g++.target/i386/pr59492.C similarity index 87% rename from gcc/testsuite/g++.dg/other/pr59492.C rename to gcc/testsuite/g++.target/i386/pr59492.C index 92694ae6dde..25393d7a3c2 100644 --- a/gcc/testsuite/g++.dg/other/pr59492.C +++ b/gcc/testsuite/g++.target/i386/pr59492.C @@ -1,4 +1,4 @@ -// { dg-do assemble { target { { i?86-*-* x86_64-*-* } && fpic } } } +// { dg-do assemble { target { fpic } } } // { dg-options "-mx32 -fPIC" } // { dg-require-ifunc "" } // { dg-require-effective-target maybe_x32 } diff --git a/gcc/testsuite/g++.dg/ext/pr82625.C b/gcc/testsuite/g++.target/i386/pr82625.C similarity index 93% rename from gcc/testsuite/g++.dg/ext/pr82625.C rename to gcc/testsuite/g++.target/i386/pr82625.C index 59b174f8c51..47bd2df1104 100644 --- a/gcc/testsuite/g++.dg/ext/pr82625.C +++ b/gcc/testsuite/g++.target/i386/pr82625.C @@ -1,7 +1,6 @@ /* { dg-do compile } */ /* { dg-require-ifunc "" } */ /* { dg-options "-O2 -fdump-tree-optimized" } */ -/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ __attribute__ ((target ("default"))) static unsigned foo(const char *buf, unsigned size) { diff --git a/gcc/testsuite/g++.dg/ext/pr85329-2.C b/gcc/testsuite/g++.target/i386/pr85329-2.C similarity index 81% rename from gcc/testsuite/g++.dg/ext/pr85329-2.C rename to gcc/testsuite/g++.target/i386/pr85329-2.C index 24622d404f7..e58ab4c5955 100644 --- a/gcc/testsuite/g++.dg/ext/pr85329-2.C +++ b/gcc/testsuite/g++.target/i386/pr85329-2.C @@ -1,4 +1,4 @@ -/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ +/* { dg-do compile } */ /* { dg-require-ifunc "" } */ class b diff --git a/gcc/testsuite/g++.dg/ext/pr85329.C b/gcc/testsuite/g++.target/i386/pr85329.C similarity index 80% rename from gcc/testsuite/g++.dg/ext/pr85329.C rename to gcc/testsuite/g++.target/i386/pr85329.C index fb77e42cd78..4a0ebf29c07 100644 --- a/gcc/testsuite/g++.dg/ext/pr85329.C +++ b/gcc/testsuite/g++.target/i386/pr85329.C @@ -1,4 +1,4 @@ -/* { dg-do compile { target i?86-*-* x86_64-*-* } } */ +/* { dg-do compile } */ /* { dg-require-ifunc "" } */ struct a -- 2.19.0