From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 9182 invoked by alias); 2 Sep 2008 14:37:35 -0000 Received: (qmail 9172 invoked by uid 22791); 2 Sep 2008 14:37:34 -0000 X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.33.17) by sourceware.org (qpsmtpd/0.31) with ESMTP; Tue, 02 Sep 2008 14:36:41 +0000 Received: from zps76.corp.google.com (zps76.corp.google.com [172.25.146.76]) by smtp-out3.google.com with ESMTP id m82EaWXG021388; Tue, 2 Sep 2008 15:36:34 +0100 Received: from smtp.corp.google.com (spacemonkey1.corp.google.com [192.168.120.115]) by zps76.corp.google.com with ESMTP id m82EaVfE031986 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 2 Sep 2008 07:36:31 -0700 Received: from localhost.localdomain.google.com (69-36-227-135.cust.layer42.net [69.36.227.135] (may be forged)) (authenticated bits=0) by smtp.corp.google.com (8.13.8/8.13.8) with ESMTP id m82EaPlx026713 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NOT); Tue, 2 Sep 2008 07:36:29 -0700 To: "Richard Guenther" Cc: "Jan Hubicka" , gcc-patches@gcc.gnu.org Subject: Re: Patch ping... References: <20080405162606.GA22594@atrey.karlin.mff.cuni.cz> <84fc9c000804050953o429fde26jb3938827ff9dc5a@mail.gmail.com> <20080828203249.GH15545@atrey.karlin.mff.cuni.cz> <84fc9c000808290552w34f7548ft5b89b659aa5eb6ce@mail.gmail.com> From: Ian Lance Taylor Date: Tue, 02 Sep 2008 14:38:00 -0000 In-Reply-To: <84fc9c000808290552w34f7548ft5b89b659aa5eb6ce@mail.gmail.com> (Richard Guenther's message of "Fri\, 29 Aug 2008 14\:52\:36 +0200") Message-ID: User-Agent: Gnus/5.11 (Gnus v5.11) Emacs/22.1 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii 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: 2008-09/txt/msg00103.txt.bz2 "Richard Guenther" writes: > On Thu, Aug 28, 2008 at 10:32 PM, Jan Hubicka wrote: >>> On Sat, Apr 5, 2008 at 6:26 PM, Jan Hubicka wrote: >>> > Hi, >>> > I would like to ping the BRANCH_COST patch >>> > http://gcc.gnu.org/ml/gcc/2008-03/msg00137.html >>> > >>> > I hope to proceed with updating GCC to optimize cold blocks in same way >>> > as -Os and explicitely marked hot functions in -Os code for speed. >>> > For this I need to populate RTL cost interfaces with the profile info >>> > and teach expansion about it. >>> > This is taking quite some years now, I realize it might not be clear >>> > what I am precisely shooting for, so I will also add wiki page. >>> >>> I think the patch makes sense (BRANCH_COST is special anyway compared to >>> other isns cost), but I'd like to see the bigger picture as well here. In >>> particular, BRANCH_COST (hot, predictable), why isn't that simply >>> BRANCH_COST (optimize_size_p, predictable) matching what I possibly >>> expect for the other cost interface (insn_cost (optimize_size_p, rtx)). >> >> Hi, >> with the optimize_*_for_speed_p predicates, this patch becomes cleaner >> now. I would also like to update other costs similar way so we can >> avoid the current way we switch optimize_size global variable. >> >> Bootstrapped/regtested i686-linux, OK? > > It looks ok, but I think that PARAM_PREDICTABLE_BRANCH_OUTCOME > should be a target macro and not a param. > > Ok with that change, but please wait 24h to let others comment. It would be nice to see BRANCH_COST turn into a target hook rather than a macro, Since you have to touch every definition of it anyhow. I won't insist on it, though. Ian