From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3401 invoked by alias); 10 Dec 2001 21:42:24 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 3374 invoked from network); 10 Dec 2001 21:42:18 -0000 Received: from unknown (HELO alisier.wanadoo.fr) (193.252.19.55) by sources.redhat.com with SMTP; 10 Dec 2001 21:42:18 -0000 Received: from mel-rta10.wanadoo.fr (193.252.19.193) by alisier.wanadoo.fr; 10 Dec 2001 22:42:07 +0100 Received: from ulmo.localdomain (193.251.50.176) by mel-rta10.wanadoo.fr; 10 Dec 2001 22:40:42 +0100 Received: (from guerby@localhost) by ulmo.localdomain (8.11.6/8.11.6) id fBALW5L02834; Mon, 10 Dec 2001 22:32:05 +0100 Date: Mon, 10 Dec 2001 13:49:00 -0000 Message-Id: <200112102132.fBALW5L02834@ulmo.localdomain> X-Authentication-Warning: ulmo.localdomain: guerby set sender to guerby@acm.org using -f From: To: jbuck@synopsys.COM CC: torvalds@transmeta.com, pkoning@equallogic.com, gcc@gcc.gnu.org In-reply-to: <200112101931.LAA17422@atrus.synopsys.com> (message from Joe Buck on Mon, 10 Dec 2001 11:31:38 -0800 (PST)) Subject: Re: Optimizations on long long multiply/divide on PowerPC32 don't Reply-to: guerby@acm.org References: <200112101931.LAA17422@atrus.synopsys.com> X-SW-Source: 2001-12/txt/msg00552.txt.bz2 > No, even in C++ GCC does not inline functions without optimization. Same thing for Ada, although a GNAT specific pragma named Inline_Always exists, my reading of gigi code implies that it still requires optimizations to be active for the inlining to occur: gcc/ada/trans.c << static void process_inlined_subprograms (gnat_node) Node_Id gnat_node; { Entity_Id gnat_entity; Node_Id gnat_body; /* If we can inline, generate RTL for all the inlined subprograms. Define the entity first so we set DECL_EXTERNAL. */ if (optimize > 0 && ! flag_no_inline) >> gcc/ada/gnat_rm.texi << @findex Inline_Always @item pragma Inline_Always @noindent Syntax: @smallexample pragma Inline_Always (NAME [, NAME]); @end smallexample @noindent Similar to pragma @code{Inline} except that inlining is not subject to the use of option @code{-gnatn} for inter-unit inlining. >> Should I provide a patch to mention explicitely that optimization needs to be on for inlining to occur with Inline_Always? -- Laurent Guerby