Return more descriptive data from Fgarbage_collect.
authorDmitry Antipov <dmantipov@yandex.ru>
Wed, 18 Jul 2012 05:44:36 +0000 (09:44 +0400)
committerDmitry Antipov <dmantipov@yandex.ru>
Wed, 18 Jul 2012 05:44:36 +0000 (09:44 +0400)
commit3ab6e069695d0dd5bb77133a89f858190ab8550a
treebd50490ec50ec8d5f72625fd38840d1283983561
parent0a60bc107123321438fc1320ab34fcf588ec7128
Return more descriptive data from Fgarbage_collect.
Suggested by Stefan Monnier in
http://lists.gnu.org/archive/html/emacs-devel/2012-07/msg00369.html.
* src/alloc.c (bounded_number): New function.
(total_buffers, total_vectors): New variable.
(total_string_size): Rename to total_string_bytes, adjust users.
(total_vector_size): Rename to total_vector_bytes, adjust users.
(sweep_vectors): Account total_vectors and total_vector_bytes.
(Fgarbage_collect): New return value.  Adjust documentation.
(gc_sweep): Account total_buffers.
(Fmemory_free, Fmemory_use_counts): Use bounded_number.
(VECTOR_SIZE): Remove.
* src/data.c (Qfloat, Qvector, Qsymbol, Qstring, Qcons): Make global.
(Qinterval, Qmisc): New symbols.
(syms_of_data): Initialize them.
* src/lisp.h (Qinterval, Qsymbol, Qstring, Qmisc, Qvector, Qfloat)
(Qcons, Qbuffer): New declarations.
* lisp/emacs-lisp/chart.el (chart-emacs-storage): Change to
reflect new format of data returned by Fgarbage_collect.
lisp/ChangeLog
lisp/emacs-lisp/chart.el
src/ChangeLog
src/alloc.c
src/data.c
src/lisp.h