Thanks to visit codestin.com
Credit goes to Github.com

Skip to content

Releases: bdwgc/bdwgc

8.2.10

18 Oct 20:25

Choose a tag to compare

Changes

  • Add missing test_cpp dependency on gc_allocator.h in build scripts
  • Add Serenity OS to list of platforms with POSIX threads in configure
  • Avoid abort on ResumeThread failure if Win32 DllMain closes thread handle
  • Avoid code duplication in GC_dyld_image_add/remove on Darwin
  • Do not define GC_SysVGetDataStart on AIX
  • Do not produce '-lpthread' by threadlibs on Tru64/OSF1
  • Do not search for data start using GC_find_limit on Haiku
  • Do not use deprecated _dyld_bind_fully_image_containing_address (Darwin)
  • Do not use deprecated get_etext and get_end on Darwin
  • Do not use deprecated getsectbynamefromheader_64 (Darwin)
  • Duplicate abort message in system app crash dialog on Haiku
  • Eliminate 'allocating insufficient size 0 for char` gcc warning in gctest
  • Eliminate 'compare signed/unsigned in check_finalizer_nested' bcc warning
  • Eliminate 'conversion from void* to ptr_t' g++ warning in PS_ALLOCA_BUF
  • Eliminate 'int-to-ptr cast' gcc warning in GC_push_all_stacks on Solaris
  • Eliminate 'int-to-ptr cast' gcc warning in GC_restart_all on OpenBSD
  • Eliminate 'int-to-ptr cast' gcc warnings in DEBUG_THREADS code
  • Eliminate 'message number 726 is invalid' wcc warning
  • Eliminate 'unused parameter fd' gcc warning in NOSYS GC_write
  • Eliminate 'value exceeds maximum obj size' gcc warning in hugetest on x32
  • Ensure no GC_proc_buf overrun on Solaris
  • Export CMake libraries with aliases
  • Fix 'cannot implement AO_compare_and_swap_full' error by wcc in tests
  • Fix 'cannot locate assembly file' bcc32 error in CMake script
  • Fix 'conflicting types for sbrk' gcc error on Solaris if redirect malloc
  • Fix 'missing GNU-stack section in atomic_ops_sysdeps' ld warning
  • Fix 'symbol undefined _snprintf' dmc linker error in cordtest
  • Fix 'undefined STACKBOTTOM' preprocessor error for no-OS PowerPC target
  • Fix 'undefined symbol GC_arrays` in tools on Solaris
  • Fix 'undefined symbol sbrk' linker error on FreeBSD
  • Fix all broken URLs in documentation (as of Nov 2024)
  • Fix assertion violation about GC_mark_lock_holder in fork_child_proc
  • Fix blocked signals in fork_prepare_proc on HP/UX
  • Fix cast of struct-based pthread_t to void pointer on Win32
  • Fix code blocks formatting in .md files
  • Fix compilation error regarding locks initialization in GC_init on HP_PA
  • Fix CPP_WORDSZ for LoongArch
  • Fix deprecation warning about support of CMake older than v3.10
  • Fix extraneous '#' symbol before comment near USE_WINALLOC for Cygwin
  • Fix GC_GRANULE_BYTES for SPARC V9
  • Fix GC_suspend abort when the thread is deleted by DllMain
  • Fix GC_threads alignment caused by 1-byte global AO_TS_t variables (wcc)
  • Fix GETPAGESIZE and USE_M[UN]MAP for Nintendo Switch
  • Fix getting memory from OS on Haiku
  • Fix I_HOLD_LOCK assertion violation in child process
  • Fix mark lock in child process after fork
  • Fix missing export for Symbian-specific GC_init_global_static_roots
  • Fix missing parentheses in SIG_THR_RESTART macro definition
  • Fix print_heap_obj call with the lock held in backgraph add_edge
  • Fix pthread id stored in GC_threads of child process
  • Fix pthread id stored in key thread_specific_data of child process
  • Fix pthread_sigmask result checking in GC_start_mark_threads_inner
  • Fix reading async proc maps when GC is single-threaded but process is not
  • Fix rounding up in STACKBOTTOM for OSF1
  • Fix stack base detection on Haiku by using pthread_getattr_np()
  • Fix stack direction detection in setjmp_t on E2K
  • Fix symbols alignment checking for CRIS and M68K
  • Fix undefined reference to GC_objfreelist and GC_bytes_allocd
  • Fix usage of new structured procfs interface on Solaris
  • Fix various typos in comments and documentation
  • Force use of spin locks to improve performance on Haiku
  • Grow GC_proc_buf to required size in GC_proc_read_dirty instead of WARN
  • Handle sparc-sun-solaris3 (SunOS6) in configure to use sparc_mach_dep.S
  • Initial support of Serenity OS on x86[_64]
  • Refine comment in fork_child_proc() about GC_allocate_ml attribute
  • Refine description of 'more background' links in Overview document
  • Remove always-false check if C++ allocator.allocate returns null in test
  • Remove comment about limited support of memory unmapping
  • Remove improper comment about returned value of CORD_extend_path
  • Remove outdated comment about 'make distcheck' from Makefile.am
  • Support RISC-V ILP32 ABI (rv64ilp32)
  • Suppress 'missing return value' wcc warning for AO asm primitives
  • Suppress 'unreachable code' wcc warnings in win32 threads ASSERT (CMake)
  • Turn off thread suspend/resume API support explicitly
  • Update libatomic_ops repo URL in README after repo transfer
  • Update URLs in documentation after repo transfer to bdwgc organization
  • Workaround 'stdcall ignored for this target' clang warning on Cygwin64
  • Workaround 'array index 4096 is above bounds' gcc warning in malloc_kind
  • Workaround 'REFERENCED_DYNAMICALLY flag' linker error on macOS 15.4
  • Workaround incremental collection fails on Haiku
  • Workaround tests crash if mprotect-based VDB is manually selected (bcc)
  • Workaround undefined GC_ptr_store_and_dirty MinGW error in Makefile.direct
  • Workaround vpush/vpop instructions generation for non-FPU ARMv5 target

