emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Emacs-diffs] trunk r117941: Default to stack objects on non-GNU/Lin


From: Dmitry Antipov
Subject: Re: [Emacs-diffs] trunk r117941: Default to stack objects on non-GNU/Linux, non-DOS_NT platforms.
Date: Thu, 25 Sep 2014 20:12:01 +0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.1

On 09/25/2014 04:52 PM, Stefan Monnier wrote:

Actually, I can't see how workloads will affect the result.

Hm...for example, we don't allocate too much stack objects when byte-compile;
but we allocate substantial amount of them when attaching text properties in
a large buffer.

What kind of feedback do you expect (other than bug-reports)?

If I had been aware of this, I would do everything myself.  Unfortunately
people uses Emacs in a lot of different ways :-).

IIUC the point of this new code is to improve performance

Yes.  I should say that I've seen small but stable improvements before r117942,
but adding extra precautions against stack overflow makes them really 
negligible.
This means that we're going to an overengineered feature with no benefits.
IMO we should make it fast rather than commonly used.  For example, it's better
to avoid local_cons in loops (unless loop is bounded by small compile-time 
constant)
than check against MAX_ALLOCA each time; it may be worth trying to use
build_local_string only for a short unibyte compile-time string constants, etc.

Dmitry




reply via email to

[Prev in Thread] Current Thread [Next in Thread]