diff options
Diffstat (limited to 'gc/mmtk/mmtk.c')
-rw-r--r-- | gc/mmtk/mmtk.c | 13 |
1 files changed, 2 insertions, 11 deletions
diff --git a/gc/mmtk/mmtk.c b/gc/mmtk/mmtk.c index b1deeef755..f52b183fa7 100644 --- a/gc/mmtk/mmtk.c +++ b/gc/mmtk/mmtk.c @@ -562,16 +562,7 @@ rb_gc_impl_shutdown_free_objects(void *objspace_ptr) void rb_gc_impl_start(void *objspace_ptr, bool full_mark, bool immediate_mark, bool immediate_sweep, bool compact) { - bool enabled = mmtk_gc_enabled_p(); - if (!enabled) { - mmtk_set_gc_enabled(true); - } - - mmtk_handle_user_collection_request(rb_gc_get_ractor_newobj_cache()); - - if (!enabled) { - mmtk_set_gc_enabled(false); - } + mmtk_handle_user_collection_request(rb_gc_get_ractor_newobj_cache(), true, full_mark); } bool @@ -667,7 +658,7 @@ rb_gc_impl_new_obj(void *objspace_ptr, void *cache_ptr, VALUE klass, VALUE flags } if (objspace->gc_stress) { - mmtk_handle_user_collection_request(ractor_cache); + mmtk_handle_user_collection_request(ractor_cache, false, false); } VALUE *alloc_obj = mmtk_alloc(ractor_cache->mutator, alloc_size + 8, MMTk_MIN_OBJ_ALIGN, 0, MMTK_ALLOCATION_SEMANTICS_DEFAULT); |