Build status

AppVeyor CI build
Github actions build
Travis CI build

Distribution tarball

gc-8.2.10.tar.gz (see the Assets, md5: 55cbbc3a1097ed430c846ae6c43e84c5)

8.0.16

18 Oct 07:33

Choose a tag to compare

Changes

  • Add missing test_cpp dependency on gc_allocator.h in build scripts
  • Avoid abort on ResumeThread failure if Win32 DllMain closes thread handle
  • Do not define GC_SysVGetDataStart on AIX
  • Do not produce '-lpthread' by threadlibs on Tru64/OSF1
  • Eliminate 'allocating insufficient size 0 for char` gcc warning in gctest
  • Eliminate 'compare signed/unsigned in check_finalizer_nested' bcc warning
  • Eliminate 'int-to-ptr cast' gcc warning in GC_restart_all on OpenBSD
  • Eliminate 'int-to-ptr cast' gcc warnings in DEBUG_THREADS code
  • Eliminate 'unused parameter fd' gcc warning in NOSYS GC_write
  • Eliminate 'value exceeds maximum obj size' gcc warning in hugetest on x32
  • Eliminate 'writing into region of size 0' gcc warning in suspend_handler
  • Fix 'cannot implement AO_compare_and_swap_full' error by wcc in tests
  • Fix 'missing GNU-stack section in atomic_ops_sysdeps' ld warning
  • Fix 'symbol undefined _snprintf' dmc linker error in cordtest
  • Fix 'undefined STACKBOTTOM' preprocessor error for no-OS PowerPC target
  • Fix 'undefined symbol sbrk' linker error on FreeBSD
  • Fix blocked signals in fork_prepare_proc on HP/UX
  • Fix code blocks formatting in .md files
  • Fix GC_GRANULE_BYTES for SPARC V9
  • Fix GC_suspend abort when the thread is deleted by DllMain
  • Fix GETPAGESIZE and USE_M[UN]MAP for Nintendo Switch
  • Fix missing parentheses in SIG_THR_RESTART macro definition
  • Fix print_heap_obj call with the lock held in backgraph add_edge
  • Fix pthread id stored in GC_threads of child process
  • Fix pthread_sigmask result checking in GC_start_mark_threads_inner
  • Fix rounding up in STACKBOTTOM for OSF1
  • Fix symbols alignment checking for CRIS and M68K
  • Fix undefined reference to GC_objfreelist and GC_bytes_allocd
  • Fix usage of new structured procfs interface on Solaris
  • Fix various typos in comments and documentation
  • Refine comment in fork_child_proc() about GC_allocate_ml attribute
  • Remove always-false check if C++ allocator.allocate returns null in test
  • Remove comment about limited support of memory unmapping
  • Remove improper comment about returned value of CORD_extend_path
  • Remove outdated comment about 'make distcheck' from Makefile.am
  • Update libatomic_ops repo URL in README after repo transfer
  • Update URLs in documentation after repo transfer to bdwgc organization
  • Workaround 'stdcall ignored for this target' clang warning on Cygwin64
  • Workaround tests crash if mprotect-based VDB is manually selected (bcc)

