From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 85307 invoked by alias); 27 Feb 2015 17:01:01 -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 85298 invoked by uid 89); 27 Feb 2015 17:01:01 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.0 required=5.0 tests=AWL,BAYES_00,T_RP_MATCHES_RCVD autolearn=ham version=3.3.2 X-HELO: nikam.ms.mff.cuni.cz Received: from nikam.ms.mff.cuni.cz (HELO nikam.ms.mff.cuni.cz) (195.113.20.16) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES256-GCM-SHA384 encrypted) ESMTPS; Fri, 27 Feb 2015 17:00:55 +0000 Received: by nikam.ms.mff.cuni.cz (Postfix, from userid 16202) id C112E544CD5; Fri, 27 Feb 2015 18:00:52 +0100 (CET) Date: Fri, 27 Feb 2015 18:04:00 -0000 From: Jan Hubicka To: "H.J. Lu" Cc: Jan Hubicka , Jack Howarth , GCC Patches , Martin =?iso-8859-2?Q?Li=B9ka?= , Jakub Jelinek Subject: Re: ipa-icf::merge TLC Message-ID: <20150227170052.GC67396@kam.mff.cuni.cz> References: <20150225083810.GA86854@kam.mff.cuni.cz> <20150227021047.GA20437@kam.mff.cuni.cz> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) X-SW-Source: 2015-02/txt/msg01717.txt.bz2 > > This caused: > > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65237 Hi, this is patch I commited. gcc.dg/attr-noinline.c has template that counts number of calls in optimized assembler. Those do not match if one function is turned into another's wrapper. gcc.dg/noreturn-7.c misses one warning because we unify the functions before outputting it. I think that is OK given that the warning will come out if user fix the first instance. gcc.dg/ipa/ipa-cp-1.c, gcc.dg/ipa/ipa-cp-2.c was accidental commits from my work with Martin Jambor, sorry for that. There is still gcc.target/i386/stackalign/longlong-2.c that is real bug of alignments not being compared. I noticed that independnetly yesterday and asked Martin to add patch (among with several other details) Honza PR ipa/65237 * gcc.dg/attr-noinline.c: Add -fno-ipa-icf * gcc.dg/noreturn-7.c: Add -fno-ipa-icf. * gcc.dg/ipa/ipa-cp-1.c: Revert accidental commit. * gcc.dg/ipa/ipa-cp-2.c: Revert accidental commit. Index: gcc.dg/attr-noinline.c =================================================================== --- gcc.dg/attr-noinline.c (revision 221034) +++ gcc.dg/attr-noinline.c (working copy) @@ -1,5 +1,5 @@ /* { dg-do compile } */ -/* { dg-options "-O2 -finline-functions" } */ +/* { dg-options "-O2 -finline-functions -fno-ipa-icf" } */ extern int t(); Index: gcc.dg/noreturn-7.c =================================================================== --- gcc.dg/noreturn-7.c (revision 221034) +++ gcc.dg/noreturn-7.c (working copy) @@ -5,7 +5,7 @@ in presence of tail recursion within a noreturn function. */ /* { dg-do compile } */ -/* { dg-options "-O2 -Wreturn-type -Wmissing-noreturn" } */ +/* { dg-options "-O2 -Wreturn-type -Wmissing-noreturn -fno-ipa-icf" } */ void f(void) __attribute__ ((__noreturn__)); Index: gcc.dg/ipa/ipa-cp-1.c =================================================================== --- gcc.dg/ipa/ipa-cp-1.c (revision 221034) +++ gcc.dg/ipa/ipa-cp-1.c (working copy) @@ -1,22 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-O2 -fdump-ipa-cp" } */ -int n; - -static void -__attribute__ ((noinline)) -test(void *a) -{ - __builtin_memset (a,0,n); -} - -int -main() -{ - int aa; - short bb; - test (&aa); - test (&bb); - return 0; -} -/* { dg-final { scan-ipa-dump "Alignment 2" "cp" } } */ -/* { dg-final { cleanup-ipa-dump "cp" } } */ Index: gcc.dg/ipa/ipa-cp-2.c =================================================================== --- gcc.dg/ipa/ipa-cp-2.c (revision 221034) +++ gcc.dg/ipa/ipa-cp-2.c (working copy) @@ -1,22 +0,0 @@ -/* { dg-do compile } */ -/* { dg-options "-O2 -fdump-ipa-cp" } */ -int n; - -static void -__attribute__ ((noinline)) -test(void *a) -{ - __builtin_memset (a,0,n); -} - -static __attribute__ ((aligned(16))) int aa[10]; - -int -main() -{ - test (&aa[1]); - test (&aa[3]); - return 0; -} -/* { dg-final { scan-ipa-dump "Alignment 8, misalignment 4" "cp" } } */ -/* { dg-final { cleanup-ipa-dump "cp" } } */