From owner-cvs-all@FreeBSD.ORG Wed Jul 23 11:53:22 2003 Return-Path: Delivered-To: cvs-all@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BDC7937B401 for ; Wed, 23 Jul 2003 11:53:22 -0700 (PDT) Received: from mail.speakeasy.net (mail15.speakeasy.net [216.254.0.215]) by mx1.FreeBSD.org (Postfix) with ESMTP id 35DE643F3F for ; Wed, 23 Jul 2003 11:53:21 -0700 (PDT) (envelope-from jhb@FreeBSD.org) Received: (qmail 4088 invoked from network); 23 Jul 2003 18:53:19 -0000 Received: from unknown (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender )encrypted SMTP for ; 23 Jul 2003 18:53:19 -0000 Received: from laptop.baldwin.cx (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.9/8.12.9) with ESMTP id h6NIr9GI046426; Wed, 23 Jul 2003 14:53:09 -0400 (EDT) (envelope-from jhb@FreeBSD.org) Message-ID: X-Mailer: XFMail 1.5.4 on FreeBSD X-Priority: 3 (Normal) Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 8bit MIME-Version: 1.0 In-Reply-To: <24542.1058985134@critter.freebsd.dk> Date: Wed, 23 Jul 2003 14:53:26 -0400 (EDT) From: John Baldwin To: Poul-Henning Kamp cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/dev/rp rp.c X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 23 Jul 2003 18:53:23 -0000 On 23-Jul-2003 Poul-Henning Kamp wrote: > In message , John Baldwin writes: >> >>On 23-Jul-2003 Poul-Henning Kamp wrote: >>> phk 2003/07/23 11:03:23 PDT >>> >>> FreeBSD src repository >>> >>> Modified files: >>> sys/dev/rp rp.c >>> Log: >>> Undo single-intance inlining which is way above the comfort limit for GCC. >> >>Single instance inlining can not hurt. It can help by reducing call >>stack depth and code size however. I thought you were for reducing code >>size, not increasing it. Please use __always_inline to shut up gcc >>instead of de-inlining for single instance inlines. > > Please provide data showing actual improvement for inlining. text data bss dec hex filename 23554 440 1088 25082 61fa rp.o.both 23421 440 1088 24949 6175 rp.o.non 23394 440 1088 24922 615a rp.o.recv Inlining both is worse than inlining neither, but inlining just rp_do_receive() saves a whopping 27 bytes. Even inlining both is just a difference of 133 bytes or almost 0.5% of the code. > If I changed this to __always_inline, I would change the code generated, > to start inlining these functions. We don't know the effect of that. Bull. We've been inlining these functions in 4.x and the like for quite some time since if I'm reading things correctly gcc didn't start to refuse inlining until gcc 3.x. > Instead I preserve the status quo by removing the inline request which > GCC ignores. No, you are just setting the results of a gcc bug in stone. In FreeBSD < 5.0 the status quo is to inline, and there are a lot more of those releases than 5.0 and 5.1. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve!" - http://www.FreeBSD.org/