emacs-diffs
[Top][All Lists]
Advanced

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

[Emacs-diffs] trunk r117935: * lisp.h (USE_STACK_LISP_OBJECTS): Enable b


From: Dmitry Antipov
Subject: [Emacs-diffs] trunk r117935: * lisp.h (USE_STACK_LISP_OBJECTS): Enable by default if GNU_LINUX
Date: Wed, 24 Sep 2014 11:59:32 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 117935
revision-id: address@hidden
parent: address@hidden
committer: Dmitry Antipov <address@hidden>
branch nick: trunk
timestamp: Wed 2014-09-24 15:59:13 +0400
message:
  * lisp.h (USE_STACK_LISP_OBJECTS): Enable by default if GNU_LINUX
  && __GNUC__ && !__clang__.  Mention known problems.  Adjust comment.
modified:
  src/ChangeLog                  changelog-20091113204419-o5vbwnq5f7feedwu-1438
  src/lisp.h                     lisp.h-20091113204419-o5vbwnq5f7feedwu-253
=== modified file 'src/ChangeLog'
--- a/src/ChangeLog     2014-09-24 11:11:14 +0000
+++ b/src/ChangeLog     2014-09-24 11:59:13 +0000
@@ -36,6 +36,9 @@
        (font_delete_unmatched): Use local_cons but respect MAX_ALLOCA.
        * keymap.c (append_key): Use scoped_list1.
 
+       * lisp.h (USE_STACK_LISP_OBJECTS): Enable by default if GNU_LINUX
+       && __GNUC__ && !__clang__.  Mention known problems.  Adjust comment.
+
 2014-09-24  Paul Eggert  <address@hidden>
 
        Fix some slow uses and misuses of strcat.

=== modified file 'src/lisp.h'
--- a/src/lisp.h        2014-09-23 17:03:48 +0000
+++ b/src/lisp.h        2014-09-24 11:59:13 +0000
@@ -282,7 +282,16 @@
 # endif
 #endif
 
+/* This should work on GNU/Linux with GCC.  Other configurations may be
+   problematic and/or not tested yet.  Clang is known to have problems,
+   see http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00506.html.
+   Also http://lists.gnu.org/archive/html/emacs-devel/2014-09/msg00422.html
+   describes an issues with 32-bit MS-Windows.  */
 #ifndef USE_STACK_LISP_OBJECTS
+# if defined (GNU_LINUX) && defined (__GNUC__) && !defined (__clang__)
+#   define USE_STACK_LISP_OBJECTS true
+# endif
+#else
 # define USE_STACK_LISP_OBJECTS false
 #endif
 
@@ -4581,8 +4590,10 @@
    better performance because GC is not involved.
 
    This feature is experimental and requires careful debugging.
-   Brave users can compile with CPPFLAGS='-DUSE_STACK_LISP_OBJECTS'
-   to get into the game.  */
+   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.  */
 
 /* A struct Lisp_Cons inside a union that is no larger and may be
    better-aligned.  */


reply via email to

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