From: Dmitry Antipov Date: Thu, 25 Sep 2014 10:24:57 +0000 (+0400) Subject: * lisp.h (toplevel): Adjust comment around USE_STACK_LISP_OBJECTS. X-Git-Tag: emacs-25.0.90~2635^2~679^2~225 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=730c89f90ff94729f7316244d7d0d84a3f8d249f;p=emacs.git * lisp.h (toplevel): Adjust comment around USE_STACK_LISP_OBJECTS. --- diff --git a/src/lisp.h b/src/lisp.h index f76008e8f5e..82a99fcca34 100644 --- a/src/lisp.h +++ b/src/lisp.h @@ -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. */