From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.bugs Subject: bug#64712: 29.0.92; Emacs 29 with native compilation compiles cl-loaddefs.el on every startup Date: Sun, 03 Sep 2023 08:15:52 +0300 Message-ID: <83o7ij96rb.fsf@gnu.org> References: <83sf9l5gcd.fsf@gnu.org> <800ca9ba-a7bf-afb7-9f5c-28b728c46114@gutov.dev> <83o7jxnc33.fsf@gnu.org> <83y1j1lavn.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="23493"; mail-complaints-to="usenet@ciao.gmane.io" Cc: dmitry@gutov.dev, acorallo@gnu.org, stephen.molitor@icloud.com, 64712@debbugs.gnu.org To: Stefan Kangas Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Sep 03 07:17:12 2023 Return-path: Envelope-to: geb-bug-gnu-emacs@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 1qcfU0-0005vS-94 for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 03 Sep 2023 07:17:12 +0200 Original-Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1qcfTk-0000UR-RH; Sun, 03 Sep 2023 01:16:56 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qcfTg-0000U1-Js for bug-gnu-emacs@gnu.org; Sun, 03 Sep 2023 01:16:52 -0400 Original-Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1qcfTg-0005AE-Ba for bug-gnu-emacs@gnu.org; Sun, 03 Sep 2023 01:16:52 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1qcfTq-0005zD-2P for bug-gnu-emacs@gnu.org; Sun, 03 Sep 2023 01:17:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Eli Zaretskii Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 03 Sep 2023 05:17:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 64712 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: notabug Original-Received: via spool by 64712-submit@debbugs.gnu.org id=B64712.169371819622974 (code B ref 64712); Sun, 03 Sep 2023 05:17:02 +0000 Original-Received: (at 64712) by debbugs.gnu.org; 3 Sep 2023 05:16:36 +0000 Original-Received: from localhost ([127.0.0.1]:39061 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcfTQ-0005yU-07 for submit@debbugs.gnu.org; Sun, 03 Sep 2023 01:16:36 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:47816) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1qcfTK-0005yE-V1 for 64712@debbugs.gnu.org; Sun, 03 Sep 2023 01:16:34 -0400 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1qcfT4-00055j-RM; Sun, 03 Sep 2023 01:16:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=gnu.org; s=fencepost-gnu-org; h=References:Subject:In-Reply-To:To:From:Date: mime-version; bh=AEPf6i6GXDyG8gJBfIxIjStFdMz37cMd86VvJigGF8A=; b=kCWHseeG+z5b s1lYJla6TxM/VGCI5zlDj2gCU9tXKlV63J/uCPFrYgtt8attV5/xCIv/KKOfBtoaWKCAOdihWPSbY +hyLP/4QJg+z336LhQYEtsTu1FHXK41VDx2iclIrFmb9vudS5rqetQwtClN/BwWNmROsSEqRNuwKs vMKwrZ5aXtsOMcXXG4ce6TOZJE5iviEhyAHWcdtKHDVRQHZeIwDWoFDuP/zH4xJJDuo+ZmOYZbPYs 9NglN2C2Id2q24s4AwQ3JuBcOxfFtG3IdMi7EiDL8Na4WHsVvO1vdGknhUix8tm4lMNTrpKk0Katg FN/U71a58w1xpb35JkPNeQ==; In-Reply-To: (message from Stefan Kangas on Sat, 2 Sep 2023 14:50:08 -0700) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Xref: news.gmane.io gmane.emacs.bugs:269071 Archived-At: > From: Stefan Kangas > Date: Sat, 2 Sep 2023 14:50:08 -0700 > Cc: Dmitry Gutov , stephen.molitor@icloud.com, 64712@debbugs.gnu.org > > Andrea Corallo writes: > > > Eli Zaretskii writes: > > > >>> Date: Thu, 27 Jul 2023 16:36:18 +0300 > >>> Cc: stephen.molitor@icloud.com, 64712@debbugs.gnu.org > >>> From: Dmitry Gutov > >>> > >>> I suppose another approach would be along the lines of creating, for > >>> every such file, an artefact in native-compile cache anyway, with > >>> contents which would load the original uncompiled file (I'm assuming > >>> this step won't require extracting the file?). > >>> > >>> Not sure if this is worth the hassle, though. > >> > >> It definitely isn't. > > > > The closest solution to what Dmitry suggested is to actually remove the > > cookie from the file so the eln is produced and we don't try to compile > > it anymore. It doesn't harm, again not the most elegant exit strategy > > but at least is for free :) > > What was the reason that those cookies were added in the first place? Not to slow down the build unnecessarily, I think. Basically, the same reason why we have "no-byte-compile: t" in some files: you get no gains from doing that, you just waste CPU time. And the waste is much more significant with native compilation. > I see that they were added in commit 6c11214dc112, but it doesn't > explain why. When that happens, I always search the mailing lists around the date of the commit. In this case, I found https://lists.gnu.org/archive/html/emacs-devel/2022-09/msg00168.html > I personally can't see that it would make much of a difference if we > have them or not, but maybe I'm missing something. If nothing else, it will slow down startup (because each .eln files needs to be loaded via dlopen, as opposed to .elc that is dumped into the pdumper file), albeit insignificantly. But if we do this with all the autoload files we have, that could slow down in a more tangible ways. So basically we have here two minor annoyances: you can solve one, but then you "gain" the other one.