From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 49369 invoked by alias); 22 Jul 2019 19:37:15 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 49356 invoked by uid 89); 22 Jul 2019 19:37:14 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-27.6 required=5.0 tests=BAYES_00,FREEMAIL_FROM,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.1 spammy= X-HELO: resqmta-ch2-02v.sys.comcast.net Received: from resqmta-ch2-02v.sys.comcast.net (HELO resqmta-ch2-02v.sys.comcast.net) (69.252.207.34) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 22 Jul 2019 19:37:12 +0000 Received: from resomta-ch2-16v.sys.comcast.net ([69.252.207.112]) by resqmta-ch2-02v.sys.comcast.net with ESMTP id pY3ehrELwXiWhpe7Shfdg9; Mon, 22 Jul 2019 19:37:10 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=comcast.net; s=20190202a; t=1563824230; bh=Hy72G3UKnzsAWY8pJ6DzBqah879GcBdj3wKW0UkCAiM=; h=Received:Received:Content-Type:Mime-Version:Subject:From:Date: Message-Id:To; b=Sdxt69GMKCjhUIO4AjEBx45WfuHgu3TuaFHKwOzkjL0J4qNs4PZIz4pbIxYu7sK+4 vU3s7ZnnGaP6oKjjlobXU0OOSX1LYy+YfLD/Ypwr8skGp4SDhYTAG6LksqRYnvV91a s8cwhgOWll3tmFu7WaNg2dfmdgDcIHyPaSaoPKYy3DCsithpPUFMF2bk3QCzkJk/FL eU3ZUbe2/f/LFfBjpJ4YrU0klGQ3RO+VmYfhSFALaKD/La5BMuLKEGN8BJv8pKIrNs 5jj+WP1KbDi9LNOE5rsPDa5n0bEO9KBck0ewI9E5yz0eG4SRA7zslRkYHhComTUvH0 +fdtn+MYER8cw== Received: from [IPv6:2601:640:4000:fcbb:f976:cad0:6698:2493] ([IPv6:2601:640:4000:fcbb:f976:cad0:6698:2493]) by resomta-ch2-16v.sys.comcast.net with ESMTPA id pe7Phn5ssnR7Spe7QhMGqN; Mon, 22 Jul 2019 19:37:10 +0000 X-Xfinity-VMeta: sc=-100;st=legit Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 11.5 \(3445.9.1\)) Subject: Re: [ARM/FDPIC v5 18/21] [ARM][testsuite] FDPIC: Enable tests on pie_enabled targets From: Mike Stump In-Reply-To: <9535d640-2bb4-9786-a637-0e29da22b047@foss.arm.com> Date: Mon, 22 Jul 2019 19:50:00 -0000 Cc: Christophe Lyon , "gcc-patches@gcc.gnu.org" , ro@CeBiTec.Uni-Bielefeld.DE Content-Transfer-Encoding: quoted-printable Message-Id: <00BA2ED8-7435-4876-A609-F0B71F3370A1@comcast.net> References: <20190515124006.25840-1-christophe.lyon@st.com> <20190515124006.25840-19-christophe.lyon@st.com> <9535d640-2bb4-9786-a637-0e29da22b047@foss.arm.com> To: Kyrill Tkachov X-IsSubscribed: yes X-SW-Source: 2019-07/txt/msg01446.txt.bz2 On Jul 19, 2019, at 1:57 AM, Kyrill Tkachov w= rote: >=20 > On 5/15/19 1:39 PM, Christophe Lyon wrote: >> Some tests have the "nonpic" guard, but pass on >> arm*-*-uclinuxfdpiceabi because it is in PIE mode by default. Rather >> than adding this target to all these tests, add the "pie_enabled" >> effective target. >>=20 >> 2019-XX-XX Christophe Lyon >>=20 >> gcc/testsuite/ >> * g++.dg/cpp0x/noexcept03.C: Add pie_enabled. >> * g++.dg/ipa/devirt-c-7.C: Likewise. >> * g++.dg/ipa/ivinline-1.C: Likewise. >> * g++.dg/ipa/ivinline-2.C: Likewise. >> * g++.dg/ipa/ivinline-3.C: Likewise. >> * g++.dg/ipa/ivinline-4.C: Likewise. >> * g++.dg/ipa/ivinline-5.C: Likewise. >> * g++.dg/ipa/ivinline-7.C: Likewise. >> * g++.dg/ipa/ivinline-8.C: Likewise. >> * g++.dg/ipa/ivinline-9.C: Likewise. >> * g++.dg/tls/pr79288.C: Likewise. >> * gcc.dg/addr_equal-1.c: Likewise. >> * gcc.dg/const-1.c: Likewise. >> * gcc.dg/ipa/pure-const-1.c: Likewise. >> * gcc.dg/noreturn-8.c: Likewise. >> * gcc.dg/pr33826.c: Likewise. >> * gcc.dg/torture/ipa-pta-1.c: Likewise. >> * gcc.dg/tree-ssa/alias-2.c: Likewise. >> * gcc.dg/tree-ssa/ipa-split-5.c: Likewise. >> * gcc.dg/tree-ssa/loadpre6.c: Likewise. >> * gcc.dg/uninit-19.c: Likewise. >>=20 > Looks sensible, but this is not an arm-specific patch. >=20 > CC'ing testsuite maintainers. Seem sensible to me as well. Darwin is a pie by default sort of platform a= s I recall, and as long as it doesn't trip up there (you can just watch for= darwin fallout), should be fine. Patch is approved. Do watch for darwin fallout, and if there is some, we'd= have to think a little more about it. I'm not expecting any fall out (but= I haven't tested). >> Change-Id: I1a0d836b892c23891f739fccdc467d0f354ab82c >>=20 >> diff --git a/gcc/testsuite/g++.dg/cpp0x/noexcept03.C b/gcc/testsuite/g++= .dg/cpp0x/noexcept03.C >> index 2d37867..906a44d 100644 >> --- a/gcc/testsuite/g++.dg/cpp0x/noexcept03.C >> +++ b/gcc/testsuite/g++.dg/cpp0x/noexcept03.C >> @@ -1,6 +1,6 @@ >> // Runtime test for noexcept-specification. >> // { dg-options "-Wnoexcept" } >> -// { dg-do run { target nonpic } } >> +// { dg-do run { target { nonpic || pie_enabled } } } >> // { dg-require-effective-target c++11 } >>=20 >> #include >> diff --git a/gcc/testsuite/g++.dg/ipa/devirt-c-7.C b/gcc/testsuite/g++.d= g/ipa/devirt-c-7.C >> index 2e76cbe..efb65c2 100644 >> --- a/gcc/testsuite/g++.dg/ipa/devirt-c-7.C >> +++ b/gcc/testsuite/g++.dg/ipa/devirt-c-7.C >> @@ -1,7 +1,6 @@ >> /* Verify that ipa-cp will not get confused by placement new constructi= ng an >> object within another one when looking for dynamic type change . */ >> -/* { dg-do run } */ >> -/* { dg-require-effective-target nonpic } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -Wno-attributes" } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-1.C b/gcc/testsuite/g++.d= g/ipa/ivinline-1.C >> index 9b10d20..2d988bc 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-1.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-1.C >> @@ -1,6 +1,6 @@ >> /* Verify that simple virtual calls are inlined even without early >> inlining. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-2.C b/gcc/testsuite/g++.d= g/ipa/ivinline-2.C >> index 21cd46f..d978638 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-2.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-2.C >> @@ -1,6 +1,6 @@ >> /* Verify that simple virtual calls using this pointer are inlined >> even without early inlining.. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-3.C b/gcc/testsuite/g++.d= g/ipa/ivinline-3.C >> index 1e24644..f756a16 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-3.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-3.C >> @@ -1,6 +1,6 @@ >> /* Verify that simple virtual calls on an object refrence are inlined >> even without early inlining. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-4.C b/gcc/testsuite/g++.d= g/ipa/ivinline-4.C >> index cf0d980..5fbd3ef 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-4.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-4.C >> @@ -1,7 +1,7 @@ >> /* Verify that simple virtual calls are inlined even without early >> inlining, even when a typecast to an ancestor is involved along the >> way. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-5.C b/gcc/testsuite/g++.d= g/ipa/ivinline-5.C >> index f15ebf2..6c19907 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-5.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-5.C >> @@ -1,6 +1,6 @@ >> /* Verify that virtual call inlining does not pick a wrong method when >> there is a user defined ancestor in an object. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-7.C b/gcc/testsuite/g++.d= g/ipa/ivinline-7.C >> index a7b41e7..fd6aba6 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-7.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-7.C >> @@ -1,7 +1,7 @@ >> /* Verify that simple virtual calls are inlined even without early >> inlining, even when a typecast to an ancestor is involved along the >> way and that ancestor is not the first one with virtual functions. = */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-8.C b/gcc/testsuite/g++.d= g/ipa/ivinline-8.C >> index 5c3299f..bc81abf 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-8.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-8.C >> @@ -1,6 +1,6 @@ >> /* Verify that virtual calls are inlined (ithout early inlining) even >> when their caller is itself indirectly inlined. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/ipa/ivinline-9.C b/gcc/testsuite/g++.d= g/ipa/ivinline-9.C >> index 41b2381..0917f15 100644 >> --- a/gcc/testsuite/g++.dg/ipa/ivinline-9.C >> +++ b/gcc/testsuite/g++.dg/ipa/ivinline-9.C >> @@ -2,7 +2,7 @@ >> inlining, even when a typecast to an ancestor is involved along the >> way and that ancestor itself has an ancestor wich is not the >> primary base class. */ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-ipa-inline -fno-early-inlining -fno-ipa-cp"= } */ >>=20 >> extern "C" void abort (void); >> diff --git a/gcc/testsuite/g++.dg/tls/pr79288.C b/gcc/testsuite/g++.dg/t= ls/pr79288.C >> index 9f488df..da6751f 100644 >> --- a/gcc/testsuite/g++.dg/tls/pr79288.C >> +++ b/gcc/testsuite/g++.dg/tls/pr79288.C >> @@ -1,5 +1,5 @@ >> // PR c++/79288 >> -// { dg-do compile { target nonpic } } >> +// { dg-do compile { target { nonpic || pie_enabled } } } >> // { dg-require-effective-target tls } >> // { dg-options "-O2" } >> // { dg-final { scan-assembler-not "@tpoff" { target i?86-*-* x86_64-*-= * } } } >> diff --git a/gcc/testsuite/gcc.dg/addr_equal-1.c b/gcc/testsuite/gcc.dg/= addr_equal-1.c >> index 18b0dc9..35fa010 100644 >> --- a/gcc/testsuite/gcc.dg/addr_equal-1.c >> +++ b/gcc/testsuite/gcc.dg/addr_equal-1.c >> @@ -1,5 +1,4 @@ >> -/* { dg-do run } */ >> -/* { dg-require-effective-target nonpic } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-require-weak "" } */ >> /* { dg-require-alias "" } */ >> /* { dg-options "-O2 -fdelete-null-pointer-checks" } */ >> diff --git a/gcc/testsuite/gcc.dg/const-1.c b/gcc/testsuite/gcc.dg/const= -1.c >> index a5b2b16..aa20aad 100644 >> --- a/gcc/testsuite/gcc.dg/const-1.c >> +++ b/gcc/testsuite/gcc.dg/const-1.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do compile { target nonpic } } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O2 -Wsuggest-attribute=3Dconst" } */ >>=20 >> extern int extern_const(int a) __attribute__ ((const)); >> diff --git a/gcc/testsuite/gcc.dg/ipa/pure-const-1.c b/gcc/testsuite/gcc= .dg/ipa/pure-const-1.c >> index 06b415e..dd58457 100644 >> --- a/gcc/testsuite/gcc.dg/ipa/pure-const-1.c >> +++ b/gcc/testsuite/gcc.dg/ipa/pure-const-1.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do compile { target nonpic } } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-tree-local-pure-const1 -fdump-ipa-pure-cons= t -fdump-tree-optimized -fno-early-inlining -fgnu89-inline" } */ >> void abort (void); >> int error_code; >> diff --git a/gcc/testsuite/gcc.dg/noreturn-8.c b/gcc/testsuite/gcc.dg/no= return-8.c >> index 294800b..ce41cab 100644 >> --- a/gcc/testsuite/gcc.dg/noreturn-8.c >> +++ b/gcc/testsuite/gcc.dg/noreturn-8.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do run { target nonpic } } */ >> +/* { dg-do run { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O2" } */ >> void exit (int); >> void noreturn_autodetection_failed (); >> diff --git a/gcc/testsuite/gcc.dg/pr33826.c b/gcc/testsuite/gcc.dg/pr338= 26.c >> index df83915..d222774 100644 >> --- a/gcc/testsuite/gcc.dg/pr33826.c >> +++ b/gcc/testsuite/gcc.dg/pr33826.c >> @@ -1,8 +1,7 @@ >> /* Regression test for PR middle-end/33826 */ >> /* Verify that recursive functions cannot be pure or const. */ >>=20 >> -/* { dg-do compile } */ >> -/* { dg-require-effective-target nonpic } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O1 -fdump-tree-local-pure-const1 -fdump-ipa-pure-cons= t" } */ >>=20 >> int recurse1 (int); >> diff --git a/gcc/testsuite/gcc.dg/torture/ipa-pta-1.c b/gcc/testsuite/gc= c.dg/torture/ipa-pta-1.c >> index 1bf4997..30156a3 100644 >> --- a/gcc/testsuite/gcc.dg/torture/ipa-pta-1.c >> +++ b/gcc/testsuite/gcc.dg/torture/ipa-pta-1.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do compile { target { nonpic } } } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-fipa-pta -fdump-ipa-pta2 -fno-ipa-icf" } */ >> /* { dg-skip-if "" { *-*-* } { "-O0" "-fno-fat-lto-objects" } { "" } } = */ >>=20 >> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/alias-2.c b/gcc/testsuite/gcc= .dg/tree-ssa/alias-2.c >> index e10a25d..f9d2dd4 100644 >> --- a/gcc/testsuite/gcc.dg/tree-ssa/alias-2.c >> +++ b/gcc/testsuite/gcc.dg/tree-ssa/alias-2.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do compile { target { nonpic } } } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O2 -fdump-tree-optimized" } */ >> static int a; >> int f; >> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c b/gcc/testsuite= /gcc.dg/tree-ssa/ipa-split-5.c >> index 2d713d6..3b5a94f 100644 >> --- a/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c >> +++ b/gcc/testsuite/gcc.dg/tree-ssa/ipa-split-5.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do compile { target nonpic } } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O3 -fdump-tree-fnsplit -fdump-tree-optimized --param= =3Dbuiltin-expect-probability=3D100" } */ >>=20 >> struct a {int a,b;}; >> diff --git a/gcc/testsuite/gcc.dg/tree-ssa/loadpre6.c b/gcc/testsuite/gc= c.dg/tree-ssa/loadpre6.c >> index 028becd..b4e9296 100644 >> --- a/gcc/testsuite/gcc.dg/tree-ssa/loadpre6.c >> +++ b/gcc/testsuite/gcc.dg/tree-ssa/loadpre6.c >> @@ -1,4 +1,4 @@ >> -/* { dg-do compile { target nonpic } } */ >> +/* { dg-do compile { target { nonpic || pie_enabled } } } */ >> /* { dg-options "-O2 -fdump-tree-pre-stats -fdump-tree-fre1" } */ >> #include >>=20 >> --=20 >> 2.6.3 >>=20