Build status

AppVeyor CI build
Github actions build
Travis CI build

Distribution tarball

gc-8.0.16.tar.gz (see the Assets, md5: 4b974555e9cefbef6a130aaa7902ab36)

7.6.24

17 Oct 12:21

Choose a tag to compare

Changes

  • Add missing test_cpp dependency on gc_allocator.h in build scripts
  • Allocate non-executable memory by default (CMake)
  • Avoid abort on ResumeThread failure if Win32 DllMain closes thread handle
  • Do not produce '-lpthread' by threadlibs on Tru64/OSF1
  • Eliminate 'allocating insufficient size 0 for char` gcc warning in gctest
  • Eliminate 'compare signed/unsigned in check_finalizer_nested' bcc warning
  • Eliminate 'int-to-ptr cast' gcc warning in GC_restart_all on OpenBSD
  • Eliminate 'int-to-ptr cast' gcc warnings in DEBUG_THREADS code
  • Eliminate 'unused parameter fd' gcc warning in NOSYS GC_write
  • Fix 'missing GNU-stack section in atomic_ops_sysdeps' ld warning
  • Fix 'symbol undefined _snprintf' dmc linker error in cordtest
  • Fix 'undefined STACKBOTTOM' preprocessor error for no-OS PowerPC target
  • Fix 'undefined symbol sbrk' linker error on FreeBSD
  • Fix blocked signals in fork_prepare_proc on HP/UX
  • Fix CMake build on macOS Catalina
  • Fix GC_suspend abort when the thread is deleted by DllMain
  • Fix missing parentheses in SIG_THR_RESTART macro definition
  • Fix print_heap_obj call with the lock held in backgraph add_edge
  • Fix pthread id stored in GC_threads of child process
  • Fix pthread_sigmask result checking in GC_start_mark_threads_inner
  • Fix rounding up in STACKBOTTOM for OSF1
  • Fix symbols alignment checking for CRIS and M68K
  • Fix undefined reference to GC_objfreelist and GC_bytes_allocd
  • Fix various typos in comments and documentation
  • Remove always-false check if C++ allocator.allocate returns null in test
  • Remove improper comment about returned value of CORD_extend_path
  • Remove outdated comment about 'make distcheck' from Makefile.am
  • Update libatomic_ops repo URL in README after repo transfer
  • Update URLs in documentation after repo transfer to bdwgc organization
  • Workaround tests crash if mprotect-based VDB is manually selected (bcc)

Build status

AppVeyor CI build
Github actions build
Travis CI build

Distribution tarball

gc-7.6.24.tar.gz (see the Assets, md5: c82a0dfaea66589601c8136efd3b82ab)

7.4.30

17 Oct 11:30

Choose a tag to compare

