From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21886 invoked by alias); 22 Oct 2014 11:34:37 -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 21874 invoked by uid 89); 22 Oct 2014 11:34:37 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-2.1 required=5.0 tests=AWL,BAYES_00,FREEMAIL_FROM,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-wi0-f171.google.com Received: from mail-wi0-f171.google.com (HELO mail-wi0-f171.google.com) (209.85.212.171) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Wed, 22 Oct 2014 11:34:36 +0000 Received: by mail-wi0-f171.google.com with SMTP id em10so1075098wid.10 for ; Wed, 22 Oct 2014 04:34:32 -0700 (PDT) X-Received: by 10.194.71.6 with SMTP id q6mr21910728wju.98.1413977672911; Wed, 22 Oct 2014 04:34:32 -0700 (PDT) Received: from msticlxl57.ims.intel.com (fmdmzpr04-ext.fm.intel.com. [192.55.55.39]) by mx.google.com with ESMTPSA id fm10sm1600649wib.21.2014.10.22.04.34.29 for (version=TLSv1 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Wed, 22 Oct 2014 04:34:32 -0700 (PDT) Date: Wed, 22 Oct 2014 11:40:00 -0000 From: Kirill Yukhin To: Richard Biener Cc: Jakub Jelinek , Uros Bizjak , Richard Henderson , GCC Patches Subject: Re: [PATCH i386 AVX512] [81/n] Add new built-ins. Message-ID: <20141022113420.GB11644@msticlxl57.ims.intel.com> References: <20141020134122.GB12661@msticlxl57.ims.intel.com> <20141020135019.GP10376@tucnak.redhat.com> <20141021140805.GA22695@msticlxl57.ims.intel.com> <20141021142015.GY10376@tucnak.redhat.com> <20141021144749.GC22695@msticlxl57.ims.intel.com> <20141021150826.GD22695@msticlxl57.ims.intel.com> 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-IsSubscribed: yes X-SW-Source: 2014-10/txt/msg02235.txt.bz2 Hello, On 22 Oct 10:09, Richard Biener wrote: > On Tue, Oct 21, 2014 at 5:08 PM, Kirill Yukhin wrote: > > On 21 Oct 18:47, Kirill Yukhin wrote: > >> On 21 Oct 16:20, Jakub Jelinek wrote: > >> > On Tue, Oct 21, 2014 at 06:08:15PM +0400, Kirill Yukhin wrote: > >> > > --- a/gcc/tree.h > >> > > +++ b/gcc/tree.h > >> > > @@ -2334,6 +2334,10 @@ extern void decl_value_expr_insert (tree, tree); > >> > > #define DECL_COMDAT(NODE) \ > >> > > (DECL_WITH_VIS_CHECK (NODE)->decl_with_vis.comdat_flag) > >> > > > >> > > + /* In a FUNCTION_DECL indicates that a static chain is needed. */ > >> > > +#define DECL_STATIC_CHAIN(NODE) \ > >> > > + (DECL_WITH_VIS_CHECK (NODE)->decl_with_vis.regdecl_flag) > >> > > + > >> > > >> > I would say that you should still keep it together with the FUNCTION_DECL > >> > macros and use FUNCTION_DECL_CHECK there, to make it clear we don't want > >> > the macro to be used on VAR_DECLs etc. > >> > So just s/function_decl/decl_with_vis/ in the definition IMHO. > >> Yeah, sure. > >> > >> > Also, with so many added builtins, how does it affect > >> > int i; > >> > compilation time at -O0? If it is significant, maybe it is highest time to > >> > make the md builtin decl building more lazy. > >> I've tried this: > >> $ echo "int i;" > test.c > >> $ time for i in `seq 10000` ; do ./build-x86_64-linux/gcc/xgcc -B./build-x86_64-linux/gcc -O0 -S test.c ; done > >> > >> For trunk w/ and w/o the patch applied. > >> Got 106.86 vs. 106.85 secs. which looks equal. > > Retested on clear machine (SandyBridge). Got 189 vs. 192 secs., i.e. ~1% > > Can you test with -mavx512 (or whatever enables the builtins?) Done. I did: sync && time for i in `seq 1000` ; do ./build-x86_64-linux/gcc/xgcc -B./build-x86_64-linux/gcc -O0 -S test.c -mavx512vl ; done Here're results. w/o the patch applied: real 0m14.245s user 0m10.753s sys 0m2.150s w/ the patch applied: real 0m16.404s user 0m12.935s sys 0m2.577s So, we have compilation 15% slowdown when -mavx512vl is provided and no difference when not. Is this change is acceptable? -- Thanks, K