From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Alan Mackenzie Newsgroups: gmane.emacs.devel Subject: bug-reference-prog-mode slows down CC Mode's scrolling by ~7% Date: Wed, 1 Sep 2021 17:33:06 +0000 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="14347"; mail-complaints-to="usenet@ciao.gmane.io" To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Wed Sep 01 19:34:02 2021 Return-path: Envelope-to: ged-emacs-devel@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1mLU7d-0003aA-Vm for ged-emacs-devel@m.gmane-mx.org; Wed, 01 Sep 2021 19:34:01 +0200 Original-Received: from localhost ([::1]:47506 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1mLU7b-00073f-Th for ged-emacs-devel@m.gmane-mx.org; Wed, 01 Sep 2021 13:33:59 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:51460) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1mLU6q-0006LP-9R for emacs-devel@gnu.org; Wed, 01 Sep 2021 13:33:12 -0400 Original-Received: from colin.muc.de ([193.149.48.1]:23506 helo=mail.muc.de) by eggs.gnu.org with smtp (Exim 4.90_1) (envelope-from ) id 1mLU6n-0005fJ-S3 for emacs-devel@gnu.org; Wed, 01 Sep 2021 13:33:11 -0400 Original-Received: (qmail 96002 invoked by uid 3782); 1 Sep 2021 17:33:07 -0000 Original-Received: from acm.muc.de (p4fe15865.dip0.t-ipconnect.de [79.225.88.101]) (using STARTTLS) by colin.muc.de (tmda-ofmipd) with ESMTP; Wed, 01 Sep 2021 19:33:06 +0200 Original-Received: (qmail 6548 invoked by uid 1000); 1 Sep 2021 17:33:06 -0000 Content-Disposition: inline X-Submission-Agent: TMDA/1.3.x (Ph3nix) X-Primary-Address: acm@muc.de Received-SPF: pass client-ip=193.149.48.1; envelope-from=acm@muc.de; helo=mail.muc.de X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.io gmane.emacs.devel:273674 Archived-At: Hello, Emacs. In the .dir-locals in our source tree, the entry for C Mode enables bug-reference-prog-mode. This minor mode makes direct use of jit-lock-functions, the low level hook which connects jit-lock with font-lock. The jit-lock functions have a feature whereby, when fontifying a 500-byte chunk, font-lock-fontify-region notifies jit-lock of the actual region just fontified, which is typically bigger than the suggested 500 bytes. This enables jit lock to proceed through the buffer without fontifying the same text twice. However, this mechanism is rendered ineffective if a second function is add-hook'd onto jit-lock-functions. Maybe this could be fixed, though it looks difficult. When applied to C Mode, bug-reference-prog-mode slows down a scroll from point-min to point-max by around 7%. Just how useful is bug-reference-prog-mode? Is it really worth this 7% slowdown? -- Alan Mackenzie (Nuremberg, Germany).