Changes

  • Add missing test_cpp dependency on gc_allocator.h in build scripts
  • Allocate non-executable memory by default (CMake)
  • Avoid abort on ResumeThread failure if Win32 DllMain closes thread handle
  • Do not produce '-lpthread' by threadlibs on Tru64/OSF1
  • Eliminate 'allocating insufficient size 0 for char` gcc warning in gctest
  • Eliminate 'compare signed/unsigned in check_finalizer_nested' bcc warning
  • Eliminate 'unused parameter fd' gcc warning in NOSYS GC_write
  • Fix 'symbol undefined _snprintf' dmc linker error in cordtest
  • Fix 'undefined STACKBOTTOM' preprocessor error for no-OS PowerPC target
  • Fix 'undefined symbol sbrk' linker error on FreeBSD
  • Fix blocked signals in fork_prepare_proc on HP/UX
  • Fix CMake build on macOS Catalina
  • Fix GC_suspend abort when the thread is deleted by DllMain
  • Fix missing parentheses in SIG_THR_RESTART macro definition
  • Fix print_heap_obj call with the lock held in backgraph add_edge
  • Fix rounding up in STACKBOTTOM for OSF1
  • Fix symbols alignment checking for CRIS and M68K
  • Fix undefined reference to GC_objfreelist and GC_bytes_allocd
  • Fix various typos in comments and documentation
  • Remove improper comment about returned value of CORD_extend_path
  • Remove outdated comment about 'make distcheck' from Makefile.am
  • Update URLs in documentation after repo transfer to bdwgc organization
  • Workaround tests crash if mprotect-based VDB is manually selected (bcc)

Build status

AppVeyor CI build
Github actions build
Travis CI build

Distribution tarball

gc-7.4.30.tar.gz (see the Assets, md5: e55a6ac1d5a53bb7e6bc793e1281117b)

7.2t

17 Oct 10:09

Choose a tag to compare

Changes

  • Add missing test_cpp dependency on gc_allocator.h in build scripts
  • Allocate non-executable memory by default (CMake)
  • Do not produce '-lpthread' by threadlibs on Tru64/OSF1
  • Fix 'symbol undefined _snprintf' dmc linker error in cordtest
  • Fix 'undefined STACKBOTTOM' preprocessor error for no-OS PowerPC target
  • Fix (enable) Cygwin-64 build
  • Fix blocked signals in fork_prepare_proc on HP/UX
  • Fix CMake build on macOS Catalina
  • Fix missing parentheses in SIG_THR_RESTART macro definition
  • Fix print_heap_obj call with the lock held in backgraph add_edge
  • Fix rounding up in STACKBOTTOM for OSF1
  • Fix symbols alignment checking for CRIS and M68K
  • Fix undefined reference to GC_objfreelist and GC_bytes_allocd
  • Fix various typos in comments and documentation
  • Remove improper comment about returned value of CORD_extend_path
  • Remove outdated comment about 'make distcheck' from Makefile.am
  • Update URLs in documentation after repo transfer to bdwgc organization
  • Workaround tests crash if mprotect-based VDB is manually selected (bcc)

Build status

AppVeyor CI build
Github actions build
Travis CI build

Distribution tarball

gc-7.2t.tar.gz (see the Assets, includes a copy of libatomic_ops-7.2l, md5: bb238ed131662cd5eaa4a16c626246b9)

8.2.8

08 Sep 20:51

Choose a tag to compare

Changes

  • Allow GC_size() argument to be null
  • Disable backtrace saving at garbage collections if DONT_SAVE_TO_LAST_STACK
  • Eliminate 'cast signed to bigger unsigned' CSA warnings in GC_find_limit
  • Eliminate 'x might be clobbered by longjmp' gcc warning in setjmp_t.c
  • Fix 'un-mprotect vdb failed' abort with out-of-memory reason on Linux
  • Fix ADD_CALL_CHAIN() placement to follow GC_store_debug_info_inner call
  • Fix GC_debug_realloc to support custom kind
  • Fix GC_is_visible for case of arg pointing exactly to object upper bound
  • Fix GC_print_trace_inner to print the last element of the circular buffer
  • Fix cordtst2.tmp file deletion in cordtest on Windows
  • Fix double lock in GC_malloc called from backtrace()
  • Fix handling of page-unaligned boundaries in soft_set_grungy_pages
  • Fix heap blocks size computation by GC_get_memory_use
  • Fix indent of a closing curly braces in GC_apply_to_all_blocks
  • Fix infinite resend lost signals if a thread is restarted by SIGQUIT
  • Fix null pointer dereference in GC_is_visible if type_descr is null
  • Fix per_object_helper() after changing hb_sz units
  • Fix pointer relational comparison in GC_do_enumerate_reachable_objects
  • Fix poor thread-local allocation performance because of double EXTRA_BYTES
  • Fix potential GC_add_roots_inner call with an overflowed pointer (Win32)
  • Fix potential address overflow in GC_add_to_heap
  • Fix potential buffer overrun during read in GC_text_mapping
  • Fix various typos in comments
  • Prevent GC_noop_sink from scanning by the collector
  • Prevent redirected malloc call from a garbage collection routine
  • Redirect malloc_usable_size() in leak_detector.h
  • Remove redundant dirty/reachable_here calls in GC_malloc_explicitly_typed
  • Update and fix diagrams describing the tree structure for pointer lookups
  • Use atomic store to set GC_first_nonempty in GC_do_parallel_mark
  • Use atomic store to set entry id and update cache_ptr in slow_getspecific
  • Workaround '.obj file not found' error reported by watcom wlib

