1
0
mirror of https://git.savannah.gnu.org/git/emacs.git synced 2025-02-04 20:27:45 +00:00

(free_marker): New function.

This commit is contained in:
Richard M. Stallman 1997-08-13 04:13:39 +00:00
parent b86e0aaf0f
commit fd27a53736

View File

@ -112,6 +112,12 @@ extern
int undo_limit;
int undo_strong_limit;
int total_conses, total_markers, total_symbols, total_string_size, total_vector_size;
int total_free_conses, total_free_markers, total_free_symbols;
#ifdef LISP_FLOAT_TYPE
int total_free_floats, total_floats;
#endif /* LISP_FLOAT_TYPE */
/* Points to memory space allocated as "spare",
to be freed if we run out of memory. */
static char *spare_memory;
@ -1032,6 +1038,18 @@ DEFUN ("make-marker", Fmake_marker, Smake_marker, 0, 0, 0,
p->insertion_type = 0;
return val;
}
/* Put MARKER back on the free list after using it temporarily. */
free_marker (marker)
Lisp_Object marker;
{
XMISC (marker)->u_marker.type = Lisp_Misc_Free;
XMISC (marker)->u_free.chain = marker_free_list;
marker_free_list = XMISC (marker);
total_free_markers++;
}
/* Allocation of strings */
@ -1476,12 +1494,6 @@ struct backtrace
/* Garbage collection! */
int total_conses, total_markers, total_symbols, total_string_size, total_vector_size;
int total_free_conses, total_free_markers, total_free_symbols;
#ifdef LISP_FLOAT_TYPE
int total_free_floats, total_floats;
#endif /* LISP_FLOAT_TYPE */
/* Temporarily prevent garbage collection. */
int