]> granicus.if.org Git - gc/commit
Re-implement GC_finalized_malloc using GC_malloc_kind
authorIvan Maidanski <ivmai@mail.ru>
Wed, 20 Jul 2016 22:26:58 +0000 (01:26 +0300)
committerIvan Maidanski <ivmai@mail.ru>
Wed, 20 Jul 2016 22:26:58 +0000 (01:26 +0300)
commit0ce1a71ec28c4d07dba09c5f32e4937708492cf2
tree70a529d92565c475d24534c3cfa54c314a4eeb56
parent098457839dcb6c935d0aa18c6459c800d4c646b2
Re-implement GC_finalized_malloc using GC_malloc_kind
(code refactoring)

* fnlz_mlc.c: Do not test THREAD_LOCAL_ALLOC; do not include
thread_local_alloc.h.
* fnlz_mlc.c (GC_finalized_objfreelist, GC_core_finalized_malloc):
Remove.
* fnlz_mlc.c [ENABLE_DISCLAIM]: Include gc_inline.h (to declare
GC_malloc_kind).
* fnlz_mlc.c [ENABLE_DISCLAIM] (GC_init_finalized_malloc): Do not use
GC_finalized_objfreelist.
* fnlz_mlc.c [ENABLE_DISCLAIM] (GC_finalized_malloc): Call
GC_malloc_kind (instead of own implementation mostly duplicating the
algorithm of GC_malloc_kind[_global]); change type of "op" local
variable from ptr_t to word*.
* include/private/thread_local_alloc.h [ENABLE_DISCLAIM]
(THREAD_FREELISTS_KINDS): Increase value by 1.
* include/private/thread_local_alloc.h
(thread_local_freelists.finalized_freelists,
GC_finalized_objfreelist): Remove.
* thread_local_alloc.c (GC_finalized_objfreelist): Remove.
* thread_local_alloc.c (GC_init_thread_local, GC_destroy_thread_local,
GC_mark_thread_local_fls_for, GC_check_tls_for): Do not access
finalized_freelists.
fnlz_mlc.c
include/private/thread_local_alloc.h
thread_local_alloc.c