hboehm [Fri, 18 May 2007 04:44:44 +0000 (04:44 +0000)]
2007-05-17 Hans Boehm <Hans.Boehm@hp.com>
* src/atomic_ops/sysdeps/gcc/hppa.h (AO_test_and_set_full):
Add cast for return.
2007-05-17 Hans Boehm <Hans.Boehm@hp.com>
* include/private/gc_priv.h: Define AO_REQUIRE_CAS.
hboehm [Wed, 16 May 2007 23:28:32 +0000 (23:28 +0000)]
2007-05-16 Hans Boehm <Hans.Boehm@hp.com>
* finalize.c (GC_unreachable_finalize_mark_proc): Don't return void
value.
hboehm [Tue, 15 May 2007 19:46:56 +0000 (19:46 +0000)]
2007-05-15 Hans Boehm <Hans.Boehm@hp.com>
* configure.ac, version.h, doc/README: Change version to 7.0alpha10.
* configure: Regenerate.
hboehm [Tue, 15 May 2007 19:30:33 +0000 (19:30 +0000)]
2007-05-15 Hans Boehm <Hans.Boehm@hp.com>
* configure.ac, version.h, doc/README: Change version to 7.0alpha9.
* configure: Regenerate.
hboehm [Tue, 15 May 2007 18:59:21 +0000 (18:59 +0000)]
2007-05-15 Hans Boehm <Hans.Boehm@hp.com>
* Makefile.am: Include NT_STSTIC_THREADS_MAKEFILE in dist.
* Makefile.in: Regenerate.
* include/private/gc_locks.h: GC_compare_and_exchange, GC_atomic_add:
remove. NUMERIC_THREAD_ID, THREAD_EQUAL: New. GC_lock_holder: now
unsigned long. I_DONT_HOLD_LOCK, I_HOLD_LOCK: Update.
* pthread_stop_world.c, pthread_support.c, win32_threads.c: Use
NUMERIC_THREAD_ID, THREAD_EQUAL.
* include/private/gcconfig.h: GENERIC_COMPARE_AND_SWAP: Remove.
* include/private/thread_local_alloc.h: Don't USE_COMPILER_TLS on
ARM.
hboehm [Tue, 15 May 2007 18:57:47 +0000 (18:57 +0000)]
2007-05-15 Hans Boehm <Hans.Boehm@hp.com>
* Makefile.am: Include NT_STSTIC_THREADS_MAKEFILE in dist.
* Makefile.in: Regenerate.
* include/private/gc_locks.h: GC_compare_and_exchange, GC_atomic_add:
remove. NUMERIC_THREAD_ID, THREAD_EQUAL: New. GC_lock_holder: now
unsigned long. I_DONT_HOLD_LOCK, I_HOLD_LOCK: Update.
* pthread_stop_world.c, pthread_support.c, win32_threads.c: Use
NUMERIC_THREAD_ID, THREAD_EQUAL.
* include/private/gcconfig.h: GENERIC_COMPARE_AND_SWAP: Remove.
* include/private/thread_local_alloc.h: Don't USE_COMPILER_TLS on
ARM.
* libatomic_ops-1.2/doc/README.txt: Update to reflect C++
standardization effort.
hboehm [Fri, 11 May 2007 21:55:38 +0000 (21:55 +0000)]
2007-05-11 Hans Boehm <Hans.Boehm@hp.com>
* dbg_mlc.c, include/gc.h, finalize.c: Merge Alexandre Oliva's
GC_debug_register_finalizer_unreachable() patch from gcc tree.
* thread_local_alloc.c (GC_malloc, GC_malloc_atomic): Add assertions
to check GC has been initialized.
hboehm [Fri, 11 May 2007 00:30:36 +0000 (00:30 +0000)]
2007-05-10 Hans Boehm <Hans.Boehm@hp.com>
* include/gc_cpp.h: Documentation updates.
* include/gc_config_macros.h: Don't check for __ppc__ to set
DARWIN_THREADS.
* Makefile.am: Include configure_atomic_ops.sh in dist.
* Makefile.in: Regenerate.
hboehm [Tue, 8 May 2007 22:30:15 +0000 (22:30 +0000)]
2007-05-08 Hans Boehm <Hans.Boehm@hp.com>
* Makefile.am: Dont distribute copied atomic_ops files. Include
libatomic_ops with "make dist".
* Makefile.in: Regenerate.
* configure: Regenerate.
* configure.ac: Enable THREAD_LOCAL_ALLOC for Cygwin with threads.
* win32_threads.c: Report error for Cygwin + GC_DLL.
hboehm [Tue, 8 May 2007 19:22:39 +0000 (19:22 +0000)]
2007-05-08 Hans Boehm <Hans.Boehm@hp.com>
* Makefile.direct: Update THREAD_LOCAL_ALLOC documentation.
* cord/de_win.c: Rename and move AboutBox. Call GC_INIT. Remove
MakeProcInstance anachronism.
* doc/README.macros: Officially remove elif prohibition.
Remove documentation for defunct SRC_M3 support.
* include/gc.h: Remove more SRC_M3 references.
* include/private/gcconfig.h: Remove still more SRC_M3 references.
GC_SOLARIS_THREADS no longer needs to be checked separately.
hboehm [Tue, 8 May 2007 18:27:08 +0000 (18:27 +0000)]
2007-05-08 Hans Boehm <Hans.Boehm@hp.com>
* thread_local_alloc.c, include/private/thread_local_alloc.h:
Spell __declspec correctly.
* NT_STATIC_THREADS_MAKEFILE: Enable thread-local allocation.
hboehm [Tue, 8 May 2007 00:08:51 +0000 (00:08 +0000)]
2007-05-07 Hans Boehm <Hans.Boehm@hp.com>
* doc/README.win32: Adjust GC_win32_dll_threads rules again.
hboehm [Mon, 7 May 2007 23:23:50 +0000 (23:23 +0000)]
2007-05-07 Hans Boehm <Hans.Boehm@hp.com>
* mark.c (GC_mark_some wrapper): Restructure for readability, handle
GC_started_thread_while_stopped.
* misc.c (Win32 GC_write): Lock GC_write_cs only if needed.
* win32_threads.c: (client_has_run): remove,
GC_started_thread_while_stopped, GC_attached_thread: add.
(GC_push_all_stacks): Add verbose output.
(DllMain): Avoid initializing collector or the like.
Never update both thread tables.
* doc/README.win32: Adjust GC_win32_dll_threads rules.
hboehm [Mon, 7 May 2007 22:22:34 +0000 (22:22 +0000)]
2007-05-07 Hans Boehm <Hans.Boehm@hp.com>
* pthread_stop_world.c (GC_push_all_stacks): Print thread count with
GC_PRINT_VERBOSE_STATS.
hboehm [Tue, 1 May 2007 20:45:14 +0000 (20:45 +0000)]
2007-05-01 Hans Boehm <Hans.Boehm@hp.com>
(and Manuel Serrano, Craig McDaniel)
* configure.ac: Comment out redundant
AC_DEFINE(NO_EXECUTE_PERMISSION).
* configure: Regenerate.
* sparc_mach_dep.S: Remove single quote in comment.
* include/private/gcconfig.h: Fix DATAEND for NONSTOP.
* win32_threads.c: Include stdint.h for Mingw. Add GC_API for DllMain.
(GC_use_DllMain): Fix assertion.
a_tobler [Wed, 14 Feb 2007 20:13:00 +0000 (20:13 +0000)]
2007-02-14 Andreas Tobler <a.tobler@schweiz.org>
* configure.ac: Introduce extra_ldflags_libgc. Use it for Darwin.
* configure: Regenerate.
* Makefile.am (libgc_la_LDFLAGS): Use extra_ldflags_libgc.
* Makefile.in: Regenerate.
* include/private/gcconfig.h: Enable MPROTECT_VDB for all Darwin
targets. Remove comments.
Prepare ppc64 support for Darwin.
a_tobler [Mon, 29 Jan 2007 21:10:56 +0000 (21:10 +0000)]
2007-01-29 Andreas Tobler <a.tobler@schweiz.org>
* darwin_stop_world.c: Clean up and reformat code.
a_tobler [Sun, 28 Jan 2007 08:40:11 +0000 (08:40 +0000)]
2007-01-28 Andreas Tobler <a.tobler@schweiz.org>
* darwin_stop_world.c (GC_push_all_stacks): Fix compiler warnings.
Make i unsigned.
(GC_stop_world): Likewise. Remove unused GC_thread p.
(GC_start_world): Likewise.
* os_dep.c: Define GC_darwin_register_mach_handler_thread extern.
Remove double SIG_HNDLR_PTR definition.
(GC_forward_exception): Fix compiler warnings, make i unsigned.
Initialize thread_state to NULL.
(catch_exception_raise): Fix compiler warnings, make i unsigned.
hboehm [Thu, 25 Jan 2007 23:43:10 +0000 (23:43 +0000)]
2007-01-25 Petr Salinger and Hans Boehm <Hans.Boehm@hp.com>
* include/private/gc_priv.h (NEED_FIND_LIMIT, FREEBSD variant):
also define for X86_64.
* configure.ac: Move generic gnu (Hurd) case to below kfreebsd case.
* configure: Regenerate.
* doc/README.changes: Point to ChangeLog.
a_tobler [Thu, 25 Jan 2007 05:18:27 +0000 (05:18 +0000)]
2007-01-25 Andreas Tobler <a.tobler@schweiz.org>
* darwin_stop_world.c: Move THREAD_FLD defines to ...
* include/private/gc_priv.h: ... here.
Fix THREAD_STATE definitions for ppc64.
* os_dep.c (catch_exception_raise): Use THREAD_FLD for exc_state member
access.
a_tobler [Thu, 18 Jan 2007 18:51:49 +0000 (18:51 +0000)]
2007-01-18 Andreas Tobler <a.tobler@schweiz.org>
* os_dep.c (if defined(MPROTECT_VDB) && defined(DARWIN)): Clean up and
reformat code.
Correct email reference.
a_tobler [Thu, 11 Jan 2007 19:32:44 +0000 (19:32 +0000)]
2007-01-11 Andreas Tobler <a.tobler@schweiz.org>
* configure.ac (i?86*-*-darwin*): Replaced HAS_I386_THREAD_STATE_* with
HAS_X86_THREAD_STATE32_*.
(x86_64-*-darwin*): Extended the above check for x86_64-*-darwin* with
HAS_X86_THREAD_STATE64_*.
Added value 1 in the above AC_DEFINE's. Important for the upcoming
Leopard.
* configure: Regenerated.
* include/private/gcconfig.h: Modified X86_64 define for Darwin.
Removed __x86_64__ check in POWERPC section. Added base definitions
for the X86_64 Darwin port.
* include/private/gc_priv.h: Added GC_MACH_HEADER and GC_MACH_SECTION
to distinguish between 32 and 64-bit applications. Added definitions
for X86_64 Darwin.
* darwin_stop_world.c: Added HAS_X86_THREAD_STATE64___RAX. And
replaced HAS_I386_THREAD_STATE___EAX with HAS_X86_THREAD_STATE32___EAX.
(GC_push_all_stacks): Added code for X86_64 Darwin. Even for the
!DARWIN_DONT_PARSE_STACK. Maybe obsolete.
* dyn_load.c (GC_dyld_name_for_hdr): Use GC_MACH_HEADER.
(GC_dyld_image_add): Use GC_MACH_HEADER and GC_MACH_SECTION.
Distinguish between getsectbynamefromheader_64 and
getsectbynamefromheader.
* os_dep.c (catch_exception_raise): Introduce exception definition for
X86_64 Darwin. Replaced old i386_EXCEPTION_STATE_* definition with
x86_EXCEPTION_STATE32_*. Add X86_64 for exc_state.faultvaddr.
a_tobler [Tue, 9 Jan 2007 21:07:54 +0000 (21:07 +0000)]
2007-01-09 Andreas Tobler <a.tobler@schweiz.org>
* libtool.m4: Update to version from libtool-1.5.22.
* ltmain.sh: Likewise.
* ChangeLog: Created.
hboehm [Sat, 6 Jan 2007 00:25:28 +0000 (00:25 +0000)]
2007-01-05 Hans Boehm <Hans.Boehm@hp.com> (Really Andreas Tobler, others)
* os_dep.c, include/private/gcconfig.h: Partial (?) FREEBSD/X86_64
support.
* include/private/gc_priv.h (i386_THREAD_STATE_COUNT): Fix spelling.
hboehm [Thu, 14 Dec 2006 21:51:39 +0000 (21:51 +0000)]
2006-12-14 Hans Boehm <Hans.Boehm@hp.com> (with much help, particularly
from Allan Hsu)
* include/private/gcconfig.h: Handle Darwin/X86-64 a bit better.
* include/private/gc_priv.h (GC_THREAD_STATE_T, GC_MAC_THREAD_STATE,
GC_MACH_THREAD_STATE_COUNT): Define for DARWIN.
* os_dep.c: Use GC_MAC_THREAD_STATE.
* darwin_stop_world.c: More portable register state access,
fix premature vm_deallocate.
* configure.ac: Add tests for machine state field names on Darwin.
* configure: Regenerate with autoconf 2.60a.
hboehm [Wed, 6 Dec 2006 19:16:14 +0000 (19:16 +0000)]
2006-12-06 Hans Boehm <Hans.Boehm@hp.com> and Peter Wang
* include/private/thread_local_alloc.h, include/new_gc_alloc.h:
Fix __GNUC__ spelling.
* include/gc.h (GC_general_register_disappearing_link):
Add comments.
hboehm [Fri, 17 Nov 2006 05:37:13 +0000 (05:37 +0000)]
2006-11-16 Hans Boehm <Hans.Boehm@hp.com> (really mostly Bruce Hoult)
* doc/README.Mac: Clarify that this file is mostly obsolete.
* reclaim.c (GC_print_free_list): New debug function.
hboehm [Fri, 17 Nov 2006 05:28:22 +0000 (05:28 +0000)]
2006-11-16 Hans Boehm <Hans.Boehm@hp.com> (really from Aleksey Demakov,
Barry DeFreese and possibly other Debian maintainers)
* configure.ac dyn_load.c os_dep.c pthread_support.c,
threadlibs.c include/gc_config_macros.h, include/private/gcconfig.h:
Add GC_GNU_THREADS/HURD support.
hboehm [Thu, 5 Oct 2006 19:41:03 +0000 (19:41 +0000)]
2006-10-05 Hans Boehm <Hans.Boehm@hp.com>
* Document gc_cpp.h misbehavior with dynamic libraries.
hboehm [Fri, 29 Sep 2006 17:53:40 +0000 (17:53 +0000)]
2006-09-29 Hans Boehm <Hans.Boehm@hp.com> (mostly Renaud Blanch, actually)
* darwin_stop_world.c: Split MACHINE_THREAD_STATE deoending on
architecture. Reindent in places.
hboehm [Fri, 29 Sep 2006 04:30:04 +0000 (04:30 +0000)]
2006-09-28 Hans Boehm <Hans.Boehm@hp.com>
* darwin_stop_world.c (FindTopOfStack): Change parameter type.
hboehm [Fri, 29 Sep 2006 04:27:25 +0000 (04:27 +0000)]
2006-09-28 Hans Boehm <Hans.Boehm@hp.com>
* pthread_stop_world.c: M68K Debian fix.
hboehm [Fri, 29 Sep 2006 04:25:45 +0000 (04:25 +0000)]
2006-09-28 Hans Boehm <Hans.Boehm@hp.com>
* misc.c, gcconfig.h: Move some static checks.
* gcconfig.h: Replace --> with #error.
* gcconfig.h: M68k fixes from Debian.
hboehm [Wed, 20 Sep 2006 04:50:06 +0000 (04:50 +0000)]
2006-09-19 Hans Boehm <Hans.Boehm@hp.com>
* version.h, configure.ac, doc/README: Change version to
7.0alpha8.
* configure: Regenerate.
hboehm [Wed, 20 Sep 2006 01:11:25 +0000 (01:11 +0000)]
2006-09-19 Hans Boehm <Hans.Boehm@hp.com>
* configure.ac, version.h, doc/README: Increment version number
for 7.0alpha7 release.
* configure: Regenerate.
hboehm [Wed, 20 Sep 2006 01:08:14 +0000 (01:08 +0000)]
2006-09-19 Hans Boehm <Hans.Boehm@hp.com>
* tests/test.c (WinMain): Add message for DllMain use.
hboehm [Wed, 20 Sep 2006 01:05:35 +0000 (01:05 +0000)]
2006-09-19 Hans Boehm <Hans.Boehm@hp.com>
* misc.c: Replace ABORT with #error.
hboehm [Sun, 30 Jul 2006 18:23:47 +0000 (18:23 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* os_dep.c: Make GC_gww_dirty_init nonstatic. (Needed for
previously committed win32_threads.c change.)
hboehm [Sun, 30 Jul 2006 18:20:11 +0000 (18:20 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* doc/leak.html: Update.
hboehm [Sun, 30 Jul 2006 18:18:43 +0000 (18:18 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* tests/test.c: Call GC_use_DllMain in the win32/DLL configuration.
hboehm [Sun, 30 Jul 2006 18:16:41 +0000 (18:16 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* include/gc.h: Document and declare GC_use_DllMain for MS Windows.
hboehm [Sun, 30 Jul 2006 18:13:41 +0000 (18:13 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* win32_threads.c, include/private/gc_locks.h: Fic GC_allocate_ml
declaration.
* win32_threads.c: Various fixes and cleanups.
hboehm [Sun, 30 Jul 2006 18:06:10 +0000 (18:06 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* malloc.c (GC_free): Remove redundant tests for THREADS.
hboehm [Sun, 30 Jul 2006 18:03:18 +0000 (18:03 +0000)]
2006-07-30 Hans Boehm <Hans.Boehm@hp.com>
* gc.mak, NT_THREADS_MAKEFILE: Define GC_ASSERTIONS for DEBUG
config.
hboehm [Thu, 20 Jul 2006 05:12:54 +0000 (05:12 +0000)]
2006-07-19 Hans Boehm <Hans.Boehm@hp.com> (really Peter Wang)
* include/private/gcconfig.h: Fix PREFETCH definition for X86_64.
hboehm [Thu, 13 Jul 2006 00:24:22 +0000 (00:24 +0000)]
2006-07-12 Hans Boehm <Hans.Boehm@hp.com>
* win32_threads.c, include/private/gc_locks.h: Declare GC_allocate_ml
only in gc_locks.h, and complete declaration there.
* NT_THREADS_MAKEFILE, gc.mak: Include atomic_ops directory,
fix gc_priv.h typo.
* NT_STATIC_THREADS_MAKEFILE: Fix atomic_ops version.
hboehm [Wed, 12 Jul 2006 00:47:53 +0000 (00:47 +0000)]
2006-07-11 Hans Boehm <Hans.Boehm@hp.com>
* doc/README.changes: Update.
hboehm [Wed, 12 Jul 2006 00:45:44 +0000 (00:45 +0000)]
2006-07-11 Hans Boehm <Hans.Boehm@hp.com>
* include/private/gc_priv.h (hb_n_marks): Correct description
comment.
* reclaim.c: Fix hb_n_marks assertion.
hboehm [Wed, 12 Jul 2006 00:17:34 +0000 (00:17 +0000)]
2006-07-11 Hans Boehm <Hans.Boehm@hp.com>
*
hboehm [Tue, 11 Jul 2006 23:33:27 +0000 (23:33 +0000)]
2006-07-11 Hans Boehm <Hans.Boehm@hp.com>
* doc/README.changes: Update.
hboehm [Tue, 11 Jul 2006 18:44:37 +0000 (18:44 +0000)]
2006-07-11 Hans Boehm <Hans.Boehm@hp.com>
* mallocx.c (GC_malloc_atomic_uncollectable): Fix two serious
editing errors.
* os_dep.c (GC_get_stack_base): Return GC_SUCCESS from default version.
* pthread_support.c (start_mark_threads): Remove dummy version.
* libatomic_ops-1.1/src/atomic_ops/sysdeps/hpc/ia64.h: Fix typos.
Didn't compile.
* tests/thread_leak_test.c(test): Return something.
hboehm [Sun, 9 Jul 2006 05:45:17 +0000 (05:45 +0000)]
2006-07-08 Hans Boehm <Hans.Boehm@hp.com>
* thread_local_alloc.h: Define USE_COMPILER_TLS on Linux only for
gcc versions that support __thread.
hboehm [Fri, 7 Jul 2006 22:26:05 +0000 (22:26 +0000)]
2006-07-07 Hans Boehm <Hans.Boehm@hp.com> (really mostly Andrew Haley)
* include/gc.h, dyn_load.c: (GC_register_has_static_roots_callback):
new function.
hboehm [Fri, 7 Jul 2006 21:14:17 +0000 (21:14 +0000)]
2006-07-07 Hans Boehm <Hans.Boehm@hp.com> (really Rainer Orth)
* include/private/gcconfig.h: Initial support for Solaris/X86-64.
hboehm [Fri, 7 Jul 2006 21:10:07 +0000 (21:10 +0000)]
2006-07-07 Hans Boehm <Hans.Boehm@hp.com>
* configure.ac, Makefile.am: Move the atomic_ops.c and atomic_ops_sysdeps.S
copying hack from Makefile.am to configure.ac. Include atomic_ops_sysdeps.S
only if necessary.
* Makefile.in, configure: regenerate.
hboehm [Wed, 28 Jun 2006 23:09:13 +0000 (23:09 +0000)]
2006-06-28 Hans Boehm <Hans.Boehm@hp.com> (Really mostly Allan Hsu)
* darwin_stop_world.c, pthread_support.c: Fix Darwin threads memory
leaks.
hboehm [Wed, 28 Jun 2006 18:40:52 +0000 (18:40 +0000)]
2006-06-28 Hans Boehm <Hans.Boehm@hp.com>
* libatomic_ops-1.1/config.guess, libatomic_ops-1.1/config.sub,
libatomic_ops-1.1/depcomp, libatomic_ops-1.1/install-sh,
libatomic_ops-1.1/missing, libatomic_ops-1.1/mkinstalldirs: update.
* configure: Regenerate.
hboehm [Wed, 28 Jun 2006 18:17:12 +0000 (18:17 +0000)]
2006-06-28 Hans Boehm <Hans.Boehm@hp.com>
* config.guess, config.sub: update.
hboehm [Wed, 7 Jun 2006 05:35:31 +0000 (05:35 +0000)]
2006-06-06 Hans Boehm <Hans.Boehm@hp.com> (Really Petr Salinger)
* configure.ac, dyn_load.c, doc/README.changes, include/gc.h,
include/private/gcconfig.h: Add macro tests and configuration
information to support kFreeBSD + glibc.
hboehm [Sat, 3 Jun 2006 05:35:37 +0000 (05:35 +0000)]
2006-06-02 Hans Boehm <Hans.Boehm@hp.com>
* doc/README.changes: Update.
hboehm [Sat, 3 Jun 2006 00:32:24 +0000 (00:32 +0000)]
2006-06-02 Hans Boehm <Hans.Boehm@hp.com>
* os_dep.c, dyn_load.c (GC_parse_map_entry): Generalize interface.
Adjust callers.
* malloc.c (calloc): Special treatment for ld & libpthread callers.
* misc.c (GC_init_inner): Initialize library bounds for above.
* os_dep.c (GC_text_mapping): new function.
* pthread_support.c: Avoid GC during thread startup with malloc redirect.
* gcconfig.h: No longer use USE_PROC_FOR_LIBRARIES with REDIRECT_MALLOC.
hboehm [Thu, 1 Jun 2006 18:44:37 +0000 (18:44 +0000)]
2006-06-01 Hans Boehm <Hans.Boehm@hp.com>
* Fix #if indentation.
hboehm [Thu, 1 Jun 2006 18:41:20 +0000 (18:41 +0000)]
2006-06-01 Hans Boehm <Hans.Boehm@hp.com>
* include/private/gcconfig.h: Fix malloc redirection &
USE_PROC_FOR_LIBRARIES test and comment.
Define INCLUDE LINUX_THREAD_DESCR for malloc redirection with
Linux threads.
hboehm [Thu, 1 Jun 2006 18:37:51 +0000 (18:37 +0000)]
2006-06-01 Hans Boehm <Hans.Boehm@hp.com>
* dyn_load.c, misc.c, include/private/gc_priv.h: More consistently use
ptr_t for addresses.
* os_dep.c (GC_get_file_len, GC_get_maps_len): new functions.
(GC_get_maps): replaces GC_apply_to_maps, retry for asynchronous
removals.
(GC_enclosing_mapping): new functions.
(GC_setup_temporary_fault_handler): add locking assertion.
(GC_find_limit_with_bound): new function.
(GC_find_limit): Reimplement.
(backing_store_base_from_proc): Reimplement.
(GC_get_register_stack_base): Fix for 2.6 kernels.
(IA64 GC_get_stack_base): Avoid scanning through adjacent stack.
(GC_print_address_map): Use GC_get_maps().
* pthread_support.c: (GC_greatest_stack_base_below): new function.
(GC_segment_is_thread_stack): return boolean. On IA64 check for reg.
stacks. (INCLUDE_LINUX_THREAD_DESCR): initial support.
* misc.c: Add ptr_t and USE_PROC_FOR_LIBRARIES checks, register one
word offset with malloc redirection.
* include/private/gc_priv.h: Now need find_limit on IA64.
hboehm [Thu, 1 Jun 2006 17:40:02 +0000 (17:40 +0000)]
2006-06-01 Hans Boehm <Hans.Boehm@hp.com>
* alloc.c: Delete explicit register declarations.
hboehm [Fri, 19 May 2006 00:58:44 +0000 (00:58 +0000)]
2006-05-18 Hans Boehm <Hans.Boehm@hp.com>
* pthread_support.c: Fix stack size sanity check for Solaris.
* specific.c: Use for non-Linux platforms.
* include/private/thread_local_alloc.h: GC-remove_specific always
takes an argument.
* configure.ac: Enable thread-local allocation on Solaris.
* configure: Regenerate.
hboehm [Fri, 19 May 2006 00:49:26 +0000 (00:49 +0000)]
2006-05-18 Hans Boehm <Hans.Boehm@hp.com>
* Makefile.am: Copy atomic_ops sources from subdirectory.
* Makefile.in: Regenerate.
hboehm [Fri, 19 May 2006 00:46:08 +0000 (00:46 +0000)]
2006-05-18 Hans Boehm <Hans.Boehm@hp.com>
* Makefile, Makefile.direct, Makefile.dj, PCR-Makefile, dbg_mlc.c,
dyn_load.c, os_dep.c, include/private/gcconfig.h: Rename SUNOS5
to SOLARIS.
* os_dep.c(GC_unux_get_mem): Try both sbrk and mmap.
hboehm [Sat, 6 May 2006 05:24:12 +0000 (05:24 +0000)]
2006-05-05 Hans Boehm <Hans.Boehm@hp.com>
* pthread_support.c (GC_lock): Fix AO_test_and_set calls.
(GC_start_routine): Beginnings of code to scan thread descriptors.
hboehm [Sat, 6 May 2006 05:19:58 +0000 (05:19 +0000)]
2006-05-05 Hans Boehm <Hans.Boehm@hp.com>
* Makefile.am: conditionally include some libatomic_ops sources
in libgc.
* configure.ac: fix libatomic_ops handling.
* Makefile.in, configure, aclocal.m4: regenerate.
hboehm [Sat, 6 May 2006 00:24:04 +0000 (00:24 +0000)]
2006-05-05 Hans Boehm <Hans.Boehm@hp.com>
* doc/README.solaris2: Update.
hboehm [Sat, 6 May 2006 00:22:41 +0000 (00:22 +0000)]
2006-05-05 Hans Boehm <Hans.Boehm@hp.com>
* include/gc_tiny_fl.h: Add clarifying comment.
hboehm [Sat, 6 May 2006 00:20:44 +0000 (00:20 +0000)]
2006-05-05 Hans Boehm <Hans.Boehm@hp.com>
* include/private/gc_locks.h: Fix AO_test_and_set uses.
hboehm [Wed, 3 May 2006 00:50:22 +0000 (00:50 +0000)]
2006-05-02 Hans Boehm <Hans.Boehm@hp.com>
* tests/middle.c: Add GC_INIT() call.
hboehm [Wed, 3 May 2006 00:44:03 +0000 (00:44 +0000)]
2006-05-02 Hans Boehm <Hans.Boehm@hp.com>
* include/gc.h: Fix spelling error in comment.
hboehm [Wed, 3 May 2006 00:37:20 +0000 (00:37 +0000)]
2006-05-02 Hans Boehm <Hans.Boehm@hp.com>
* include/private/gc_locks.h: Add I_DONT_HOLD_LOCK.
* dbg_mlc.c: Use I_DONT_HOLD_LOCK instead of !I_HOLD_LOCK.
* thread_local_alloc: Reference ERROR_FL only when defined.
* os_dep.c: comment out unused and incorrect syscall wrapper code.
hboehm [Sun, 30 Apr 2006 03:32:43 +0000 (03:32 +0000)]
2006-04-29 Hans Boehm <Hans.Boehm@hp.com>
* os_dep.c, backgraph.c: Replace obsolete GC_printf<n> calls.
hboehm [Sat, 29 Apr 2006 00:07:18 +0000 (00:07 +0000)]
2006-04-28 Hans Boehm <Hans.Boehm@hp.com>
* Improve comment describing page hash tables.
hboehm [Sat, 29 Apr 2006 00:05:26 +0000 (00:05 +0000)]
2006-04-28 Hans Boehm <Hans.Boehm@hp.com>
* NT_STATIC_THREADS_MAKEFILE: Assorted cleanups and bug fixes for VC++.net
* mark.c (alloc_mark_stack): Recycle old stack only if it doesn't break
GWW_VDB.
* misc.c: Try to initialize GWW_VDB earlier. Remove seemingly obsolete
initialization code. More consistently use GC_LOF_FILE.
* os_dep.c (GC_unix_get_mem): Ensure sbrk lock release on Irix, even in the
really obscure cases.
Fix GetWriteWatch error handling; work around slightly late calls to
GC_enable_incremental().
hboehm [Fri, 28 Apr 2006 23:40:34 +0000 (23:40 +0000)]
2006-04-28 Hans Boehm <Hans.Boehm@hp.com>
* thread_local_alloc.c (GC_gcj_malloc): Once again punt in incremental mode.
The old code contained unavoidable races in that case.
hboehm [Fri, 28 Apr 2006 23:37:11 +0000 (23:37 +0000)]
2006-04-28 Hans Boehm <Hans.Boehm@hp.com>
* include/private/gcconfig.h: Rationalize setting of GWW_VDB and MPROTECT_VDB
for win32.
hboehm [Fri, 28 Apr 2006 23:35:01 +0000 (23:35 +0000)]
2006-04-28 Hans Boehm <Hans.Boehm@hp.com>
* mark_rts.c: Have GC_add_roots and GC_clear_roots initialize GC
if necessary.
* include/gc.h (GC_INIT): Remove redundant GC_init calls, add second
precollection if roots were added late.
hboehm [Fri, 28 Apr 2006 00:51:15 +0000 (00:51 +0000)]
2006-04-27 Hans Boehm <Hans.Boehm@hp.com>
* mallocx.c (GC_malloc_uncollectible): Remove erroneous lb
redeclaration.
hboehm [Tue, 25 Apr 2006 04:17:59 +0000 (04:17 +0000)]
2006-04-24 Hans Boehm <Hans.Boehm@hp.com>
* thread_local_alloc.c, include/gc_inline.h,
include/private/thread_local_alloc.h: Make non-gcj local
free lists for size 0 contains normal 1 granule objects.
* test/test.c: Add test for explicit deallocation of size zero
objects.
hboehm [Thu, 13 Apr 2006 00:46:19 +0000 (00:46 +0000)]
2006-04-12 Hans Boehm <Hans.Boehm@hp.com>
* Avoid duplicate GC_SOLARIS_THREADS definition.
hboehm [Thu, 13 Apr 2006 00:44:40 +0000 (00:44 +0000)]
2006-04-12 Hans Boehm <Hans.Boehm@hp.com>
* win32_threads.c: Fix GC_win32_start_inner args, add support
for _beginthreadex and friends.
* doc/README.win32: Update, reorganize.
* include/gc.h: Use backtrace on windows, intercept Windows
thread creation/destruction primitives.
hboehm [Thu, 13 Apr 2006 00:37:24 +0000 (00:37 +0000)]
2006-04-12 Hans Boehm <Hans.Boehm@hp.com>
* Remove obsolete GC_SOLARIS_PTHREADS reference.
hboehm [Thu, 13 Apr 2006 00:35:42 +0000 (00:35 +0000)]
2006-04-12 Hans Boehm <Hans.Boehm@hp.com>
* setjmp_t.c: Update tests and messages.
hboehm [Thu, 13 Apr 2006 00:33:04 +0000 (00:33 +0000)]
2006-04-12 Hans Boehm <Hans.Boehm@hp.com> (Really mostly Andrei Polushin.)
* Makefile, Makefile.am, Makefile.direct, NT_MAKEFILE,
NT_STATIC_THREADS_MAKEFILE, NT_THREADS_MAKEFILE, gc.mak,
msvc_dbg.c, include/private/msvc_dbg.h:
Add msvc_dbg.c, include/private/msvc_dbg.h.
* Makefile.am, configure.ac: Simplify solaris threads handling.
* gc_cpp.cc: Add another msft-specific new operator.
* misc.c: Use per executable log-file location.
* os_dep.c: Improve GetWriteWatch handling (incomplete).
Support stack traces for MSVC++.
* configure, Makefile.in: Regenerate.
* include/gc_allocator.h: Add <new> include, more PTRFREE decls,
MSVC++ 6 support.
hboehm [Wed, 29 Mar 2006 01:57:13 +0000 (01:57 +0000)]
2006-03-28 Hans Boehm <Hans.Boehm@hp.com>
* Capitalize AO_HAVE_test_and_set_acquire correctly.
hboehm [Wed, 29 Mar 2006 01:22:16 +0000 (01:22 +0000)]
2006-03-28 Hans Boehm <Hans.Boehm@hp.com> (Really Andrei Polushin)
Initial checkin of VC++ Project and support files.
* Added:
* windows-untested/gc.def windows-untested/gc.rc
* windows-untested/gc.ver windows-untested/stdafx.c
* windows-untested/stdafx.h windows-untested/vc60/all.dsp
* windows-untested/vc60/gc.dsp windows-untested/vc60/gc.dsw
* windows-untested/vc60/libgc.dsp
* windows-untested/vc60/libgcmt.dsp
* windows-untested/vc60/test.dsp
* windows-untested/vc60/test_gc.dsp
* windows-untested/vc60/test_leak_gc.dsp
* windows-untested/vc60/test_leak_libgc.dsp
* windows-untested/vc60/test_leak_libgcmt.dsp
* windows-untested/vc60/test_libgc.dsp
* windows-untested/vc60/test_libgcmt.dsp
* windows-untested/vc60/vc60crlf.cmd
* windows-untested/vc70/all.vcproj windows-untested/vc70/gc.sln
* windows-untested/vc70/gc.vcproj
* windows-untested/vc70/libgc.vcproj
* windows-untested/vc70/libgcmt.vcproj
* windows-untested/vc70/test.vcproj
* windows-untested/vc70/test_gc.vcproj
* windows-untested/vc70/test_leak_gc.vcproj
* windows-untested/vc70/test_leak_libgc.vcproj
* windows-untested/vc70/test_leak_libgcmt.vcproj
* windows-untested/vc70/test_libgc.vcproj
* windows-untested/vc70/test_libgcmt.vcproj
* windows-untested/vc71/all.vcproj windows-untested/vc71/gc.sln
* windows-untested/vc71/gc.vcproj
* windows-untested/vc71/libgc.vcproj
* windows-untested/vc71/libgcmt.vcproj
* windows-untested/vc71/test.vcproj
* windows-untested/vc71/test_gc.vcproj
* windows-untested/vc71/test_leak_gc.vcproj
* windows-untested/vc71/test_leak_libgc.vcproj
* windows-untested/vc71/test_leak_libgcmt.vcproj
* windows-untested/vc71/test_libgc.vcproj
* windows-untested/vc71/test_libgcmt.vcproj
hboehm [Tue, 28 Mar 2006 22:10:42 +0000 (22:10 +0000)]
2006-03-28 Hans Boehm <Hans.Boehm@hp.com>
* tests/test.am: Change THREADLIBS to THREADDLLIBS.
hboehm [Tue, 28 Mar 2006 21:43:29 +0000 (21:43 +0000)]
2006-03-28 Hans Boehm <Hans.Boehm@hp.com>
* sparc_mach_dep.S: Don't define GC_push_regs.
hboehm [Tue, 28 Mar 2006 21:40:20 +0000 (21:40 +0000)]
2006-03-28 Hans Boehm <Hans.Boehm@hp.com>
* gcconfig.h: Don't define USE_ASM_PUSH_REGS for Solaris/SPARC or X86/Darwin.
hboehm [Tue, 28 Mar 2006 06:43:02 +0000 (06:43 +0000)]
2006-03-27 Hans Boehm <Hans.Boehm@hp.com>
* configure.ac: Fix libatomic_ops link, dumb down ln options,
define only GC_SOLARIS_THREADS.
* configure: Regenerate.
hboehm [Sat, 25 Mar 2006 22:09:43 +0000 (22:09 +0000)]
2006-03-25 Hans Boehm <Hans.Boehm@hp.com> (Really from Andreas Tobler)
* configure.ac: Improve HP/UX thread handling.
* configure: Regenerate.
hboehm [Wed, 22 Mar 2006 01:49:52 +0000 (01:49 +0000)]
2006-03-21 Hans Boehm <Hans.Boehm@hp.com>
* specific.c: Avoid unnecessry include of atomic_ops.h.
* configure.ac, Makefile.am: Clean up/fix setting of CFLAGS.
* configure.ac: Don't look for libatomic_ops source in install
directory.
* Makefile.in, configure: regenerate.
hboehm [Sun, 19 Mar 2006 06:42:30 +0000 (06:42 +0000)]
2006-03-18 Hans Boehm <Hans.Boehm@hp.com>
* doc/README.changes: updates
hboehm [Sun, 19 Mar 2006 06:22:21 +0000 (06:22 +0000)]
2006-03-18 Hans Boehm <Hans.Boehm@hp.com>
* configure.ac: Reenable gcj support.
* configure: Regenerate.
* thread_local_alloc.c(GC_gcj_malloc): fix.
* gcj_mlc.c: (GC_gcj_malloc): fix printfs, delete dead lw assignment.
* include/gc_gcj.h, tests/test.c: Remove gcj_fast_malloc references.
hboehm [Sun, 19 Mar 2006 06:02:13 +0000 (06:02 +0000)]
2006-03-18 Hans Boehm <Hans.Boehm@hp.com>
* mach_dep.c: Remove x86 assembly code to allow thread support.
* doc/README.win32: add cygwin threads reminder.