Build status

Travis CI build
AppVeyor CI build
Github actions build

Distribution tarball

gc-8.2.8.tar.gz (see the Assets, md5: ad7298be1a300fc0ce75196718036c61)

8.0.14

07 Sep 18:21

Choose a tag to compare

Changes

  • Avoid gcc stringop-overflow warning for intended overflow in smashtest
  • Disable backtrace saving at garbage collections if DONT_SAVE_TO_LAST_STACK
  • Eliminate 'cast signed to bigger unsigned' CSA warnings in GC_find_limit
  • Fix ADD_CALL_CHAIN() placement to follow GC_store_debug_info_inner call
  • Fix GC_debug_realloc to support custom kind
  • Fix GC_is_visible for case of arg pointing exactly to object upper bound
  • Fix GC_print_trace_inner to print the last element of the circular buffer
  • Fix cordtst2.tmp file deletion in cordtest on Windows
  • Fix double lock in GC_malloc called from backtrace()
  • Fix heap blocks size computation by GC_get_memory_use
  • Fix indent of a closing curly braces in GC_apply_to_all_blocks
  • Fix infinite resend lost signals if a thread is restarted by SIGQUIT
  • Fix null pointer dereference in GC_is_visible if type_descr is null
  • Fix per_object_helper() after changing hb_sz units
  • Fix pointer relational comparison in GC_do_enumerate_reachable_objects
  • Fix poor thread-local allocation performance because of double EXTRA_BYTES
  • Fix potential GC_add_roots_inner call with an overflowed pointer (Win32)
  • Fix potential address overflow in GC_add_to_heap
  • Fix potential buffer overrun during read in GC_text_mapping
  • Fix typos in comments
  • Prevent GC_noop_sink from scanning by the collector
  • Prevent redirected malloc call from a garbage collection routine
  • Remove redundant dirty/reachable_here calls in GC_malloc_explicitly_typed
  • Update and fix diagrams describing the tree structure for pointer lookups

Build status

Travis CI build
AppVeyor CI build

Distribution tarball

gc-8.0.14.tar.gz (see the Assets, md5: 22721960fc4a6ed7fa39bd6d4985ee40)

7.6.22

07 Sep 08:26

Choose a tag to compare

Changes

  • Avoid gcc stringop-overflow warning for intended overflow in smashtest
  • Eliminate 'cast signed to bigger unsigned' CSA warnings in GC_find_limit
  • Fix ADD_CALL_CHAIN() placement to follow GC_store_debug_info_inner call
  • Fix GC_debug_realloc to support custom kind
  • Fix GC_is_visible for case of arg pointing exactly to object upper bound
  • Fix GC_print_trace_inner to print the last element of the circular buffer
  • Fix cordtst2.tmp file deletion in cordtest on Windows
  • Fix double lock in GC_malloc called from backtrace()
  • Fix heap blocks size computation by GC_get_memory_use
  • Fix indent of a closing curly braces in GC_apply_to_all_blocks
  • Fix null pointer dereference in GC_is_visible if type_descr is null
  • Fix per_object_helper() after changing hb_sz units
  • Fix pointer relational comparison in GC_do_enumerate_reachable_objects
  • Fix poor thread-local allocation performance because of double EXTRA_BYTES
  • Fix potential GC_add_roots_inner call with an overflowed pointer (Win32)
  • Fix potential address overflow in GC_add_to_heap
  • Fix potential buffer overrun during read in GC_text_mapping
  • Fix typos in comments
  • Prevent GC_noop_sink from scanning by the collector
  • Prevent redirected malloc call from a garbage collection routine
  • Remove redundant dirty/reachable_here calls in GC_malloc_explicitly_typed
  • Update and fix diagrams describing the tree structure for pointer lookups

