mirror of
https://git.savannah.gnu.org/git/guile.git
synced 2025-06-17 17:20:29 +02:00
more boot cleanup
* libguile/bytevectors.c (scm_bootstrap_bytevectors): Remove a call to scm_gc_protect_object. * libguile/gc.h: * libguile/gc.c (scm_init_gc_protect_object): Rename from scm_init_storage, and just return void. Make the GC boot procs have internal linkage. * libguile/init.c: Adapt to the name change.
This commit is contained in:
parent
f39448c5a3
commit
562cd1b8f8
4 changed files with 19 additions and 23 deletions
|
@ -2202,8 +2202,7 @@ scm_bootstrap_bytevectors (void)
|
||||||
/* This must be instantiated here because the generalized-vector API may
|
/* This must be instantiated here because the generalized-vector API may
|
||||||
want to access bytevectors even though `(rnrs bytevector)' hasn't been
|
want to access bytevectors even though `(rnrs bytevector)' hasn't been
|
||||||
loaded. */
|
loaded. */
|
||||||
scm_null_bytevector =
|
scm_null_bytevector = make_bytevector (0, SCM_ARRAY_ELEMENT_TYPE_VU8);
|
||||||
scm_gc_protect_object (make_bytevector (0, SCM_ARRAY_ELEMENT_TYPE_VU8));
|
|
||||||
|
|
||||||
#ifdef WORDS_BIGENDIAN
|
#ifdef WORDS_BIGENDIAN
|
||||||
scm_i_native_endianness = scm_from_locale_symbol ("big");
|
scm_i_native_endianness = scm_from_locale_symbol ("big");
|
||||||
|
|
|
@ -646,8 +646,8 @@ scm_storage_prehistory ()
|
||||||
|
|
||||||
scm_i_pthread_mutex_t scm_i_gc_admin_mutex = SCM_I_PTHREAD_MUTEX_INITIALIZER;
|
scm_i_pthread_mutex_t scm_i_gc_admin_mutex = SCM_I_PTHREAD_MUTEX_INITIALIZER;
|
||||||
|
|
||||||
int
|
void
|
||||||
scm_init_storage ()
|
scm_init_gc_protect_object ()
|
||||||
{
|
{
|
||||||
size_t j;
|
size_t j;
|
||||||
|
|
||||||
|
@ -670,8 +670,6 @@ scm_init_storage ()
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
scm_protects = scm_c_make_hash_table (31);
|
scm_protects = scm_c_make_hash_table (31);
|
||||||
|
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -237,9 +237,9 @@ SCM_API void scm_gc_register_root (SCM *p);
|
||||||
SCM_API void scm_gc_unregister_root (SCM *p);
|
SCM_API void scm_gc_unregister_root (SCM *p);
|
||||||
SCM_API void scm_gc_register_roots (SCM *b, unsigned long n);
|
SCM_API void scm_gc_register_roots (SCM *b, unsigned long n);
|
||||||
SCM_API void scm_gc_unregister_roots (SCM *b, unsigned long n);
|
SCM_API void scm_gc_unregister_roots (SCM *b, unsigned long n);
|
||||||
SCM_API void scm_storage_prehistory (void);
|
SCM_INTERNAL void scm_storage_prehistory (void);
|
||||||
SCM_API int scm_init_storage (void);
|
SCM_INTERNAL void scm_init_gc_protect_object (void);
|
||||||
SCM_API void scm_init_gc (void);
|
SCM_INTERNAL void scm_init_gc (void);
|
||||||
|
|
||||||
#if SCM_ENABLE_DEPRECATED == 1
|
#if SCM_ENABLE_DEPRECATED == 1
|
||||||
|
|
||||||
|
|
|
@ -435,21 +435,20 @@ scm_i_init_guile (SCM_STACKITEM *base)
|
||||||
}
|
}
|
||||||
|
|
||||||
scm_storage_prehistory ();
|
scm_storage_prehistory ();
|
||||||
scm_threads_prehistory (base);
|
scm_threads_prehistory (base); /* requires storage_prehistory */
|
||||||
scm_weaks_prehistory ();
|
scm_weaks_prehistory (); /* requires storage_prehistory */
|
||||||
#ifdef GUILE_DEBUG_MALLOC
|
#ifdef GUILE_DEBUG_MALLOC
|
||||||
scm_debug_malloc_prehistory ();
|
scm_debug_malloc_prehistory ();
|
||||||
#endif
|
#endif
|
||||||
if (scm_init_storage ()) /* requires threads_prehistory */
|
scm_init_gc_protect_object (); /* requires threads_prehistory, only provides
|
||||||
abort ();
|
scm_protect_object / scm_permanent_object */
|
||||||
|
|
||||||
scm_smob_prehistory ();
|
scm_smob_prehistory ();
|
||||||
scm_symbols_prehistory (); /* requires storage */
|
scm_symbols_prehistory (); /* requires weaks_prehistory */
|
||||||
scm_modules_prehistory (); /* requires storage */
|
scm_modules_prehistory ();
|
||||||
scm_init_variable (); /* all bindings need variables */
|
scm_init_variable ();
|
||||||
scm_init_continuations ();
|
scm_init_continuations (); /* requires smobs */
|
||||||
scm_init_root (); /* requires continuations */
|
scm_init_root (); /* requires continuations */
|
||||||
scm_init_threads (); /* requires fluids */
|
scm_init_threads ();
|
||||||
scm_init_gsubr ();
|
scm_init_gsubr ();
|
||||||
scm_init_thread_procs (); /* requires gsubrs */
|
scm_init_thread_procs (); /* requires gsubrs */
|
||||||
scm_init_procprop ();
|
scm_init_procprop ();
|
||||||
|
@ -465,20 +464,20 @@ scm_i_init_guile (SCM_STACKITEM *base)
|
||||||
scm_init_eq ();
|
scm_init_eq ();
|
||||||
scm_init_error ();
|
scm_init_error ();
|
||||||
scm_init_fluids ();
|
scm_init_fluids ();
|
||||||
scm_init_feature (); /* Requires fluids */
|
scm_init_feature ();
|
||||||
scm_init_backtrace (); /* Requires fluids */
|
scm_init_backtrace ();
|
||||||
scm_init_fports ();
|
scm_init_fports ();
|
||||||
scm_init_strports ();
|
scm_init_strports ();
|
||||||
scm_init_ports ();
|
scm_init_ports ();
|
||||||
scm_init_gdbint (); /* Requires strports */
|
scm_init_gdbint (); /* Requires strports */
|
||||||
scm_init_hash ();
|
scm_init_hash ();
|
||||||
scm_init_hashtab ();
|
scm_init_hashtab ();
|
||||||
scm_init_deprecation (); /* Requires hashtabs */
|
scm_init_deprecation ();
|
||||||
scm_init_objprop ();
|
scm_init_objprop ();
|
||||||
scm_init_promises ();
|
scm_init_promises ();
|
||||||
scm_init_properties ();
|
scm_init_properties ();
|
||||||
scm_init_hooks (); /* Requires smob_prehistory */
|
scm_init_hooks (); /* Requires smob_prehistory */
|
||||||
scm_init_gc (); /* Requires hooks, async */
|
scm_init_gc (); /* Requires hooks */
|
||||||
scm_init_gettext ();
|
scm_init_gettext ();
|
||||||
scm_init_ioext ();
|
scm_init_ioext ();
|
||||||
scm_init_keywords ();
|
scm_init_keywords ();
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue