aboutsummaryrefslogtreecommitdiffstats
path: root/src/alloc.c
diff options
context:
space:
mode:
authorAndrea Corallo2020-02-03 16:40:45 +0000
committerAndrea Corallo2020-02-03 21:56:46 +0000
commit7c93bb113ec353baa6316fa97744e65a6e109d91 (patch)
tree3226d91aedb0e9ca92ab581dc5b3709e19ceb4b9 /src/alloc.c
parentffa59bb1611609879151b6dfa94772f9e2144849 (diff)
downloademacs-7c93bb113ec353baa6316fa97744e65a6e109d91.tar.gz
emacs-7c93bb113ec353baa6316fa97744e65a6e109d91.zip
Rework load mechanism to make Vcomp_loaded_handles unnecessary
Diffstat (limited to 'src/alloc.c')
-rw-r--r--src/alloc.c19
1 files changed, 0 insertions, 19 deletions
diff --git a/src/alloc.c b/src/alloc.c
index 431238b13e6..faa8e703937 100644
--- a/src/alloc.c
+++ b/src/alloc.c
@@ -517,14 +517,6 @@ Lisp_Object const *staticvec[NSTATICS]
517 517
518int staticidx; 518int staticidx;
519 519
520/* Lisp of freed native compilation unit handles.
521
522 Because during GC Vcomp_loaded_handles can't be used (hash table) temporary
523 annotate here and update Vcomp_loaded_handles when finished.
524*/
525
526static Lisp_Object freed_cu_handles[NATIVE_COMP_FLAG];
527
528static void *pure_alloc (size_t, int); 520static void *pure_alloc (size_t, int);
529 521
530/* Return PTR rounded up to the next multiple of ALIGNMENT. */ 522/* Return PTR rounded up to the next multiple of ALIGNMENT. */
@@ -3038,10 +3030,6 @@ cleanup_vector (struct Lisp_Vector *vector)
3038 PSEUDOVEC_STRUCT (vector, Lisp_Native_Comp_Unit); 3030 PSEUDOVEC_STRUCT (vector, Lisp_Native_Comp_Unit);
3039 eassert (cu->handle); 3031 eassert (cu->handle);
3040 dynlib_close (cu->handle); 3032 dynlib_close (cu->handle);
3041 /* We'll update Vcomp_loaded_handles when finished. */
3042 freed_cu_handles[0] =
3043 Fcons (make_mint_ptr (cu->handle), freed_cu_handles[0]);
3044 set_cons_marked (XCONS (freed_cu_handles[0]));
3045 } 3033 }
3046} 3034}
3047 3035
@@ -5949,9 +5937,6 @@ garbage_collect (void)
5949 if (garbage_collection_messages) 5937 if (garbage_collection_messages)
5950 message1_nolog ("Garbage collecting..."); 5938 message1_nolog ("Garbage collecting...");
5951 5939
5952 if (NATIVE_COMP_FLAG)
5953 freed_cu_handles[0] = Qnil;
5954
5955 block_input (); 5940 block_input ();
5956 5941
5957 shrink_regexp_cache (); 5942 shrink_regexp_cache ();
@@ -6016,10 +6001,6 @@ garbage_collect (void)
6016 6001
6017 gc_in_progress = 0; 6002 gc_in_progress = 0;
6018 6003
6019 if (NATIVE_COMP_FLAG)
6020 FOR_EACH_TAIL (freed_cu_handles[0])
6021 Fputhash (XCAR (freed_cu_handles[0]), Qnil, Vcomp_loaded_handles);
6022
6023 unblock_input (); 6004 unblock_input ();
6024 6005
6025 consing_until_gc = gc_threshold 6006 consing_until_gc = gc_threshold