From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Emanuel Berg Newsgroups: gmane.emacs.help Subject: Re: Knowing where a function has been used (bis) [Was: Re: Optimising Elisp code] Date: Wed, 10 Oct 2018 18:32:32 +0200 Organization: Aioe.org NNTP Server Message-ID: <86woqprcdb.fsf@zoho.com> References: <638fb7dc-6fc5-4645-8793-97a00038a3a8@googlegroups.com> <8hxojvzzzzzz.m4h.xxuns.g6.gal@portable.galex-713.eu> <20181006192457.GB7368@tuxteam.de> <86lg79yl54.fsf@zoho.com> <86d0slrb4h.fsf@zoho.com> <86d0sknoud.fsf@zoho.com> <86tvlvmxtz.fsf@zoho.com> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1539189204 1435 195.159.176.226 (10 Oct 2018 16:33:24 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Wed, 10 Oct 2018 16:33:24 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.4 (gnu/linux) To: help-gnu-emacs@gnu.org Original-X-From: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Wed Oct 10 18:33:20 2018 Return-path: Envelope-to: geh-help-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gAHQG-0000HT-15 for geh-help-gnu-emacs@m.gmane.org; Wed, 10 Oct 2018 18:33:20 +0200 Original-Received: from localhost ([::1]:58191 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gAHSM-0002gy-E7 for geh-help-gnu-emacs@m.gmane.org; Wed, 10 Oct 2018 12:35:30 -0400 Original-Path: usenet.stanford.edu!goblin2!goblin.stu.neva.ru!aioe.org!.POSTED!not-for-mail Original-Newsgroups: gnu.emacs.help Original-Lines: 30 Original-NNTP-Posting-Host: IYul6C8CwghWjVz/CRhiVw.user.gioia.aioe.org Original-X-Complaints-To: abuse@aioe.org Mail-Copies-To: never Cancel-Lock: sha1:rhEPIqMPGGxJaVD4cA84d4dHtJM= X-Notice: Filtered by postfilter v. 0.8.3 Original-Xref: usenet.stanford.edu gnu.emacs.help:224121 X-BeenThere: help-gnu-emacs@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: Users list for the GNU Emacs text editor List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: help-gnu-emacs-bounces+geh-help-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "help-gnu-emacs" Xref: news.gmane.org gmane.emacs.help:118247 Archived-At: Barry Margolin wrote: >> If we are talking the insanely long >> functions of Gnus, if the funcall overhead >> is the reason for that, I don't see why >> modularization plus inlining couldn't be one >> puzzle piece of the remedy. > > If a function is "insanely long" then > inlining will have negligible effect. > Funcall overhead is only relevant if the > function is really short, so it spends nearly > as much time calling the function as doing > the actual work of the function, AND you call > the function frequently enough that this > overhead adds up to something significant. The insanely long functions would be shorter if they, instead of doing one million things, called other functions to help them with that. This isn't done because it isn't fast enough. But if inline works as you describe it, some of that code could in fact be moved out of the insanely long function, while still not slowing it down with funcall overhead. -- underground experts united http://user.it.uu.se/~embe8573