]> git.eshelyaron.com Git - emacs.git/commit
Suppress GC stats when obviously not needed
authorPaul Eggert <eggert@cs.ucla.edu>
Fri, 1 Mar 2019 17:01:59 +0000 (09:01 -0800)
committerPaul Eggert <eggert@cs.ucla.edu>
Fri, 1 Mar 2019 17:09:47 +0000 (09:09 -0800)
commit7e29eae023c8158d41eba02c2367e70cbee53642
tree6679f45eba3b0b06dfb8ba4353b259445b6c1340
parentfb52d961a40d889d87628058be6ea8116ced2e13
Suppress GC stats when obviously not needed

This should help future improvements where these stats can be
bignums that do not fit into intmax_t.
* src/alloc.c (struct gcstat, gcstat): New type and static var,
to package up GC statistics into one C object.  It replaces ...
(total_free_intervals, total_intervals, total_strings)
(total_free_strings, total_string_bytes, total_vectors)
(total_vector_slots, total_free_vector_slots): ... these
removed static vars.  All uses changed.
(garbage_collect_1): Accept a struct gcstat *, not a void *
which was not used anymore anyway.  Return a bool indicating
success, instead of a Lisp object.  All callers changed.
(garbage_collect): New function.  All C callers of
Fgarbage_collect changed to use it, since none of them use the
return value.  Now, only Lisp code uses Fgarbage_collect.
(Fgarbage_collect): No longer noinline.  Cons up the return
value here, not in garbage_collect_1.
lib-src/make-docfile.c
src/alloc.c
src/lisp.h
src/pdumper.c