Build status

Travis CI build
AppVeyor CI build

Distribution tarball

gc-7.6.22.tar.gz (see the Assets, md5: 6abe6ad592e1976d7a28e5661a8ea7c9)

7.4.28

07 Sep 06:56

Choose a tag to compare

Changes

  • Avoid gcc stringop-overflow warning for intended overflow in smashtest
  • Fix ADD_CALL_CHAIN() placement to follow GC_store_debug_info_inner call
  • Fix GC_is_visible for case of arg pointing exactly to object upper bound
  • Fix GC_print_trace_inner to print the last element of the circular buffer
  • Fix cordtst2.tmp file deletion in cordtest on Windows
  • Fix double lock in GC_malloc called from backtrace()
  • Fix indent of a closing curly braces in GC_apply_to_all_blocks
  • Fix null pointer dereference in GC_is_visible if type_descr is null
  • Fix per_object_helper() after changing hb_sz units
  • Fix poor thread-local allocation performance because of double EXTRA_BYTES
  • Fix potential GC_add_roots_inner call with an overflowed pointer (Win32)
  • Fix potential address overflow in GC_add_to_heap
  • Fix potential buffer overrun during read in GC_text_mapping
  • Fix typos in comments
  • Prevent redirected malloc call from a garbage collection routine
  • Remove redundant dirty/reachable_here calls in GC_malloc_explicitly_typed
  • Update and fix diagrams describing the tree structure for pointer lookups

Build status

Travis CI build
AppVeyor CI build

Distribution tarball

gc-7.4.28.tar.gz (see the Assets, md5: ab05315b0be2867f0e5e8b5cbe77f418)

7.2s

06 Sep 21:55

Choose a tag to compare

Changes

  • Avoid gcc stringop-overflow warning for intended overflow in smashtest
  • Eliminate 'type defaults to int in declaration' warning (REDIRECT_MALLOC)
  • Eliminate 'value exceeds maximum object size' GCC warning in huge_test
  • Eliminate warning and simplify expression in GC_init_explicit_typing
  • Fix 'GetVersion deprecated' compiler warning in os_dep (MS VC)
  • Fix 'value truncated' compiler warning in CORD_cat (MS VC)
  • Fix ADD_CALL_CHAIN() placement to follow GC_store_debug_info_inner call
  • Fix GC_is_visible for case of arg pointing exactly to object upper bound
  • Fix GC_jmp_buf multiple definition
  • Fix GC_print_trace_inner to print the last element of the circular buffer
  • Fix double lock in GC_malloc called from backtrace()
  • Fix indent of a closing curly braces in GC_apply_to_all_blocks
  • Fix null pointer dereference in GC_is_visible if type_descr is null
  • Fix per_object_helper() after changing hb_sz units
  • Fix poor thread-local allocation performance because of double EXTRA_BYTES
  • Fix potential GC_add_roots_inner call with an overflowed pointer (Win32)
  • Fix potential address overflow in GC_add_to_heap
  • Fix potential buffer overrun during read in GC_text_mapping
  • Fix typos in comments
  • Prevent compiler warnings regarding unused argument and printf in extra
  • Prevent redirected malloc call from a garbage collection routine
  • Remove barrett_diagram file duplicated by tree.html
  • Remove non-existing DISCARD_WORDS from GC data structure ASCII diagram
  • Resolve GCC warning in setjmp_t.c
  • Update and fix diagrams describing the tree structure for pointer lookups

Build status

Travis CI build
AppVeyor CI build

Distribution tarball

gc-7.2s.tar.gz (see the Assets, includes a copy of libatomic_ops-7.2l, md5: 268deee462882d079cec2e1be0316474)