Mercurial > hg > xemacs-beta
comparison src/buffer.c @ 3024:b7f26b2f78bd
[xemacs-hg @ 2005-10-25 08:32:40 by ben]
more mc-alloc-related factoring; make it hard to do the wrong thing
postgresql/postgresql.c, postgresql/postgresql.h: MC-Alloc refactoring.
ldap/eldap.c, ldap/eldap.h: MC-Alloc refactoring.
alloc.c, buffer.c, console.c, emacs.c, file-coding.c, lrecord.h, lstream.c, mule-charset.c, print.c, scrollbar-gtk.c, scrollbar-msw.c, scrollbar-x.c, scrollbar.c, symbols.c, symeval.h, unicode.c, window.c, xemacs.def.in.in: rename `struct lcrecord_header' to `struct old_lcrecord_header';
likewise for `old_basic_alloc_lcrecord', `old_free_lcrecord',
`old_zero_lcrecord', `old_zero_sized_lcrecord', `old_copy_lcrecord',
`old_copy_sized_lcrecord', `old_alloc_lcrecord_type'. Created new
LISPOBJ_STORAGE_SIZE() used only on objects created through allocation
of Lisp-Object memory instead of basic xmalloc()/xfree(). This is
distinguished from malloced_storage_size(), for non-Lisp-Objects.
The definition of LISPOBJ_STORAGE_SIZE() can reduce down to
malloced_storage_size() when not MC-ALLOC, but with MC-ALLOC it's
a different function.
The whole point other than cleaning up the use of LISPOBJ_STORAGE_SIZE
is to make it harder to accidentally use the old kind (lowercase) of
function in new code, since you get a compile error.
author | ben |
---|---|
date | Tue, 25 Oct 2005 08:32:50 +0000 |
parents | 1e7cc382eb16 |
children | 141c2920ea48 3742ea8250b5 |
comparison
equal
deleted
inserted
replaced
3023:d305f4207861 | 3024:b7f26b2f78bd |
---|---|
1755 static void | 1755 static void |
1756 compute_buffer_usage (struct buffer *b, struct buffer_stats *stats, | 1756 compute_buffer_usage (struct buffer *b, struct buffer_stats *stats, |
1757 struct overhead_stats *ovstats) | 1757 struct overhead_stats *ovstats) |
1758 { | 1758 { |
1759 xzero (*stats); | 1759 xzero (*stats); |
1760 stats->other += MALLOCED_STORAGE_SIZE (b, sizeof (*b), ovstats); | 1760 stats->other += LISPOBJ_STORAGE_SIZE (b, sizeof (*b), ovstats); |
1761 stats->text += compute_buffer_text_usage (b, ovstats); | 1761 stats->text += compute_buffer_text_usage (b, ovstats); |
1762 stats->markers += compute_buffer_marker_usage (b, ovstats); | 1762 stats->markers += compute_buffer_marker_usage (b, ovstats); |
1763 stats->extents += compute_buffer_extent_usage (b, ovstats); | 1763 stats->extents += compute_buffer_extent_usage (b, ovstats); |
1764 } | 1764 } |
1765 | 1765 |
2144 #define DEFVAR_BUFFER_LOCAL_1(lname, field_name, forward_type, magicfun) \ | 2144 #define DEFVAR_BUFFER_LOCAL_1(lname, field_name, forward_type, magicfun) \ |
2145 do { \ | 2145 do { \ |
2146 static const struct symbol_value_forward I_hate_C = \ | 2146 static const struct symbol_value_forward I_hate_C = \ |
2147 { /* struct symbol_value_forward */ \ | 2147 { /* struct symbol_value_forward */ \ |
2148 { /* struct symbol_value_magic */ \ | 2148 { /* struct symbol_value_magic */ \ |
2149 { /* struct lcrecord_header */ \ | 2149 { /* struct old_lcrecord_header */ \ |
2150 { /* struct lrecord_header */ \ | 2150 { /* struct lrecord_header */ \ |
2151 lrecord_type_symbol_value_forward, /* lrecord_type_index */ \ | 2151 lrecord_type_symbol_value_forward, /* lrecord_type_index */ \ |
2152 1, /* mark bit */ \ | 2152 1, /* mark bit */ \ |
2153 1, /* c_readonly bit */ \ | 2153 1, /* c_readonly bit */ \ |
2154 1 /* lisp_readonly bit */ \ | 2154 1 /* lisp_readonly bit */ \ |