emacs-devel
[Top][All Lists]
Advanced

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

Re: Stack-allocated objects again (+benchmark)


From: Dmitry Antipov
Subject: Re: Stack-allocated objects again (+benchmark)
Date: Tue, 30 Sep 2014 12:25:48 +0400
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.1.2

On 09/30/2014 06:43 AM, Paul Eggert wrote:

Thanks for doing that, and for the benchmark.  I found a couple of problems with
< the patch, and thought of some ways to simplify it further and make it more 
portable
and a bit faster in many cases,  and installed that as trunk bzr 117978.  
Please have
a look when you have the time.

1) Thanks, I like an idea with SCOPED_STRING without an extra allocation and 
memcpy.

2) This snippet from lisp.h:

  4597  /* USE_STACK_LISP_OBJECTS requires GC_MARK_STACK == 
GC_MAKE_GCPROS_NOOPS.  */
  4598
  4599  #if GC_MARK_STACK != GC_MAKE_GCPROS_NOOPS
  4600  # undef USE_STACK_LISP_OBJECTS
  4601  # define USE_STACK_LISP_OBJECTS false
  4602  #endif

  conflicts with alloc.c:

  72  #if USE_STACK_LISP_OBJECTS
  73  # if GC_MARK_STACK != GC_MAKE_GCPROS_NOOPS
  74  #  error "Stack-allocated Lisp objects are not compatible with GCPROs"
  75  # endif
  76  #endif

  If you prefer 1st (I'm OK with that), 2nd one should be removed.

Dmitry




reply via email to

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