diff options
| author | Stefan Monnier | 2014-04-07 12:08:46 -0400 |
|---|---|---|
| committer | Stefan Monnier | 2014-04-07 12:08:46 -0400 |
| commit | e3b838807bf9fbbbec9826de6c1e4efdf72acb78 (patch) | |
| tree | af955b069b9dab5d52cfed618cf1f2f7cffa40f5 /src/ChangeLog | |
| parent | 190f899aed4eeb62286874bda47a92236d52ad4c (diff) | |
| download | emacs-e3b838807bf9fbbbec9826de6c1e4efdf72acb78.tar.gz emacs-e3b838807bf9fbbbec9826de6c1e4efdf72acb78.zip | |
* src/alloc.c: Keep track of symbols referenced from pure space (bug#17168).
(symbol_block_pinned): New var.
(Fmake_symbol): Initialize `pinned'.
(purecopy): New function, extracted from Fpurecopy. Mark symbols as
pinned and signal an error for un-purifiable objects.
(pure_cons): Use it.
(Fpurecopy): Use it, except for objects that can't be purified.
(mark_pinned_symbols): New function.
(Fgarbage_collect): Use it.
(gc_sweep): Remove hack made unnecessary.
* src/lisp.h (struct Lisp_Symbol): New bitfield `pinned'.
Diffstat (limited to 'src/ChangeLog')
| -rw-r--r-- | src/ChangeLog | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 9b084701933..7618fb202e0 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,18 @@ | |||
| 1 | 2014-04-07 Stefan Monnier <monnier@iro.umontreal.ca> | ||
| 2 | |||
| 3 | * lisp.h (struct Lisp_Symbol): New bitfield `pinned'. | ||
| 4 | |||
| 5 | * alloc.c: Keep track of symbols referenced from pure space (bug#17168). | ||
| 6 | (symbol_block_pinned): New var. | ||
| 7 | (Fmake_symbol): Initialize `pinned'. | ||
| 8 | (purecopy): New function, extracted from Fpurecopy. Mark symbols as | ||
| 9 | pinned and signal an error for un-purifiable objects. | ||
| 10 | (pure_cons): Use it. | ||
| 11 | (Fpurecopy): Use it, except for objects that can't be purified. | ||
| 12 | (mark_pinned_symbols): New function. | ||
| 13 | (Fgarbage_collect): Use it. | ||
| 14 | (gc_sweep): Remove hack made unnecessary. | ||
| 15 | |||
| 1 | 2014-04-05 Glenn Morris <rgm@gnu.org> | 16 | 2014-04-05 Glenn Morris <rgm@gnu.org> |
| 2 | 17 | ||
| 3 | * keyboard.c (Fopen_dribble_file): Doc tweak. | 18 | * keyboard.c (Fopen_dribble_file): Doc tweak. |