aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index b94ac53051a..b98d4eef355 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,30 @@
12014-09-10 Paul Eggert <eggert@cs.ucla.edu>
2
3 Improve the experimental local and scoped allocation.
4 * alloc.c (local_string_init, local_vector_init):
5 New functions, defined if USE_LOCAL_ALLOCATORS.
6 Mostly, these are moved here from lisp.h, as it's not
7 clear it's worth making them inline.
8 * lisp.h (USE_STACK_LISP_OBJECTS): Default to false.
9 (GCALIGNED): Depend on HAVE_STRUCT_ATTRIBUTE_ALIGNED and
10 USE_STACK_LISP_OBJECTS, not on a laundry list.
11 (local_string_init, local_vector_init): New decls.
12 (union Aligned_Cons): New type.
13 (scoped_cons): Use it. Give up on the char trick, as it's a too
14 much of a maintenance hassle; if someone wants this speedup
15 they'll just need to convince their compiler to align properly.
16 Conversely, use the speedup if struct Lisp_Cons happens to
17 be aligned even without a directive. Better yet, help it along
18 by using union Aligned_Cons rather than struct Lisp_Cons.
19 (pointer_valid_for_lisp_object): Remove. This check is not
20 necessary, since make_lisp_ptr is already doing it. All uses removed.
21 (local_vector_init, local_string_init): Move to alloc.c.
22 (build_local_vector): Remove this awkward macro, replacing with ...
23 (make_local_vector): New macro, which acts more like a function.
24 Use statement expressions and use __COUNTER__ to avoid macro
25 capture. Fall back on functions if these features are not supported.
26 (build_local_string, make_local_string): Likewise.
27
12014-09-09 Dmitry Antipov <dmantipov@yandex.ru> 282014-09-09 Dmitry Antipov <dmantipov@yandex.ru>
2 29
3 * xterm.c (x_term_init): Consolidate duplicated code. 30 * xterm.c (x_term_init): Consolidate duplicated code.