]> git.eshelyaron.com Git - emacs.git/commit
Shrink Lisp_Sub_Char_Table by preferring C integers to Lisp_Objects.
authorDmitry Antipov <dmantipov@yandex.ru>
Wed, 2 Jul 2014 03:26:19 +0000 (07:26 +0400)
committerDmitry Antipov <dmantipov@yandex.ru>
Wed, 2 Jul 2014 03:26:19 +0000 (07:26 +0400)
commit477daa5b533af8f62c9b6893e2d522b93d9c2853
tree1dc2bb83f76ecfecbce218a9af3a2bf845f5e3b6
parent1dc6f7e738e3ffe130626814f721c83c448fe9a8
Shrink Lisp_Sub_Char_Table by preferring C integers to Lisp_Objects.
* lisp.h (struct Lisp_Sub_Char_Table): Use C integers for depth and
min_char slots.  Adjust comment.
(enum char_table_specials): Rename from CHAR_TABLE_STANDARD_SLOTS.
Add SUB_CHAR_TABLE_OFFSET member.
(make_uninit_sub_char_table): New function.
* alloc.c (mark_char_table): Add extra argument to denote char table
subtype.  Adjust to match new layout of sub char-table.
(mark_object): Always mark sub char-tables with mark_char_table.
* chartab.c (make_sub_char_table, copy_sub_char_table)
(sub_char_table_ref, sub_char_table_ref_and_range, sub_char_table_set)
(sub_char_table_set_range, optimize_sub_char_table, map_sub_char_table)
(map_sub_char_table_for_charset, uniprop_table_uncompress):
All related users changed.
* lread.c (read1): Adjust to match new layout of sub char-table.
src/ChangeLog
src/alloc.c
src/chartab.c
src/lisp.h
src/lread.c
src/print.c