[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocat
From: |
Eli Zaretskii |
Subject: |
Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects. |
Date: |
Mon, 22 Sep 2014 17:44:19 +0300 |
> Date: Mon, 22 Sep 2014 10:42:35 +0400
> From: Dmitry Antipov <address@hidden>
> Cc: address@hidden
>
> > We should also audit uses of make_local_vector, make_local_string, and
> > build_local_string to make sure
> > that none of them are in loops that could blow the stack. I think most
> > uses of these are OK but
> > some are questionable.
>
> SAFE_ALLOCA and friends has exactly the same problems, and I don't see the
> way to make it
> absolutely safe with an existing implementations of alloca. This applies to
> VLAs as well.
We indeed have a few calls to SAFE_ALLOCA and SAFE_NALLOCA inside loops.
> Someday we will be able to utilize -fsplit-stack; it may be reasonable to
> define
> USE_LOCAL_LISP_OBJECTS only if -fsplit-stack is also supported.
AFAIU, -fsplit-stack is a mixed blessing at best when calling code
that was not compiled with that switch (a.k.a. "external libraries").
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Stefan Monnier, 2014/09/22
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Paul Eggert, 2014/09/22
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Dmitry Antipov, 2014/09/22
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects.,
Eli Zaretskii <=
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Paul Eggert, 2014/09/22
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Dmitry Antipov, 2014/09/22
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Eli Zaretskii, 2014/09/22
- Re: [Emacs-diffs] trunk r117912: Minor improvements to new stack-allocated Lisp objects., Paul Eggert, 2014/09/23