unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Stefan Monnier <monnier@iro.umontreal.ca>
To: Dan Nicolaescu <dann@ics.uci.edu>
Cc: Eli Zaretskii <eliz@gnu.org>,
	Andreas Schwab <schwab@linux-m68k.org>,
	emacs-devel@gnu.org
Subject: Re: BASE_PURESIZE
Date: Sat, 24 Oct 2009 15:01:21 -0400	[thread overview]
Message-ID: <jwvocnw1uzy.fsf-monnier+emacs@gnu.org> (raw)
In-Reply-To: <200910241727.n9OHReEu007324@godzilla.ics.uci.edu> (Dan Nicolaescu's message of "Sat, 24 Oct 2009 10:27:40 -0700 (PDT)")

>> . The default value of SYSTEM_PURESIZE_EXTRA is zero, and is not
>> increased for GUI builds.  This causes a --without-x build to waste
>> some 100KB.  If we want to handle this, the basic constant in
>> BASE_PURESIZE can be as low as 1290000 and SYSTEM_PURESIZE_EXTRA
>> should have its default at 140000 for GUI builds, zero otherwise.

I'm not terribly concerned about wasting 100KB in pure space (or even
more than that): it's space we don't ever touch or look at, so it's
never brought into RAM.  IOW it's very cheap.
OTOH checking what really goes into purespace and why something doesn't
is good, because moving data into purespace is good.


        Stefan


PS: Regarding the recent purecopy of autoload's file names: why not just
purecopy the whole autload list?


--- src/eval.c	2009-10-24 12:32:03 +0000
+++ src/eval.c	2009-10-24 18:32:23 +0000
@@ -2112,10 +2148,7 @@
      (function, file, docstring, interactive, type)
      Lisp_Object function, file, docstring, interactive, type;
 {
-  Lisp_Object args[4];
-
   CHECK_SYMBOL (function);
-  CHECK_STRING (file);
 
   /* If function is defined and not as an autoload, don't override */
   if (!EQ (XSYMBOL (function)->function, Qunbound)
@@ -2128,15 +2161,13 @@
        not useful and else we get loads of them from the loaddefs.el.  */
     LOADHIST_ATTACH (Fcons (Qautoload, function));
 
-  if (NILP (Vpurify_flag))
-    args[0] = file;
-  else
-    args[0] = Fpurecopy (file);
-  args[1] = docstring;
-  args[2] = interactive;
-  args[3] = type;
-
-  return Ffset (function, Fcons (Qautoload, Flist (4, &args[0])));
+  if (!NILP (Vpurify_flag))
+    /* We don't want the docstring in purespace (instead,
+       Snarf-documentation should (hopefully) overwrite it).  */
+    docstring = make_number (0);
+  return Ffset (function,
+		Fpurecopy (list5 (Qautoload, file, docstring,
+				  interactive, type)));
 }
 
 Lisp_Object





  reply	other threads:[~2009-10-24 19:01 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-10-23 11:00 BASE_PURESIZE Eli Zaretskii
2009-10-23 11:39 ` BASE_PURESIZE Andreas Schwab
2009-10-23 14:10   ` BASE_PURESIZE Eli Zaretskii
2009-10-23 14:24     ` BASE_PURESIZE Andreas Schwab
2009-10-23 14:35       ` BASE_PURESIZE Eli Zaretskii
2009-10-23 14:50         ` BASE_PURESIZE Andreas Schwab
2009-10-24 10:05     ` BASE_PURESIZE Eli Zaretskii
2009-10-24 10:37       ` BASE_PURESIZE Andreas Schwab
2009-10-24 13:18         ` BASE_PURESIZE Eli Zaretskii
2009-10-24 17:27           ` BASE_PURESIZE Dan Nicolaescu
2009-10-24 19:01             ` Stefan Monnier [this message]
2009-10-25  8:24               ` BASE_PURESIZE Dan Nicolaescu
2009-10-30  1:17                 ` defcustom standard-value (was: Re: BASE_PURESIZE) Dan Nicolaescu
2009-10-24 19:04             ` BASE_PURESIZE Chong Yidong
2009-10-24 19:16               ` BASE_PURESIZE Dan Nicolaescu
2009-10-23 11:58 ` BASE_PURESIZE Dan Nicolaescu
2009-10-23 14:24 ` BASE_PURESIZE Juanma Barranquero
2009-10-24  4:41   ` BASE_PURESIZE Stephen J. Turnbull
2009-10-24  6:47     ` BASE_PURESIZE Dan Nicolaescu
2009-10-24  8:24       ` BASE_PURESIZE Stephen J. Turnbull
2009-10-24 10:22     ` BASE_PURESIZE Eli Zaretskii
2009-10-24 11:14       ` BASE_PURESIZE Stephen J. Turnbull
  -- strict thread matches above, loose matches on Subject: below --
2006-08-05  2:16 BASE_PURESIZE Nick Roberts
2006-08-05  9:41 ` BASE_PURESIZE Eli Zaretskii
2006-08-05 16:23   ` BASE_PURESIZE Reiner Steib
2006-08-05 18:51     ` BASE_PURESIZE Richard Stallman
2006-08-05 20:07       ` BASE_PURESIZE Reiner Steib
2006-08-06  4:43         ` BASE_PURESIZE Richard Stallman
2006-08-06  9:19           ` BASE_PURESIZE Reiner Steib
2006-08-06 19:40         ` BASE_PURESIZE Reiner Steib
     [not found]           ` <jebqqx393g.fsf@sykes.suse.de>
2006-08-07  3:53             ` BASE_PURESIZE Eli Zaretskii

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=jwvocnw1uzy.fsf-monnier+emacs@gnu.org \
    --to=monnier@iro.umontreal.ca \
    --cc=dann@ics.uci.edu \
    --cc=eliz@gnu.org \
    --cc=emacs-devel@gnu.org \
    --cc=schwab@linux-m68k.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).