diff options
author | Ludovic Courtes <ludovic.courtes@laas.fr> | 2006-05-23 22:00:11 +0000 |
---|---|---|
committer | Ludovic Courtès <ludo@gnu.org> | 2008-09-05 09:34:23 +0200 |
commit | a4a141f679fa66b1538148aae8046a9f351b3216 (patch) | |
tree | 9aedb852b669cf1aa95aa8157ff5d0c79f3a4f33 /libguile/random.c | |
parent | 4a6a4b492ff7677fd9ec5136d55bb75985245b18 (diff) | |
download | guile-a4a141f679fa66b1538148aae8046a9f351b3216.tar.gz |
Removed a lot of now-useless SMOB mark/free functions.
* libguile/arbiters.c (scm_init_arbiters): Don't invoke `scm_set_smob_mark'.
* libguile/async.c (async_gc_mark): Removed.
(scm_init_async): Don't invoke `scm_set_smob_mark'.
* libguile/coop-pthreads.c (thread_mark): Removed.
(create_thread): Use `scm_gc_malloc' instead of `scm_malloc' when
allocating `launch_data'.
(mutex_mark): Removed.
(scm_threads_init): Don't invoke `scm_set_smob_mark' and
`scm_set_smob_free'.
* libguile/debug.c (scm_init_debug): Don't invoke `scm_set_smob_mark'.
* libguile/dynl.c (dynl_obj_mark): Removed.
(scm_init_dynamic_linking): Don't invoke `scm_set_smob_mark'.
* libguile/dynwind.c (winder_mark): Removed.
(scm_init_dynwind): Don't invoke `scm_set_smob_mark'.
* libguile/environments.c (environment_mark): Removed.
(environment_free): Removed.
(observer_mark): Removed.
(core_environments_mark): Removed.
(core_environments_finalize): Removed.
(leaf_environment_mark): Removed.
(leaf_environment_free): Removed.
(leaf_environment_funcs): Don't refer to the above funcs.
(eval_environment_mark): Removed.
(eval_environment_free): Removed.
(eval_environment_funcs): Don't refer to the above funcs.
(import_environment_mark): Removed.
(import_environment_free): Removed.
(import_environment_funcs): Don't refer to the above funcs.
(export_environment_mark): Removed.
(export_environment_free): Removed.
(export_environment_funcs): Don't refer to the above funcs.
(scm_environments_prehistory): Don't invoke `scm_set_smob_mark' and
`scm_set_smob_free'.
* libguile/environments.h (scm_environment_funcs)[mark]: Removed.
[free]: Removed.
* libguile/eval.c (promise_mark): Removed.
(promise_free): Removed.
(scm_init_eval): Don't invoke `scm_set_smob_mark' and
`scm_set_smob_free'.
* libguile/fluids.c (fluid_free): Removed.
(scm_fluids_prehistory): Don't invoke `scm_set_smob_mark' and
`scm_set_smob_free'.
* libguile/futures.c (future_mark): Removed.
(scm_init_futures): Don't invoke `scm_set_smob_mark'.
* libguile/hashtab.c (hashtable_free): Removed.
(scm_hashtab_prehistory): Don't invoke `scm_set_smob_mark' and
`scm_set_smob_free'.
* libguile/hooks.c (scm_init_hooks): Don't invoke `scm_set_smob_mark'.
* libguile/keywords.c (scm_init_keywords): Don't invoke
`scm_set_smob_mark'.
* libguile/macros.c (scm_init_macros): Don't invoke `scm_set_smob_mark'.
* libguile/modules.c (scm_init_modules): Don't invoke
`scm_set_smob_mark'.
* libguile/print.c (scm_init_print): Don't invoke `scm_set_smob_mark'.
* libguile/random.c (scm_i_copy_rstate): Use `scm_gc_malloc' instead of
`scm_malloc'.
(scm_c_make_rstate): Likewise.
(rstate_free): Removed.
(scm_init_random): Don't invoke `scm_set_smob_free'.
* libguile/srcprop.c (srcprops_mark): Removed.
(scm_init_srcprop): Don't invoke `srcprops_mark'.
* libguile/srfi-14.c (charset_free): Removed.
(scm_init_srfi_14): Don't invoke `scm_set_smob_free'.
* libguile/srfi-4.c (uvec_mark): Removed.
(uvec_free): Removed.
(scm_init_srfi_4): Don't invoke `scm_set_smob_free' and
`scm_set_smob_mark'.
* libguile/threads.c (thread_mark): Removed.
(fat_mutex_mark): Removed.
(fat_cond_mark): Removed.
(scm_init_threads): Dont invoke `scm_set_smob_mark' and
`scm_set_smob_free'.
* libguile/unif.c (bitvector_free): Removed.
(array_mark): Removed.
(array_free): Removed.
(scm_init_unif): Don't invoke `scm_set_smob_free' and
`scm_set_smob_mark'.
git-archimport-id: lcourtes@laas.fr--2005-libre/guile-core--boehm-gc--1.9--patch-28
Diffstat (limited to 'libguile/random.c')
-rw-r--r-- | libguile/random.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/libguile/random.c b/libguile/random.c index 912f6acc5..9cd8e53a4 100644 --- a/libguile/random.c +++ b/libguile/random.c @@ -142,7 +142,8 @@ scm_i_init_rstate (scm_t_i_rstate *state, const char *seed, int n) scm_t_i_rstate * scm_i_copy_rstate (scm_t_i_rstate *state) { - scm_t_rstate *new_state = scm_malloc (scm_the_rng.rstate_size); + scm_t_rstate *new_state = scm_gc_malloc (scm_the_rng.rstate_size, + "random-state"); return memcpy (new_state, state, scm_the_rng.rstate_size); } @@ -154,7 +155,8 @@ scm_i_copy_rstate (scm_t_i_rstate *state) scm_t_rstate * scm_c_make_rstate (const char *seed, int n) { - scm_t_rstate *state = scm_malloc (scm_the_rng.rstate_size); + scm_t_rstate *state = scm_gc_malloc (scm_the_rng.rstate_size, + "random-state"); state->reserved0 = 0; scm_the_rng.init_rstate (state, seed, n); return state; @@ -314,12 +316,6 @@ make_rstate (scm_t_rstate *state) SCM_RETURN_NEWSMOB (scm_tc16_rstate, state); } -static size_t -rstate_free (SCM rstate) -{ - free (SCM_RSTATE (rstate)); - return 0; -} /* * Scheme level interface. @@ -595,7 +591,6 @@ scm_init_random () scm_the_rng = rng; scm_tc16_rstate = scm_make_smob_type ("random-state", 0); - scm_set_smob_free (scm_tc16_rstate, rstate_free); for (m = 1; m <= 0x100; m <<= 1) for (i = m >> 1; i < m; ++i) |