From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 20166 invoked by alias); 4 May 2011 12:20:47 -0000 Received: (qmail 20157 invoked by uid 22791); 4 May 2011 12:20:46 -0000 X-SWARE-Spam-Status: No, hits=-2.1 required=5.0 tests=AWL,BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from smtp-out.google.com (HELO smtp-out.google.com) (216.239.44.51) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 04 May 2011 12:20:32 +0000 Received: from kpbe19.cbf.corp.google.com (kpbe19.cbf.corp.google.com [172.25.105.83]) by smtp-out.google.com with ESMTP id p44CKNPs018903 for ; Wed, 4 May 2011 05:20:28 -0700 Received: from ywf9 (ywf9.prod.google.com [10.192.6.9]) by kpbe19.cbf.corp.google.com with ESMTP id p44CKL6H020037 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NOT) for ; Wed, 4 May 2011 05:20:22 -0700 Received: by ywf9 with SMTP id 9so503295ywf.8 for ; Wed, 04 May 2011 05:20:21 -0700 (PDT) MIME-Version: 1.0 Received: by 10.151.12.10 with SMTP id p10mr981983ybi.184.1304511621549; Wed, 04 May 2011 05:20:21 -0700 (PDT) Received: by 10.151.41.13 with HTTP; Wed, 4 May 2011 05:20:21 -0700 (PDT) In-Reply-To: <20110504114442.1E15033C67@vlsi1.gnat.com> References: <201105041200.29307.ebotcazou@adacore.com> <20110504114442.1E15033C67@vlsi1.gnat.com> Date: Wed, 04 May 2011 12:23:00 -0000 Message-ID: Subject: Re: [google]: initialize language field for clone function struct From: Diego Novillo To: Richard Kenner Cc: joseph@codesourcery.com, davidxl@google.com, ebotcazou@gnat.com, gcc-patches@gcc.gnu.org, hubicka@ucw.cz, richard.guenther@gmail.com Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-System-Of-Record: true 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-05/txt/msg00289.txt.bz2 On Wed, May 4, 2011 at 07:44, Richard Kenner w= rote: >> That's what we should phase out. =C2=A0The eventual aim should be for (a) >> folding on GIMPLE (gimple-fold etc. - working with SSA not combined tree= s) >> as an optimization and (b) folding done by front ends only when required >> for language semantics (e.g. constant expressions). > > Why? =C2=A0Isn't it always better to optimize as early as you can when it= 's > easy? =C2=A0Why keep unfolded constants around at all? There are pros and cons about early optimization, actually. Generating extremely optimized IL very early can actually tie up subsequent passes. For instance, loop unrolling and vectorization. There are others in the literature. Diego.