From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9865 invoked by alias); 21 Oct 2011 15:44:35 -0000 Received: (qmail 9846 invoked by uid 22791); 21 Oct 2011 15:44:32 -0000 X-SWARE-Spam-Status: No, hits=-2.0 required=5.0 tests=AWL,BAYES_00,RP_MATCHES_RCVD,TW_IV X-Spam-Check-By: sourceware.org Received: from atrey.karlin.mff.cuni.cz (HELO atrey.karlin.mff.cuni.cz) (195.113.26.193) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 21 Oct 2011 15:44:17 +0000 Received: by atrey.karlin.mff.cuni.cz (Postfix, from userid 4018) id 1DC07F0739; Fri, 21 Oct 2011 17:44:15 +0200 (CEST) Date: Fri, 21 Oct 2011 16:20:00 -0000 From: Jan Hubicka To: Rainer Orth Cc: Iain Sandoe , Jan Hubicka , Hans-Peter Nilsson , GCC Patches Subject: Re: [RFA:] fix breakage with "Update testsuite to run with slim LTO" Message-ID: <20111021154414.GC18476@atrey.karlin.mff.cuni.cz> References: <20111020221932.GA13355@kam.mff.cuni.cz> <201110210229.p9L2TKmx010677@ignucius.se.axis.com> <20111021093112.GD2976@kam.mff.cuni.cz> <63B3C6F6-2C30-4A7C-A324-8805D8AA8667@sandoe-acoustics.co.uk> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.18 (2008-05-17) X-IsSubscribed: yes 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 X-SW-Source: 2011-10/txt/msg01998.txt.bz2 > If running the gnat.dg testsuite, lib/gcc-dg.exp is now calling > check_linker_plugin_available early, which ultimately calls > ${tool}_target_compile. For all languages but Ada, > ${tool}_target_compile can compile .c files just fine, but > gnat_target_compile (which uses gnatmake) cannot, so it falls back to > directly calling gcc_target_compile in that case. gcc_target_compile > relies on GCC_UNDER_TEST being set, which in this case hasn't yet > happened, thus the error. > > My solution (a hack, actually) is to move the initialization of > GCC_UNDER_TEST in gcc-dg.exp before the calls to > check_linker_plugin_available. x86_64-unknown-linux-gnu testing in > progress, will commit once that's finished. Oops, I was under impression that GNAT testsuite is not really using dejagnu lib so I did not expected a change here. Thanks for fixing that! I also noticed that tests scanning output of late optimization passes are now getting UNRESOLVED state with slim LTO. We don't really lose coverage here because we test fat LTO with the other compilation, but probably easiest is to enfore fat LTO all the time. Does the following seem resonable? Honza * gcc.dg/torture/pta-ptrarith-1.c: Force fat LTO. * gcc.dg/torture/pta-ptrarith-2.c: Likewise. * gcc.dg/torture/pr23821.c: Likewise. * gcc.dg/torture/pta-ptrarith-3.c: Likewise. * gcc.dg/torture/pr45704.c: Likewise. * gcc.dg/torture/pr50472.c: Likewise. * gcc.dg/torture/ipa-pta-1.c: Likewise. * gcc.dg/torture/pta-callused-1.c: Likewise. * gcc.dg/torture/pr39074-2.c: Likewise. * gcc.dg/torture/pr39074.c: Likewise. * gcc.dg/torture/pr42898-2.c: Likewise. * gcc.dg/torture/pr42898.c: Likewise. * gcc.dg/torture/pta-escape-1.c: Likewise. * gcc.dg/torture/ssa-pta-fn-1.c: Likewise. Index: gcc.dg/torture/pta-ptrarith-1.c =================================================================== *** gcc.dg/torture/pta-ptrarith-1.c (revision 180289) --- gcc.dg/torture/pta-ptrarith-1.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ struct Foo { --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ struct Foo { Index: gcc.dg/torture/pta-ptrarith-2.c =================================================================== *** gcc.dg/torture/pta-ptrarith-2.c (revision 180289) --- gcc.dg/torture/pta-ptrarith-2.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ struct Foo { --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ struct Foo { Index: gcc.dg/torture/pr23821.c =================================================================== *** gcc.dg/torture/pr23821.c (revision 180289) --- gcc.dg/torture/pr23821.c (working copy) *************** *** 3,9 **** /* At -O1 DOM threads a jump in a non-optimal way which leads to the bogus propagation. */ /* { dg-skip-if "" { *-*-* } { "-O1" } { "" } } */ ! /* { dg-options "-fdump-tree-ivcanon-details" } */ int a[199]; --- 3,9 ---- /* At -O1 DOM threads a jump in a non-optimal way which leads to the bogus propagation. */ /* { dg-skip-if "" { *-*-* } { "-O1" } { "" } } */ ! /* { dg-options "-fdump-tree-ivcanon-details -ffat-lto-objects" } */ int a[199]; Index: gcc.dg/torture/pta-ptrarith-3.c =================================================================== *** gcc.dg/torture/pta-ptrarith-3.c (revision 180289) --- gcc.dg/torture/pta-ptrarith-3.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ extern void abort (void); --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ extern void abort (void); Index: gcc.dg/torture/pr45704.c =================================================================== *** gcc.dg/torture/pr45704.c (revision 180289) --- gcc.dg/torture/pr45704.c (working copy) *************** *** 1,5 **** /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized" } */ struct st { int ptr; --- 1,5 ---- /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized -ffat-lto-objects" } */ struct st { int ptr; Index: gcc.dg/torture/pr50472.c =================================================================== *** gcc.dg/torture/pr50472.c (revision 180289) --- gcc.dg/torture/pr50472.c (working copy) *************** *** 1,5 **** /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized" } */ static const unsigned int foo = 1; unsigned int test( void ) --- 1,5 ---- /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized -ffat-lto-objects" } */ static const unsigned int foo = 1; unsigned int test( void ) Index: gcc.dg/torture/ipa-pta-1.c =================================================================== *** gcc.dg/torture/ipa-pta-1.c (revision 180289) --- gcc.dg/torture/ipa-pta-1.c (working copy) *************** *** 1,5 **** /* { dg-do compile { target { nonpic } } } */ ! /* { dg-options "-fipa-pta -fdump-ipa-pta" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ struct X { char x; char y; }; --- 1,5 ---- /* { dg-do compile { target { nonpic } } } */ ! /* { dg-options "-fipa-pta -fdump-ipa-pta -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ struct X { char x; char y; }; Index: gcc.dg/torture/pta-callused-1.c =================================================================== *** gcc.dg/torture/pta-callused-1.c (revision 180289) --- gcc.dg/torture/pta-callused-1.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ volatile int i; --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ volatile int i; Index: gcc.dg/torture/pr39074-2.c =================================================================== *** gcc.dg/torture/pr39074-2.c (revision 180289) --- gcc.dg/torture/pr39074-2.c (working copy) *************** *** 1,6 **** /* { dg-do run } */ /* { dg-require-effective-target stdint_types } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ #include --- 1,6 ---- /* { dg-do run } */ /* { dg-require-effective-target stdint_types } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ #include Index: gcc.dg/torture/pr39074.c =================================================================== *** gcc.dg/torture/pr39074.c (revision 180289) --- gcc.dg/torture/pr39074.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ typedef __PTRDIFF_TYPE__ intptr_t; --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ typedef __PTRDIFF_TYPE__ intptr_t; Index: gcc.dg/torture/pr42898-2.c =================================================================== *** gcc.dg/torture/pr42898-2.c (revision 180289) --- gcc.dg/torture/pr42898-2.c (working copy) *************** *** 1,5 **** /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized" } */ struct hardware { int parm1:8; --- 1,5 ---- /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized -ffat-lto-objects" } */ struct hardware { int parm1:8; Index: gcc.dg/torture/pr42898.c =================================================================== *** gcc.dg/torture/pr42898.c (revision 180289) --- gcc.dg/torture/pr42898.c (working copy) *************** *** 1,5 **** /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized" } */ struct hardware { int parm1:8; --- 1,5 ---- /* { dg-do compile } */ ! /* { dg-options "-fdump-tree-optimized -ffat-lto-objects" } */ struct hardware { int parm1:8; Index: gcc.dg/torture/pta-escape-1.c =================================================================== *** gcc.dg/torture/pta-escape-1.c (revision 180289) --- gcc.dg/torture/pta-escape-1.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ int *p; --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ int *p; Index: gcc.dg/torture/ssa-pta-fn-1.c =================================================================== *** gcc.dg/torture/ssa-pta-fn-1.c (revision 180289) --- gcc.dg/torture/ssa-pta-fn-1.c (working copy) *************** *** 1,5 **** /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ extern void abort (void); --- 1,5 ---- /* { dg-do run } */ ! /* { dg-options "-fdump-tree-alias -ffat-lto-objects" } */ /* { dg-skip-if "" { *-*-* } { "-O0" } { "" } } */ extern void abort (void);