From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1140 invoked by alias); 12 Jul 2004 12:41:56 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 1127 invoked from network); 12 Jul 2004 12:41:55 -0000 Received: from unknown (HELO nikam.ms.mff.cuni.cz) (195.113.18.106) by sourceware.org with SMTP; 12 Jul 2004 12:41:55 -0000 Received: from camelot.ms.mff.cuni.cz (kampanus.ms.mff.cuni.cz [195.113.18.107]) by nikam.ms.mff.cuni.cz (Postfix) with SMTP id 4BB884DDED; Mon, 12 Jul 2004 14:41:56 +0200 (CEST) Received: by camelot.ms.mff.cuni.cz (sSMTP sendmail emulation); Mon, 12 Jul 2004 14:41:57 +0200 Date: Mon, 12 Jul 2004 18:05:00 -0000 From: Jan Hubicka To: Jason Merrill Cc: Jan Hubicka , Richard Henderson , Alexandre Oliva , gcc-patches@gcc.gnu.org Subject: Re: -funit-at-a-time x nested fns x inlining of enclosing fn Message-ID: <20040712124157.GJ31095@kam.mff.cuni.cz> References: <20040709211315.GD11072@redhat.com> <20040710102333.GA5262@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.3.28i X-SW-Source: 2004-07/txt/msg01256.txt.bz2 > On Sat, 10 Jul 2004 12:23:33 +0200, Jan Hubicka wrote: > > > One place where parent-child relationship is needed are the nested > > functions of extern inline functions. > > Tought these are static we must not emit these unless we inlined the > > origin unlike normal static functions in non-unit-at-a-time mode. > > Hmm? It seems to me that we need a copy iff we emit a call to the > function. How is this different from other statics? In non-unit-at-a-time we emit offline copy of all non-inline static functions, while emmiting of nested inline functions has been controled by inlineness of the outermost origin instead of function itself. There are tests in the testsuite for this behaviour and definitly in the context of extern inline it is only sane implementation of this crazy combinations of extensions. What about simply deferring each inlined function? I am traveling right now, but I will make patch for this in two days or so. Honza > > Jason