summaryrefslogtreecommitdiff
path: root/src/pdumper.c
diff options
context:
space:
mode:
authorPaul Eggert <eggert@cs.ucla.edu>2019-03-01 09:01:59 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2019-03-01 09:09:47 -0800
commit7e29eae023c8158d41eba02c2367e70cbee53642 (patch)
tree6679f45eba3b0b06dfb8ba4353b259445b6c1340 /src/pdumper.c
parentfb52d961a40d889d87628058be6ea8116ced2e13 (diff)
downloademacs-7e29eae023c8158d41eba02c2367e70cbee53642.tar.gz
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.
Diffstat (limited to 'src/pdumper.c')
-rw-r--r--src/pdumper.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/pdumper.c b/src/pdumper.c
index 724ea7be6d0..4d35fd1233f 100644
--- a/src/pdumper.c
+++ b/src/pdumper.c
@@ -4055,7 +4055,7 @@ types. */)
/* Clear out any detritus in memory. */
do {
number_finalizers_run = 0;
- Fgarbage_collect ();
+ garbage_collect ();
} while (number_finalizers_run);
ptrdiff_t count = SPECPDL_INDEX ();