From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.ciao.gmane.io!not-for-mail From: Eli Zaretskii Newsgroups: gmane.emacs.devel Subject: Re: Pure space and overflow question Date: Fri, 21 Feb 2020 16:16:29 +0200 Message-ID: <838skwja9u.fsf@gnu.org> References: <83y2sxjam7.fsf@gnu.org> <83blpsjelc.fsf@gnu.org> Injection-Info: ciao.gmane.io; posting-host="ciao.gmane.io:159.69.161.202"; logging-data="2791"; mail-complaints-to="usenet@ciao.gmane.io" Cc: emacs-devel@gnu.org To: Andrea Corallo Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane-mx.org@gnu.org Fri Feb 21 15:17:29 2020 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 1j597Q-0000bi-VS for ged-emacs-devel@m.gmane-mx.org; Fri, 21 Feb 2020 15:17:28 +0100 Original-Received: from localhost ([::1]:58830 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j597Q-0002hB-2H for ged-emacs-devel@m.gmane-mx.org; Fri, 21 Feb 2020 09:17:28 -0500 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:44671) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1j596u-00022P-W5 for emacs-devel@gnu.org; Fri, 21 Feb 2020 09:16:59 -0500 Original-Received: from fencepost.gnu.org ([2001:470:142:3::e]:33875) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1j596u-0006TI-NN; Fri, 21 Feb 2020 09:16:56 -0500 Original-Received: from [176.228.60.248] (port=1035 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1j596d-0005KG-VS; Fri, 21 Feb 2020 09:16:55 -0500 In-reply-to: (message from Andrea Corallo on Fri, 21 Feb 2020 13:54:42 +0000) X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] 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:245013 Archived-At: > From: Andrea Corallo > Cc: emacs-devel@gnu.org > Date: Fri, 21 Feb 2020 13:54:42 +0000 > > > That said, why does your configuration require more pure space than > > any other on that same platform? > > Effectively in comp.c are allocate object that goes into pure space and > all the code is under #ifdef HAVE_NATIVE_COMP. > > Also the constant objects present in every compilation unit can have a > small overhead respect to the elc one. This is because they include the > data used by the 'top_level_run' function. Do you really need the former to be pure, and to be dumped in general? If so, why? I think with portable dumper in place, we should have a more fine-grained distinction between the stuff that really needs to be dumped, and stuff that just happens to be there due to code that runs at loadup time. The latter should not be dumped, but instead should be re-created anew in every Emacs session. In particular, stuff that is needed for compilation should ideally not even be in memory until the user wants to compile something. Am I missing something?