Commit 730c89f9 authored by Dmitry Antipov's avatar Dmitry Antipov

* lisp.h (toplevel): Adjust comment around USE_STACK_LISP_OBJECTS.

parent db61bdb1
......@@ -4595,18 +4595,17 @@ lisp_word_count (ptrdiff_t nbytes)
} while (false)
/* If USE_STACK_LISP_OBJECTS, define macros that and functions that
allocate block-scoped conses and function-scoped vectors and
strings. These objects are not managed by the garbage collector,
so they are dangerous: passing them out of their scope (e.g., to
user code) results in undefined behavior. Conversely, they have
better performance because GC is not involved.
This feature is experimental and requires careful debugging.
It's enabled by default on GNU/Linux with GCC. On other systems,
brave users can compile with CPPFLAGS='-DUSE_STACK_LISP_OBJECTS'
to get into the game. Also note that this feature requires
GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS. */
/* If USE_STACK_LISP_OBJECTS, define macros that and functions that allocate
block-scoped conses and function-scoped vectors and strings. These objects
are not managed by the garbage collector, so they are dangerous: passing
them out of their scope (e.g., to user code) results in undefined behavior.
Conversely, they have better performance because GC is not involved.
This feature is experimental and requires careful debugging. It's enabled
by default if GCC or a compiler that mimics GCC well (like Intel C/C++) is
used, except clang (see notice above). For other compilers, brave users can
compile with CPPFLAGS='-DUSE_STACK_LISP_OBJECTS' to get into the game.
Note that this feature requires GC_MARK_STACK == GC_MAKE_GCPROS_NOOPS. */
/* A struct Lisp_Cons inside a union that is no larger and may be
better-aligned. */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment