aboutsummaryrefslogtreecommitdiffstats
path: root/src/ChangeLog
diff options
context:
space:
mode:
authorDmitry Antipov2012-11-08 18:10:28 +0400
committerDmitry Antipov2012-11-08 18:10:28 +0400
commit914adc427f7d1159356e465ec616c65a2ea902af (patch)
treea4af121088abea87624dd93640d1deb1dd54ea95 /src/ChangeLog
parentd14bb752ea51331ce2fb459c6ffacd8b11f80bb0 (diff)
downloademacs-914adc427f7d1159356e465ec616c65a2ea902af.tar.gz
emacs-914adc427f7d1159356e465ec616c65a2ea902af.zip
Shrink struct vectorlike_header to the only size field.
* lisp.h (enum pvec_type): Avoid explicit enum member values. Adjust comment. (enum More_Lisp_Bits): Change PSEUDOVECTOR_SIZE_BITS and PVEC_TYPE_MASK to arrange new bitfield in the vector header. (PSEUDOVECTOR_REST_BITS, PSEUDOVECTOR_REST_MASK): New members. (PSEUDOVECTOR_AREA_BITS): New member used to extract subtype information from the vector header. Adjust comment. (XSETPVECTYPE, XSETPVECTYPESIZE, XSETTYPED_PSEUDOVECTOR) (PSEUDOVECTOR_TYPEP, DEFUN): Adjust to match new vector header layout. (XSETSUBR, SUBRP): Adjust to match new Lisp_Subr layout. (struct vectorlike_header): Remove next member. Adjust comment. (struct Lisp_Subr): Add convenient header. Adjust comment. (allocate_pseudovector): Adjust prototype. * alloc.c (mark_glyph_matrix, mark_face_cache, allocate_string) (sweep_string, lisp_malloc): Remove useless prototypes. (enum mem_type): Adjust comment. (NEXT_IN_FREE_LIST): New macro. (SETUP_ON_FREE_LIST): Adjust XSETPVECTYPESIZE usage. (Fmake_bool_vector): Likewise. (struct large_vector): New type to represent allocation unit for the vectors with the memory footprint more than VBLOOCK_BYTES_MAX. (large_vectors): Change type to struct large_vector. (allocate_vector_from_block): Simplify. (PSEUDOVECTOR_NBYTES): Replace with... (vector_nbytes): ...new function. Adjust users. (sweep_vectors): Adjust processing of large vectors. (allocate_vectorlike): Likewise. (allocate_pseudovector): Change type of 3rd arg to enum pvec_type. Add easserts. Adjust XSETPVECTYPESIZE usage. (allocate_buffer): Use BUFFER_PVEC_INIT. (live_vector_p): Adjust to match large vector. * buffer.c (init_buffer_once): Use BUFFER_PVEC_INIT. * buffer.h (struct buffer): Add next member. (BUFFER_LISP_SIZE, BUFFER_REST_SIZE, BUFFER_PVEC_INIT): New macros. (FOR_EACH_BUFFER): Adjust to match struct buffer change. * fns.c (internal_equal): Adjust to match enum pvec_type change. (copy_hash_table): Adjust to match vector header change. * lread.c (defsubr): Use XSETPVECTYPE. * .gdbinit (xpr, xbacktrace): Adjust to match vector header change. (xvectype): Likewise. Print PVEC_NORMAL_VECTOR for regular vectors. (xvecsize): New command.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r--src/ChangeLog47
1 files changed, 47 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 291eec18fe9..7ddff43d94d 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,5 +1,52 @@
12012-11-08 Dmitry Antipov <dmantipov@yandex.ru> 12012-11-08 Dmitry Antipov <dmantipov@yandex.ru>
2 2
3 Shrink struct vectorlike_header to the only size field.
4 * lisp.h (enum pvec_type): Avoid explicit enum member values.
5 Adjust comment.
6 (enum More_Lisp_Bits): Change PSEUDOVECTOR_SIZE_BITS and
7 PVEC_TYPE_MASK to arrange new bitfield in the vector header.
8 (PSEUDOVECTOR_REST_BITS, PSEUDOVECTOR_REST_MASK): New members.
9 (PSEUDOVECTOR_AREA_BITS): New member used to extract subtype
10 information from the vector header. Adjust comment.
11 (XSETPVECTYPE, XSETPVECTYPESIZE, XSETTYPED_PSEUDOVECTOR)
12 (PSEUDOVECTOR_TYPEP, DEFUN): Adjust to match new vector header
13 layout.
14 (XSETSUBR, SUBRP): Adjust to match new Lisp_Subr layout.
15 (struct vectorlike_header): Remove next member. Adjust comment.
16 (struct Lisp_Subr): Add convenient header. Adjust comment.
17 (allocate_pseudovector): Adjust prototype.
18 * alloc.c (mark_glyph_matrix, mark_face_cache, allocate_string)
19 (sweep_string, lisp_malloc): Remove useless prototypes.
20 (enum mem_type): Adjust comment.
21 (NEXT_IN_FREE_LIST): New macro.
22 (SETUP_ON_FREE_LIST): Adjust XSETPVECTYPESIZE usage.
23 (Fmake_bool_vector): Likewise.
24 (struct large_vector): New type to represent allocation unit for
25 the vectors with the memory footprint more than VBLOOCK_BYTES_MAX.
26 (large_vectors): Change type to struct large_vector.
27 (allocate_vector_from_block): Simplify.
28 (PSEUDOVECTOR_NBYTES): Replace with...
29 (vector_nbytes): ...new function. Adjust users.
30 (sweep_vectors): Adjust processing of large vectors.
31 (allocate_vectorlike): Likewise.
32 (allocate_pseudovector): Change type of 3rd arg to enum pvec_type.
33 Add easserts. Adjust XSETPVECTYPESIZE usage.
34 (allocate_buffer): Use BUFFER_PVEC_INIT.
35 (live_vector_p): Adjust to match large vector.
36 * buffer.c (init_buffer_once): Use BUFFER_PVEC_INIT.
37 * buffer.h (struct buffer): Add next member.
38 (BUFFER_LISP_SIZE, BUFFER_REST_SIZE, BUFFER_PVEC_INIT):
39 New macros.
40 (FOR_EACH_BUFFER): Adjust to match struct buffer change.
41 * fns.c (internal_equal): Adjust to match enum pvec_type change.
42 (copy_hash_table): Adjust to match vector header change.
43 * lread.c (defsubr): Use XSETPVECTYPE.
44 * .gdbinit (xpr, xbacktrace): Adjust to match vector header change.
45 (xvectype): Likewise. Print PVEC_NORMAL_VECTOR for regular vectors.
46 (xvecsize): New command.
47
482012-11-08 Dmitry Antipov <dmantipov@yandex.ru>
49
3 * keyboard.c (event_to_kboard): Do not dereference 50 * keyboard.c (event_to_kboard): Do not dereference
4 frame_or_window field of SELECTION_REQUEST_EVENT 51 frame_or_window field of SELECTION_REQUEST_EVENT
5 and SELECTION_CLEAR_EVENT events (Bug#12814). 52 and SELECTION_CLEAR_EVENT events (Bug#12814).