Skip to content
  • Ivan Maidanski's avatar
    Remove stubborn objects allocation code completely · 30613f4e
    Ivan Maidanski authored
    (code refactoring)
    
    * README.md (Incremental/Generational Collection): Remove information
    about stubborn objects; add information about GC_end_stubborn_change
    usage.
    * alloc.c [STUBBORN_ALLOC] (GC_finish_collection): Do not call
    GC_clean_changing_list.
    * checksums.c (NSUMS, GC_check_dirty): Remove comment related to
    stubborn objects.
    * checksums.c [STUBBORN_ALLOC] (GC_on_free_list): Remove.
    * doc/README.macros (STUBBORN_ALLOC): Likewise.
    * include/private/gc_priv.h [STUBBORN_ALLOC] (GC_sobjfreelist,
    GC_arrays._sobjfreelist, GC_changed_pages, GC_arrays._changed_pages,
    GC_prev_changed_pages, GC_arrays._prev_changed_pages): Likewise.
    * include/private/gc_priv.h (GC_read_changed, GC_page_was_changed,
    GC_clean_changing_list, GC_stubborn_init): Likewise.
    * tests/test.c (stubborn_count): Likewise.
    * checksums.c (GC_n_changed_errors): Likewise.
    * checksums.c [STUBBORN_ALLOC] (GC_update_check_page, GC_check_dirty):
    Do not update GC_n_changed_errors value.
    * checksums.c (GC_check_dirty): Do not check/print GC_n_changed_errors
    value.
    * configure.ac (checksums): Update help message (remove information
    about stubborn objects).
    * dbg_mlc.c (GC_print_obj, GC_debug_end_stubborn_change,
    GC_debug_realloc, GC_debug_generic_or_special_malloc): Do not handle
    STUBBORN object kind specially.
    * mallocx.c (GC_generic_or_special_malloc, GC_realloc): Likewise.
    * mark.c [!GC_DISABLE_INCREMENTAL] (GC_push_next_marked_dirty):
    Likewise.
    * dbg_mlc.c [STUBBORN_ALLOC] (GC_debug_malloc_stubborn): Redirect to
    GC_debug_malloc; remove GC_ATTR_MALLOC.
    * dbg_mlc.c [STUBBORN_ALLOC] (GC_debug_change_stubborn): Change to
    no-op.
    * doc/README.amiga (WHATS NEW): Do not reference GC_malloc_stubborn.
    * doc/README.macros (CHECKSUMS): Update (remove information about
    stubborn objects).
    * doc/gcdescr.md (Allocation, Generational Collection and Dirty Bits):
    Likewise.
    * doc/gcinterface.md (C/C++ Interface): Likewise.
    * doc/leak.md (Using the Garbage Collector as Leak Detector): Likewise.
    * doc/gcdescr.md (Generational Collection and Dirty Bits): Add
    information about MANUAL_VDB.
    * include/gc.h (GC_malloc, GC_free, GC_realloc): Update comment (remove
    information about stubborn objects).
    * malloc.c (GC_generic_malloc_inner): Likewise.
    * tests/test.c (reverse_test_inner): Likewise.
    * include/gc.h (GC_malloc_stubborn, GC_debug_malloc_stubborn): Add
    GC_ATTR_DEPRECATED; remove GC_ATTR_MALLOC and GC_ATTR_ALLOC_SIZE.
    * include/gc.h (GC_MALLOC_STUBBORN, GC_NEW_STUBBORN): Redirect to normal
    GC_MALLOC/NEW; add comment that stubborn objects allocation is
    deprecated.
    * include/gc.h [GC_DEBUG] (GC_CHANGE_STUBBORN): Redirect to
    GC_change_stubborn (not GC_debug_change_stubborn).
    * include/gc.h (GC_change_stubborn): Add GC_ATTR_DEPRECATED.
    * include/gc.h [!CPPCHECK] (GC_debug_change_stubborn): Likewise.
    * include/gc.h (GC_change_stubborn, GC_debug_change_stubborn): Remove
    GC_ATTR_NONNULL.
    * include/gc.h (GC_end_stubborn_change): Add comment related to usage
    when the library is built with MANUAL_VDB defined.
    * include/gc.h [_AMIGA && !GC_AMIGA_MAKINGLIB] (GC_malloc_stubborn):
    Remove macro.
    * include/private/gc_priv.h (STUBBORN_ALLOC): Remove comment.
    * include/private/gc_priv.h (STUBBORN): Replace with
    GC_N_KINDS_INITIAL_VALUE definition.
    * mark.c (GC_obj_kinds): Remove initialization for STUBBORN_ALLOC
    element.
    * mark.c (GC_N_KINDS_INITIAL_VALUE): Move to gc_priv.h.
    * mark.c (GC_n_rescuing_pages): Define only if GC_DISABLE_INCREMENTAL.
    * mark.c [STUBBORN_ALLOC] (GC_initiate_gc): Do not call GC_read_changed.
    * misc.c [STUBBORN_ALLOC] (GC_init): Do not call GC_stubborn_init.
    * stubborn.c (GC_malloc_stubborn): Remove GC_ATTR_MALLOC.
    * tests/test.c [!VERY_SMALL_CONFIG] (cons): Replace GC_MALLOC_STUBBORN
    with GC_MALLOC call; update collectable_count instead of stubborn_count.
    * tests/test.c (check_heap_stats): Do not print stubborn_count value.
    30613f4e
Loading