|
From: | Daniel Colascione |
Subject: | bug#31750: simplify and tune Emacs stack-related allocation |
Date: | Thu, 7 Jun 2018 20:20:59 -0700 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 |
On 06/07/2018 07:27 PM, Paul Eggert wrote:
While looking into the Emacs garbage collector's stack-overflow problems I noticed several opportunities for improving performance and simplifying the code in minor ways. I plan to install the attached patches to take advantage of these opportunities; although they don't address stack overflow,
One can also dream of the lisp evaluator doing escape analysis and stack allocation.
they can be thought of as a first, cleanup step toward addressing stack overflow.
Are you thinking along the same lines I was thinking of in my proposal to address GC safety?
Overall these patches trim about 250 lines from the C source code, and should improve efficiency by not creating objects on the heap to handle stack-related events such as implementing save-excursion. This patch also removes primitives like 'free_misc' that ask for trouble by second-guessing the garbage collector. I'm filing this as a bug report in order to give the patches a bit of time to cool before installing. Comments welcome, as usual.
[Prev in Thread] | Current Thread | [Next in Thread] |