summaryrefslogtreecommitdiff
path: root/src/bytecode.c
diff options
context:
space:
mode:
authorPip Cet <pipcet@gmail.com>2020-08-11 02:16:53 -0700
committerPaul Eggert <eggert@cs.ucla.edu>2020-08-11 02:27:43 -0700
commit16a16645f524c62f7906036b0e383e4247b58de7 (patch)
treeec9af0e89b5494707fc630d5cebec267737d98d7 /src/bytecode.c
parent0d0aad213f941efc0fa0ec032e37dc9c2b08c9fb (diff)
downloademacs-16a16645f524c62f7906036b0e383e4247b58de7.tar.gz
Rehash hash tables eagerly after loading a dump
This simplifies code, and helps performance in some cases (Bug#36597). * src/lisp.h (hash_rehash_needed_p): Remove. All uses removed. (hash_rehash_if_needed): Remove. All uses removed. (struct Lisp_Hash_Table): Remove comment about rehashing hash tables. * src/pdumper.c (thaw_hash_tables): New function. (hash_table_thaw): New function. (hash_table_freeze): New function. (dump_hash_table): Simplify. (dump_hash_table_list): New function. (hash_table_contents): New function. (Fdump_emacs_portable): Handle hash tables by eager rehashing. (pdumper_load): Restore hash tables. (init_pdumper_once): New function.
Diffstat (limited to 'src/bytecode.c')
-rw-r--r--src/bytecode.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/src/bytecode.c b/src/bytecode.c
index 1913a4812a0..1c3b6eac0d1 100644
--- a/src/bytecode.c
+++ b/src/bytecode.c
@@ -1401,7 +1401,6 @@ exec_byte_code (Lisp_Object bytestr, Lisp_Object vector, Lisp_Object maxdepth,
Lisp_Object v1 = POP;
ptrdiff_t i;
struct Lisp_Hash_Table *h = XHASH_TABLE (jmp_table);
- hash_rehash_if_needed (h);
/* h->count is a faster approximation for HASH_TABLE_SIZE (h)
here. */