diff options
author | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-02-17 21:07:36 -0500 |
---|---|---|
committer | Stefan Monnier <monnier@iro.umontreal.ca> | 2011-02-17 21:07:36 -0500 |
commit | b286858c7a0d5dafa302b9e88970c13385358a6a (patch) | |
tree | 37aca1554bbef09ef09256d7162e619222dbb4a1 /lisp/emacs-lisp | |
parent | 3804652098c7c8824f332e92846a3b8896b9e683 (diff) | |
download | emacs-b286858c7a0d5dafa302b9e88970c13385358a6a.tar.gz emacs-b286858c7a0d5dafa302b9e88970c13385358a6a.tar.bz2 emacs-b286858c7a0d5dafa302b9e88970c13385358a6a.zip |
Don't GC-scan stack data redundantly.
* src/alloc.c (Fgarbage_collect): When using stack scanning, don't
redundantly scan byte-code stacks, catchlist, and handlerlist.
* src/bytecode.c (BYTE_MAINTAIN_TOP): New macros.
(struct byte_stack): Only define `top' and `bottom' if used.
(mark_byte_stack): Only define if used.
(BEFORE_POTENTIAL_GC, AFTER_POTENTIAL_GC): Nullify if BYTE_MAINTAIN_TOP
is not set.
(Fbyte_code): Don't set `bottom' unless BYTE_MAINTAIN_TOP is set.
* src/lisp.h (BYTE_MARK_STACK): New macro.
(mark_byte_stack): Only declare if BYTE_MARK_STACK is set.
* src/term.c (OUTPUT_IF): Use OUTPUT.
Diffstat (limited to 'lisp/emacs-lisp')
0 files changed, 0 insertions, 0 deletions