From unknown Sun Jun 22 17:17:06 2025 X-Loop: help-debbugs@gnu.org Subject: bug#23278: 25.0.92; font-lock-ensure is too slow Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 12 Apr 2016 19:50:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 23278 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 23278@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.146049056831147 (code B ref -1); Tue, 12 Apr 2016 19:50:01 +0000 Received: (at submit) by debbugs.gnu.org; 12 Apr 2016 19:49:28 +0000 Received: from localhost ([127.0.0.1]:33070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aq4JU-00086J-0S for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:28 -0400 Received: from eggs.gnu.org ([208.118.235.92]:43229) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aq4JS-000867-GL for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aq4JM-0002Bv-AB for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:21 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:41638) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aq4JM-0002Br-7N for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:20 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34200) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aq4JI-0003jx-5Y for bug-gnu-emacs@gnu.org; Tue, 12 Apr 2016 15:49:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aq4JF-0002Bg-0i for bug-gnu-emacs@gnu.org; Tue, 12 Apr 2016 15:49:16 -0400 Received: from mail-wm0-x22a.google.com ([2a00:1450:400c:c09::22a]:37276) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aq4JE-0002BZ-Pw for bug-gnu-emacs@gnu.org; Tue, 12 Apr 2016 15:49:12 -0400 Received: by mail-wm0-x22a.google.com with SMTP id n3so41949907wmn.0 for ; Tue, 12 Apr 2016 12:49:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:subject:date:message-id:mime-version; bh=JwqZVQzSQGkX2B92JbYSI0rwsy3h4UfWqIDaELhKPwo=; b=NUSDOFkelCpr0c8+T2EJ3mxz0tmUjKwcr5C4IXXDKqLNnIuhA9rUMdjcJT+1aOtCyA cat6Gz+ayonaNIah60wH3/ZTDSsJ+C6V7ER65b5uHjeFSS1bdVkplVGqHjxb0uk01xCB Wtv4EcuN7iN7niUFQb0kW+UFjne2ZcWIlqOn+5XsLa0qdcuwexasNvPqg+8ImTthpylR QzfrE5rGxsJ8bLV3eJlCGUALTPRFeq0jh0qYSbauSuUYyUxFj+ldyj4WIwFn8sQNNDqL qgCtC9S4wMmoFJ6czC4PhUWjUB3C/lIfrXyYZYQQ7ZQipwSZm26n4wXw/WUBzdzE/qO5 AOGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:subject:date:message-id :mime-version; bh=JwqZVQzSQGkX2B92JbYSI0rwsy3h4UfWqIDaELhKPwo=; b=cWsmPdEKC7V0dgDpIgiQc5x2AyH+lbGaPKV1paansbfGc8S0PVJGtKHLFByOLxqA94 J15QN3AoHejXe5WNIIrhaLGIUfDbKnzNhYmmIOT1RnkliWXXCNgHGYLwdId+j+HrSDDL IQf4QUVXbkf/A5/jSwkPeXfej3cfEJ9esy1QJjVYj0ViIZ7ayHvs9yelCjPuR5Ot9Svg 23/1clBOzKRopDl2TcVQ37AxXzptezZ7TYkgbH++yH3i9d5Q5ykXz724L9QbZ1D6/s6n qNccJb0UBy2DkrEwnDuvGO7nyzJ2NJs19j8W4Vu/yiSG8Rt9ChDR5BlR938zErmDV4U2 GmsQ== X-Gm-Message-State: AOPr4FVZp1HmV5L4n36HNaBS56IJkCa1Yq2BjkKX4njGVf/Xa30hNDhX8bdlIZsrItoFcA== X-Received: by 10.194.235.39 with SMTP id uj7mr5502356wjc.78.1460490552093; Tue, 12 Apr 2016 12:49:12 -0700 (PDT) Received: from axl ([185.105.175.24]) by smtp.gmail.com with ESMTPSA id gl8sm34944463wjb.30.2016.04.12.12.49.10 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 12 Apr 2016 12:49:11 -0700 (PDT) From: Dmitry Gutov Date: Tue, 12 Apr 2016 22:49:09 +0300 Message-ID: <86inzmy5e2.fsf@yandex.ru> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.8 (---) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.8 (---) Example: Open xdisp.c, navigate to the first line. Evaluate: (load "jit-lock") (benchmark 1000 '(font-lock-ensure (line-beginning-position) (line-end-position))) => 0.66s Which puts a dampener on the idea of syntax highlighting xref results in the open files. With the patch below, the benchmark executes 100 times faster. OK to apply? diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el index 810c220..a582c48 100644 --- a/lisp/jit-lock.el +++ b/lisp/jit-lock.el @@ -387,10 +387,11 @@ jit-lock-fontify-now ;; Fontify chunks beginning at START. The end of a ;; chunk is either `end', or the start of a region ;; before `end' that has already been fontified. - (while (and start (< start end)) - ;; Determine the end of this chunk. - (setq next (or (text-property-any start end 'fontified t) - end)) + (while (and start + (< start + ;; Determine the end of this chunk. + (setq next (or (text-property-any start end 'fontified t) + end)))) ;; Fontify the chunk, and mark it as fontified. ;; We mark it first, to make sure that we don't indefinitely In GNU Emacs 25.0.92.12 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.7) of 2016-04-10 built on axl Repository revision: 20686f7a6430ef37f17b3866f14e7dc3095c1524 Windowing system distributor 'The X.Org Foundation', version 11.0.11702000 System Description: Ubuntu 15.10 From debbugs-submit-bounces@debbugs.gnu.org Mon Apr 25 19:26:40 2016 Received: (at control) by debbugs.gnu.org; 25 Apr 2016 23:26:40 +0000 Received: from localhost ([127.0.0.1]:47129 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aupto-0001yM-Iu for submit@debbugs.gnu.org; Mon, 25 Apr 2016 19:26:40 -0400 Received: from hermes.netfonds.no ([80.91.224.195]:49705) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1auptn-0001yF-SF for control@debbugs.gnu.org; Mon, 25 Apr 2016 19:26:40 -0400 Received: from cm-84.215.1.64.getinternet.no ([84.215.1.64] helo=stories) by hermes.netfonds.no with esmtpsa (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.84_2) (envelope-from ) id 1auptl-0001NW-PN for control@debbugs.gnu.org; Tue, 26 Apr 2016 01:26:39 +0200 Date: Tue, 26 Apr 2016 01:26:37 +0200 Message-Id: To: control@debbugs.gnu.org From: Lars Magne Ingebrigtsen Subject: control message for bug #23278 X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.0 (/) tags 23278 patch From unknown Sun Jun 22 17:17:06 2025 X-Loop: help-debbugs@gnu.org Subject: bug#23278: 25.0.92; font-lock-ensure is too slow Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sat, 07 May 2016 08:28:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23278 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Dmitry Gutov Cc: 23278@debbugs.gnu.org Reply-To: Eli Zaretskii Received: via spool by 23278-submit@debbugs.gnu.org id=B23278.146260964817126 (code B ref 23278); Sat, 07 May 2016 08:28:01 +0000 Received: (at 23278) by debbugs.gnu.org; 7 May 2016 08:27:28 +0000 Received: from localhost ([127.0.0.1]:42267 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ayxaC-0004SA-7t for submit@debbugs.gnu.org; Sat, 07 May 2016 04:27:28 -0400 Received: from eggs.gnu.org ([208.118.235.92]:44134) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ayxaA-0004Ry-Ev for 23278@debbugs.gnu.org; Sat, 07 May 2016 04:27:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ayxZz-0008Ms-FP for 23278@debbugs.gnu.org; Sat, 07 May 2016 04:27:21 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_05,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:34042) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ayxZz-0008Mo-CY; Sat, 07 May 2016 04:27:15 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3810 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1ayxZw-0000Ht-AF; Sat, 07 May 2016 04:27:13 -0400 Date: Sat, 07 May 2016 11:27:09 +0300 Message-Id: <83wpn6e0iq.fsf@gnu.org> From: Eli Zaretskii In-reply-to: <86inzmy5e2.fsf@yandex.ru> (message from Dmitry Gutov on Tue, 12 Apr 2016 22:49:09 +0300) References: <86inzmy5e2.fsf@yandex.ru> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.1 (-------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.1 (-------) > From: Dmitry Gutov > Date: Tue, 12 Apr 2016 22:49:09 +0300 > > Example: > > Open xdisp.c, navigate to the first line. Evaluate: > > (load "jit-lock") > (benchmark 1000 '(font-lock-ensure (line-beginning-position) > (line-end-position))) > > => 0.66s > > Which puts a dampener on the idea of syntax highlighting xref results in > the open files. > > With the patch below, the benchmark executes 100 times faster. > OK to apply? If you run with this since the time of your message and saw no problems, please push to emacs-25. Otherwise, to master. Thanks. From unknown Sun Jun 22 17:17:06 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: Dmitry Gutov Subject: bug#23278: closed (Re: bug#23278: 25.0.92; font-lock-ensure is too slow) Message-ID: References: <3a462157-fa3d-3f0d-6a66-4bf480ecb765@yandex.ru> <86inzmy5e2.fsf@yandex.ru> X-Gnu-PR-Message: they-closed 23278 X-Gnu-PR-Package: emacs X-Gnu-PR-Keywords: patch Reply-To: 23278@debbugs.gnu.org Date: Sat, 07 May 2016 23:12:01 +0000 Content-Type: multipart/mixed; boundary="----------=_1462662721-5643-1" This is a multi-part message in MIME format... ------------=_1462662721-5643-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #23278: 25.0.92; font-lock-ensure is too slow which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 23278@debbugs.gnu.org. --=20 23278: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D23278 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1462662721-5643-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 23278-done) by debbugs.gnu.org; 7 May 2016 23:11:08 +0000 Received: from localhost ([127.0.0.1]:42988 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azBNM-0001Rv-HJ for submit@debbugs.gnu.org; Sat, 07 May 2016 19:11:08 -0400 Received: from mail-wm0-f50.google.com ([74.125.82.50]:36674) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azBNK-0001RL-Gb for 23278-done@debbugs.gnu.org; Sat, 07 May 2016 19:11:06 -0400 Received: by mail-wm0-f50.google.com with SMTP id n129so96079388wmn.1 for <23278-done@debbugs.gnu.org>; Sat, 07 May 2016 16:11:06 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=wIjQ0zLOcgaWpV+SanQ8Wii2OKkb2eAY/i1Gbhzi9B8=; b=0MkwqvRO/vFPYskkXDikDyBSz6IAnudB0PpeUucynOYshH9U8jmFaJXT5M8KnH89Sc R+I1l3uDCoceM3IlaC7owbXdhAWYNHubrmeMB+5wFlf7CNDi9BZEv5S6n0EebreJwLku lK4gc5+AMPDaib4lEQysEa8qlLO4an+6Gv6yGgLVs0dCdDvYiqe/67lFCCKiuuT1t5dw wubBrq/b+lm32i60zApSkchBgVnL0Znok5mpcLRKvp30wt/0P/unRmhjMGYHAtsEae07 ZsPCA6KHDzDNsiWy8qNjo2S1ecojYEXt7f0ONuHi6BwvKOkVstYYRkyrxVmbK1JQrOVk u6IA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:to:references:cc:from:message-id :date:user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=wIjQ0zLOcgaWpV+SanQ8Wii2OKkb2eAY/i1Gbhzi9B8=; b=F5KaVmEgiJMhRkO/gGq+wTYW5I3ZJHPX2/AeYVc/2tGyFFbfxAuVBTXKFnL9Ge1E8D /E6R4x23Axso6O29SwjVYoXczN8G+pbXlBBnPGMvvKGJxzgyxFJL2JEFFExFwwPJGrDx nZMPsGNDnQyaFtWb/tU69Jk7pia2ThLIDf3SGuIOgGK3QDP+6fn78ntNGisprFZNtDjC 8h6fjDfmFqdEhxqcG0yvtfy9YUKXRT58BqF8JFk3437j/f6BVrzrQ9hQ8nPwHQ49bJx/ lgXv2gjlp7jAYCEK/K4epeogbu1AwBTuTMx808qYLZz3Bq/MJzZUrsdP20bnJaUVuD+l 200g== X-Gm-Message-State: AOPr4FXQEDsYyrgQiXjEf3N84PtjA1gWnye0GGAjRJ/RgTAkWuX0gYe4n2HS8ZELNXPJiQ== X-Received: by 10.28.72.132 with SMTP id v126mr3972503wma.49.1462662628813; Sat, 07 May 2016 16:10:28 -0700 (PDT) Received: from [192.168.1.2] ([185.105.175.24]) by smtp.googlemail.com with ESMTPSA id vu4sm22406588wjc.27.2016.05.07.16.10.27 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 07 May 2016 16:10:28 -0700 (PDT) Subject: Re: bug#23278: 25.0.92; font-lock-ensure is too slow To: Eli Zaretskii References: <86inzmy5e2.fsf@yandex.ru> <83wpn6e0iq.fsf@gnu.org> From: Dmitry Gutov Message-ID: <3a462157-fa3d-3f0d-6a66-4bf480ecb765@yandex.ru> Date: Sun, 8 May 2016 02:10:26 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1 MIME-Version: 1.0 In-Reply-To: <83wpn6e0iq.fsf@gnu.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.5 (/) X-Debbugs-Envelope-To: 23278-done Cc: 23278-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) On 05/07/2016 11:27 AM, Eli Zaretskii wrote: > If you run with this since the time of your message and saw no > problems, please push to emacs-25. Otherwise, to master. I didn't, and upon further consideration that patch had a bug (failed 'jit-lock-fontify-mends-the-gaps' in the newly added jit-lock-tests.el). I've pushed an updated patch to master, thanks. ------------=_1462662721-5643-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 12 Apr 2016 19:49:28 +0000 Received: from localhost ([127.0.0.1]:33070 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aq4JU-00086J-0S for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:28 -0400 Received: from eggs.gnu.org ([208.118.235.92]:43229) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1aq4JS-000867-GL for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:26 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aq4JM-0002Bv-AB for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:21 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:41638) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aq4JM-0002Br-7N for submit@debbugs.gnu.org; Tue, 12 Apr 2016 15:49:20 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:34200) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aq4JI-0003jx-5Y for bug-gnu-emacs@gnu.org; Tue, 12 Apr 2016 15:49:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aq4JF-0002Bg-0i for bug-gnu-emacs@gnu.org; Tue, 12 Apr 2016 15:49:16 -0400 Received: from mail-wm0-x22a.google.com ([2a00:1450:400c:c09::22a]:37276) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aq4JE-0002BZ-Pw for bug-gnu-emacs@gnu.org; Tue, 12 Apr 2016 15:49:12 -0400 Received: by mail-wm0-x22a.google.com with SMTP id n3so41949907wmn.0 for ; Tue, 12 Apr 2016 12:49:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:from:to:subject:date:message-id:mime-version; bh=JwqZVQzSQGkX2B92JbYSI0rwsy3h4UfWqIDaELhKPwo=; b=NUSDOFkelCpr0c8+T2EJ3mxz0tmUjKwcr5C4IXXDKqLNnIuhA9rUMdjcJT+1aOtCyA cat6Gz+ayonaNIah60wH3/ZTDSsJ+C6V7ER65b5uHjeFSS1bdVkplVGqHjxb0uk01xCB Wtv4EcuN7iN7niUFQb0kW+UFjne2ZcWIlqOn+5XsLa0qdcuwexasNvPqg+8ImTthpylR QzfrE5rGxsJ8bLV3eJlCGUALTPRFeq0jh0qYSbauSuUYyUxFj+ldyj4WIwFn8sQNNDqL qgCtC9S4wMmoFJ6czC4PhUWjUB3C/lIfrXyYZYQQ7ZQipwSZm26n4wXw/WUBzdzE/qO5 AOGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:from:to:subject:date:message-id :mime-version; bh=JwqZVQzSQGkX2B92JbYSI0rwsy3h4UfWqIDaELhKPwo=; b=cWsmPdEKC7V0dgDpIgiQc5x2AyH+lbGaPKV1paansbfGc8S0PVJGtKHLFByOLxqA94 J15QN3AoHejXe5WNIIrhaLGIUfDbKnzNhYmmIOT1RnkliWXXCNgHGYLwdId+j+HrSDDL IQf4QUVXbkf/A5/jSwkPeXfej3cfEJ9esy1QJjVYj0ViIZ7ayHvs9yelCjPuR5Ot9Svg 23/1clBOzKRopDl2TcVQ37AxXzptezZ7TYkgbH++yH3i9d5Q5ykXz724L9QbZ1D6/s6n qNccJb0UBy2DkrEwnDuvGO7nyzJ2NJs19j8W4Vu/yiSG8Rt9ChDR5BlR938zErmDV4U2 GmsQ== X-Gm-Message-State: AOPr4FVZp1HmV5L4n36HNaBS56IJkCa1Yq2BjkKX4njGVf/Xa30hNDhX8bdlIZsrItoFcA== X-Received: by 10.194.235.39 with SMTP id uj7mr5502356wjc.78.1460490552093; Tue, 12 Apr 2016 12:49:12 -0700 (PDT) Received: from axl ([185.105.175.24]) by smtp.gmail.com with ESMTPSA id gl8sm34944463wjb.30.2016.04.12.12.49.10 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 12 Apr 2016 12:49:11 -0700 (PDT) From: Dmitry Gutov To: bug-gnu-emacs@gnu.org Subject: 25.0.92; font-lock-ensure is too slow Date: Tue, 12 Apr 2016 22:49:09 +0300 Message-ID: <86inzmy5e2.fsf@yandex.ru> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.8 (---) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -3.8 (---) Example: Open xdisp.c, navigate to the first line. Evaluate: (load "jit-lock") (benchmark 1000 '(font-lock-ensure (line-beginning-position) (line-end-position))) => 0.66s Which puts a dampener on the idea of syntax highlighting xref results in the open files. With the patch below, the benchmark executes 100 times faster. OK to apply? diff --git a/lisp/jit-lock.el b/lisp/jit-lock.el index 810c220..a582c48 100644 --- a/lisp/jit-lock.el +++ b/lisp/jit-lock.el @@ -387,10 +387,11 @@ jit-lock-fontify-now ;; Fontify chunks beginning at START. The end of a ;; chunk is either `end', or the start of a region ;; before `end' that has already been fontified. - (while (and start (< start end)) - ;; Determine the end of this chunk. - (setq next (or (text-property-any start end 'fontified t) - end)) + (while (and start + (< start + ;; Determine the end of this chunk. + (setq next (or (text-property-any start end 'fontified t) + end)))) ;; Fontify the chunk, and mark it as fontified. ;; We mark it first, to make sure that we don't indefinitely In GNU Emacs 25.0.92.12 (x86_64-unknown-linux-gnu, GTK+ Version 3.16.7) of 2016-04-10 built on axl Repository revision: 20686f7a6430ef37f17b3866f14e7dc3095c1524 Windowing system distributor 'The X.Org Foundation', version 11.0.11702000 System Description: Ubuntu 15.10 ------------=_1462662721-5643-1-- From unknown Sun Jun 22 17:17:06 2025 X-Loop: help-debbugs@gnu.org Subject: bug#23278: 25.0.92; font-lock-ensure is too slow Resent-From: Glenn Morris Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 09 May 2016 00:30:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23278 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: 23278@debbugs.gnu.org Cc: dgutov@yandex.ru Received: via spool by 23278-submit@debbugs.gnu.org id=B23278.146275374818366 (code B ref 23278); Mon, 09 May 2016 00:30:02 +0000 Received: (at 23278) by debbugs.gnu.org; 9 May 2016 00:29:08 +0000 Received: from localhost ([127.0.0.1]:43594 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azZ4O-0004mA-6a for submit@debbugs.gnu.org; Sun, 08 May 2016 20:29:08 -0400 Received: from eggs.gnu.org ([208.118.235.92]:35396) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azZ4M-0004ll-JC for 23278@debbugs.gnu.org; Sun, 08 May 2016 20:29:06 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1azZ4F-0002l0-T4 for 23278@debbugs.gnu.org; Sun, 08 May 2016 20:29:01 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-4.0 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:50086) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1azZ4F-0002ka-Pq; Sun, 08 May 2016 20:28:59 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1azZ4C-00040i-KP; Sun, 08 May 2016 20:28:56 -0400 From: Glenn Morris References: <86inzmy5e2.fsf@yandex.ru> <83wpn6e0iq.fsf@gnu.org> <3a462157-fa3d-3f0d-6a66-4bf480ecb765@yandex.ru> X-Spook: Kosovo Agfa BATF terrorist Southwest CDMA Environmental X-Ran: cV~F-)Pxt1[+xBdn,wY[hRf2rP|yk5wpIP]lSIPN]K1UL9BM3>?Qw4LG/e?.mE]H\18hCc X-Hue: red X-Attribution: GM Date: Sun, 08 May 2016 20:28:56 -0400 In-Reply-To: <3a462157-fa3d-3f0d-6a66-4bf480ecb765@yandex.ru> (Dmitry Gutov's message of "Sun, 8 May 2016 02:10:26 +0300") Message-ID: <8ofutsm5vb.fsf@fencepost.gnu.org> User-Agent: Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -7.1 (-------) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -7.1 (-------) Dmitry Gutov wrote: > On 05/07/2016 11:27 AM, Eli Zaretskii wrote: > >> If you run with this since the time of your message and saw no >> problems, please push to emacs-25. Otherwise, to master. > > I didn't, and upon further consideration that patch had a bug (failed > jit-lock-fontify-mends-the-gaps' in the newly added > jit-lock-tests.el). I don't know if it related, but jit-lock tests currently fail, eg http://hydra.nixos.org/build/35362603 From unknown Sun Jun 22 17:17:06 2025 X-Loop: help-debbugs@gnu.org Subject: bug#23278: 25.0.92; font-lock-ensure is too slow Resent-From: Dmitry Gutov Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 09 May 2016 00:44:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23278 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch To: Glenn Morris , 23278@debbugs.gnu.org Received: via spool by 23278-submit@debbugs.gnu.org id=B23278.146275458419588 (code B ref 23278); Mon, 09 May 2016 00:44:01 +0000 Received: (at 23278) by debbugs.gnu.org; 9 May 2016 00:43:04 +0000 Received: from localhost ([127.0.0.1]:43600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azZHs-00055r-FM for submit@debbugs.gnu.org; Sun, 08 May 2016 20:43:04 -0400 Received: from mail-wm0-f52.google.com ([74.125.82.52]:37169) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1azZHq-00055N-8S for 23278@debbugs.gnu.org; Sun, 08 May 2016 20:43:02 -0400 Received: by mail-wm0-f52.google.com with SMTP id a17so160518548wme.0 for <23278@debbugs.gnu.org>; Sun, 08 May 2016 17:43:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:subject:to:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=Pf9ymQmtDgelQvQNAzL/uQg4orvaAD3vICZm3s6qOGw=; b=CXEWf1wd5TJkjWc+Q9Wd7SvSSnDYZKhQufpvL3hUDIUK2w4WDXOJG/SN6G8LMF9X50 TKGa+Env1+49gvdL70d3FTWVoRuv5gLAQTNYyJHJGH0wbTgBwrxEC3v1XHr2ZouGuTZB NpHqA68vHbJ+lLS98IEruOFCRLMs7xIdGhmNn+OaF/Sf47B6Lc8yn6kpCG1gPoeUU6lv hXh/82ccSgkfMLVPR9hOO5ptXDLtw/rctpAkhTfiN7QAuCNJQCZkPYvfo7ro+EgY/Iaa P7Zsoe1pFtQkOkOlsY+IC7KyVbUsWSRw0Juy54p12r9Bav5XAluxqWVtsLacbBmn1OQj HVeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:to:references:from:message-id :date:user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=Pf9ymQmtDgelQvQNAzL/uQg4orvaAD3vICZm3s6qOGw=; b=VONHeVppXF5DsVL6o7JR/W7PmPGHdcNRckHln/pnP0kSeCUIn62qZpnW5WNbIuLlFM fU6SIJA9H7thwYCBj763lE6/1XVuO+js8aXvtSOmK1ZZwLw7/RXbshAathEo3jaEMADZ 5LLKX3FZrOx+6GhIkD+KEYkeGFu3iZuHjxlIk6ILIfP9H3CpzhD2Yc5KdZxmszOGL89B 68CLYTLIZ32yOPi72HVDy6b7yAzSC1EoH1Pjzzz2b1oWxcDQQKAyMzKwq0L1ZGLZlohu MZ3diKWgR3LUJvrvNqTGFOlTKKKXTniGhly5M571zvxR6eqPq8QA4neoQAgth4rtTfwx cxiA== X-Gm-Message-State: AOPr4FU1WJBadDDIDJ6lYFeXOx38sEdP98BNaiHDrXyv26AGcQQhNoS5E4KNgPtuB2gU0w== X-Received: by 10.28.128.83 with SMTP id b80mr8486223wmd.89.1462754576492; Sun, 08 May 2016 17:42:56 -0700 (PDT) Received: from [192.168.1.2] ([185.105.175.24]) by smtp.googlemail.com with ESMTPSA id lm1sm28005875wjc.25.2016.05.08.17.42.55 (version=TLSv1/SSLv3 cipher=OTHER); Sun, 08 May 2016 17:42:55 -0700 (PDT) References: <86inzmy5e2.fsf@yandex.ru> <83wpn6e0iq.fsf@gnu.org> <3a462157-fa3d-3f0d-6a66-4bf480ecb765@yandex.ru> <8ofutsm5vb.fsf@fencepost.gnu.org> From: Dmitry Gutov Message-ID: <075350ab-bc80-3303-9ee9-bcbcf3f48913@yandex.ru> Date: Mon, 9 May 2016 03:42:54 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.1 MIME-Version: 1.0 In-Reply-To: <8ofutsm5vb.fsf@fencepost.gnu.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.5 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.5 (/) On 05/09/2016 03:28 AM, Glenn Morris wrote: > I don't know if it related, but jit-lock tests currently fail, eg > http://hydra.nixos.org/build/35362603 Thanks for letting me know. It's not a regression, they were failing in noninteractive mode. Should be fixed now.