1 2007-02-01 Geoff Norton <gnorton@customerdna.com>
3 * include/private/gc_pthread_redirects.h:
4 * include/private/gc_config_macros.h:
5 * include/private/gc_priv.h:
8 * specific.c: Support for NetBSD-CURRENT. Loosely based on NetBSD
11 2006-12-22 Robert Jordan <robertj@gmx.net>
13 * include/private/gcconfig.h, os_dep.c:
14 Add FreeBSD/amd64 support. Based on a FreeBSD Port Collection patch.
17 2006-11-19 Allan Hsu <allan@counterpop.net>
19 * libgc/darwin_stop_world.c, libgc/include/private/gc_priv.h,
20 libgc/os_dep.c: Fixes to make the GC work on OSX/Intel with XCode
21 2.4 (10.4u SDK and newer).
23 This code should work with older versions of the SDK as well.
25 Tue Oct 10 16:58:37 CEST 2006 Paolo Molaro <lupus@ximian.com>
27 * darwin_stop_world.c: patch from Allan Hsu <allan@counterpop.net>
28 to avoid using memory just after freeing it.
30 2006-08-31 Zoltan Varga <vargaz@freemail.hu>
32 * libgc.vcproj: Define GC_INSIDE_DLL on VC build too.
34 2006-08-18 Zoltan Varga <vargaz@gmail.com>
36 * Makefile.am (EXTRA_DIST): Fix make dist.
38 * libtool.m4: Removed, should not be in SVN.
40 2006-07-19 Zoltan Varga <vargaz@gmail.com>
42 * configure.in: Applied patch from Sergey Tikhonov <tsv@solvo.ru>. Beginning
45 2006-06-28 Martin Baulig <martin@ximian.com>
47 * darwin_stop_world.c, pthread_support.c: Committing a patch from
48 Allan Hsu <allan@imeem.com> to fix memory leaks; see bug #78628.
50 2006-06-26 Zoltan Varga <vargaz@gmail.com>
52 * solaris_threads.c: And another one.
54 * solaris_pthreads.c: Avoid another solaris/x86 #error.
56 2006-04-08 Zoltan Varga <vargaz@gmail.com>
58 * dyn_load.c: Avoid #error "large files are not supported by libelf" errors on solaris/x86.
60 2006-05-24 Martin Baulig <martin@ximian.com>
62 * doc/debugger-support.txt: Removed; this issue turned out to be
63 something completely different and the patch mentioned in this
64 file is already reverted.
66 2006-05-23 Zoltan Varga <vargaz@gmail.com>
68 * os_dep.c (GC_unix_get_mem): Add an assert to bail out early if the runtime is
69 run on a machine with smaller page size than HBLKSIZE.
71 2006-05-19 Martin Baulig <martin@ximian.com>
73 * include/gc.h: Don't include "libgc-mono-debugger.h".
75 * pthread_support.c, pthread_stop_world.c: Include it here.
77 2006-05-17 Martin Baulig <martin@ximian.com>
79 * pthread-support.c, pthread-stop-world.c: Put the debugger stuff
80 inside a `#if LIBGC_MONO_DEBUGGER_SUPPORTED' conditional.
82 2006-05-17 Martin Baulig <martin@ximian.com>
84 Fix a weird race condition which prevented XSP from working inside
85 the debugger - see doc/debugger-issues.txt for details.
87 * include/gc.h: Moved the "libgc-mono-debugger.h" #include down
88 after the gc_pthread_redirects.h one.
90 * include/libgc-mono-debugger.h
91 (GCThreadFunctions): Added `thread_created' and `thread_exited'.
92 (GC_mono_debugger_add_all_threads): New function prototype.
94 * pthread_stop_world.c (gc_thread_vtable): Allow the vtable and
95 any function in it be NULL; use NULL as the default vtable.
96 (GC_mono_debugger_add_all_threads): New public function.
99 (GC_delete_thread): Call `gc_thread_vtable->thread_exited()'.
100 (GC_thr_init): Call `gc_thread_vtable->thread_created()'.
102 2006-04-05 Zoltan Varga <vargaz@gmail.com>
104 * include/private/gcconfig.h (LINUX and SPARC): Applied patch from
105 David S. Miller <davem@davemloft.net>: Do not
106 use _etest and GC_SysVGetDataStart() to figure out DATASTART.
107 Instead use either SEARCH_FOR_DATA_START or __environ, based
110 2006-03-25 Zoltan Varga <vargaz@gmail.com>
112 * configure.in: Applied patch from David S. Miller <davem@davemloft.net>: Fix support for sparc/linux.
114 Mon Mar 20 18:56:21 CET 2006 Paolo Molaro <lupus@ximian.com>
116 * include/gc.h: enable pthread redirection on darwin, too.
117 * include/gc_pthread_redirects.h: completed from Bryan Berg.
119 Thu Feb 9 16:20:55 CET 2006 Paolo Molaro <lupus@ximian.com>
121 * os_dep.c, include/private/gcconfig.h, darwin_stop_world.c:
122 OSX/x86 support, mostly from Geoff Norton <gnorton@customerdna.com>.
124 Wed Feb 1 18:23:55 CET 2006 Paolo Molaro <lupus@ximian.com>
126 * pthread_support.c, *: back out Zoltan's patch since it's
128 The correct fix it to execute the cleanup from inside
129 the thread also when using the __thread var to access the
132 2006-02-01 Zoltan Varga <vargaz@gmail.com>
134 * pthread_support.c (GC_thread_deregister_foreign): New public API
135 function to deregister a foreign thread from the GC.
136 (GC_destroy_thread_local): Clean up the TLS key too.
138 Tue Jan 24 12:34:06 CET 2006 Paolo Molaro <lupus@ximian.com>
140 * *: update from upstream changes.
142 2006-01-21 Martin Baulig <martin@ximian.com>
144 * include/Makefile.am: Don't install libgc-mono-debugger.h.
146 2006-01-21 Martin Baulig <martin@ximian.com>
148 * include/libgc-mono-debugger.h: Call the conditional
149 `_IN_THE_MONO_DEBUGGER', not `IN_MONO_DEBUGGER'.
151 2006-01-11 Zoltan Varga <vargaz@gmail.com>
153 * include/private/gcconfig.h: Undef _FILE_OFFSET_BITS on sparc.
155 2006-01-03 Geoff Norton <gnorton@customerdna.com>
157 * darwin_stop_world.c: Merge a patch from Bruce Mitchener that fixes a small
160 2005-12-26 Zoltan Varga <vargaz@gmail.com>
162 * include/private/gcconfig.h: Disable PROC_VDB on solaris/x86 as it
163 doesn't seem to work.
165 2005-12-06 Todd Berman <tberman@off.net>
167 * pthread_support.c (GC_thread_register_foreign): Wrap a GC_printf1
168 inside a #ifdef DEBUG_THREADS like the others. Based on a patch from
169 Bryan Berg (bryan AT imeem DOT com).
171 2005-10-11 Zoltan Varga <vargaz@gmail.com>
173 * pthread_support.c (GC_thread_deregister_foreign): Make this return
174 void instead of void*.
176 2005-09-29 Raja R Harinath <harinath@gmail.com>
178 * configure.host: Fix syntax error.
180 2005-08-24 Zoltan Varga <vargaz@gmail.com>
182 * win32_threads.c: If GC_INSIDE_DLL is defined, define the DllMain function for automatic registration
183 of threads with the GC.
185 * configure.in: Add an option for turning GC_INSIDE_DLL on.
187 2005-08-25 Zoltan Varga <vargaz@freemail.hu>
189 * solaris_threads.c (GC_thread_register_foreign): Add dummy implementation.
191 Mon Aug 22 10:41:41 BST 2005 Paolo Molaro <lupus@ximian.com>
193 * include/private/gc_locks.h: make gcc generate correct code for swp
194 (patch by tomba@bat.org, Tomi Valkeinen).
196 2005-08-20 Zoltan Varga <vargaz@freemail.hu>
198 * include/private/gc_locks.h: Fix compilation of GC_test_and_set on IA64 with gcc-3.3.5.
200 Thu Aug 18 18:08:54 CEST 2005 Paolo Molaro <lupus@ximian.com>
202 * include/private/gcconfig.h: use LINUX_STACKBOTTOM on ARM Linux.
204 Mon Aug 1 16:49:45 CEST 2005 Paolo Molaro <lupus@ximian.com>
206 * include/private/pthread_support.h, pthread_support.c: added
207 patch to support registering new threads at runtime (from
208 Michael Meeks <michael.meeks@novell.com>).
210 2005-07-07 Raja R Harinath <rharinath@novell.com>
212 * Makefile.am (INCLUDES): Add $(top_builddir)/.. to pick up mono's
215 Thu Jul 7 12:15:22 CEST 2005 Paolo Molaro <lupus@ximian.com>
217 * pthread_support.c: fix compilation when TLS_ALLOC is not defined.
219 Thu Jul 7 11:59:42 CEST 2005 Paolo Molaro <lupus@ximian.com>
221 * pthread_support.c, Makefile.am: make the __thread var use
222 fast access if available (and avoid dlopen issue, bug #75390).
224 2005-07-05 Ben Maurer <bmaurer@ximian.com>
226 * pthread_stop_world.c (pthread_start_world, _GC_suspend_handler):
227 Make sure that all threads have been started before releasing the
228 GC_lock. Otherwise, the thread table can be corrupt in the restart
229 handler, causing deadlocks and segfaults.
231 2005-06-22 Zoltan Varga <vargaz@freemail.hu>
233 * include/private/gcconfig.h: Fix amd64 build.
235 2005-06-21 Ben Maurer <bmaurer@ximian.com>
237 * configure.host: remove -fexceptions, messes up with nptl
240 2005-06-17 Zoltan Varga <vargaz@freemail.hu>
242 * pthread_support.c: Workaround gcc-3.3 compiler bug.
244 2005-05-26 Sebastien Pouliot <sebastien@ximian.com>
246 * libgc.vcproj: Project file for libgc.
248 2005-05-19 Zoltan Varga <vargaz@freemail.hu>
250 * configure.in: Handle i386-*-linux* as well. Fixes #74960.
252 Tue May 3 16:28:26 CEST 2005 Paolo Molaro <lupus@ximian.com>
254 * os_dep.c: remove usage of libc private symbol.
256 2005-05-02 Miguel de Icaza <miguel@novell.com>
258 * pthread_stop_world.c (GC_restart_handler, GC_suspend_handler):
259 Wrap the original routines into methods that preserve the value of
262 2005-04-18 Zoltan Varga <vargaz@freemail.hu>
264 * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
266 2005-04-15 Zoltan Varga <vargaz@freemail.hu>
268 * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
270 2005-04-11 Zoltan Varga <vargaz@freemail.hu>
272 * include/private/gcconfig.h configure.in os_dep.c dyn_load.c:
273 Applied some freebsd patch from Bill Middleton <flashdict@gmail.com>.
275 2005-04-06 Zoltan Varga <vargaz@freemail.hu>
277 * solaris_pthreads.c (GC_pthread_detach): Add locking.
279 * include/gc_pthread_redirects.h (pthread_detach): Override pthread_detach too.
281 * solaris_pthreads.c (GC_pthread_detach): Override pthread_detach too. Fixes
284 2005-03-29 Zoltan Varga <vargaz@freemail.hu>
286 * os_dep.c: Add ability to fall back to mmap-ing memory when sbrk
289 * include/private/gcconfig.h: Enable FALLBACK_TO_MMAP on amd64. Fixes
292 * config.guess config.sub ltmain.sh: Update these files with more
293 up-to-date versions. Fixes #74071.
295 2005-03-09 Zoltan Varga <vargaz@freemail.hu>
297 * solaris_threads.c (GC_thread_is_registered): Add this for solaris
300 * pthread_support.c (GC_thread_is_registered): Move this outside of
301 the #ifdef THREAD_LOCAL_ALLOC.
303 2005-03-03 Zoltan Varga <vargaz@freemail.hu>
305 * include/gc.h pthread_support.c win32_threads.: Add
306 GC_thread_is_registered API function.
308 2005-02-17 Raja R Harinath <rharinath@novell.com>
310 * acinclude.m4: Don't include distributed libtool.m4.
312 Wed Feb 16 22:30:54 CET 2005 Paolo Molaro <lupus@ximian.com>
314 * alloc.c: tune the code to collect instead of expanding
315 the heap if there are many finalizers and we reclaimed some
316 memory from cleaning the finalization queue (should fix
317 bug #71001 and #70701).
319 2005-02-07 Geoff Norton <gnorton@customerdna.com>
321 * include/private/gc_priv.h: Bump the max root sets to 1024
323 Mon Jan 24 16:39:42 CET 2005 Paolo Molaro <lupus@ximian.com>
325 * alloc.c, include/gc.h: add event notification, mostly from
326 a patch by Ben Maurer.
328 2005-01-23 Geoff Norton <gnorton@customerdna.com>
330 * os_dir.c: Change GC_task_self to be static everywhere on Darwin.
331 Allows gcc4.0 to compile.
333 Tue Jan 18 11:19:47 CET 2005 Paolo Molaro <lupus@ximian.com>
335 * pthread_stop_world.c: handle EINTR from sem_wait() call.
337 2004-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
339 * include/private/gc_priv.h: use the test glib does
342 2004-08-20 Zoltan Varga <vargaz@freemail.hu>
344 * include/private/gc_priv.h (__GNUC_PREREQ): Fix typo spotted by Ben.
346 * include/gc_local_alloc.h pthread_support.c: Add
347 GC_local_gcj_fast_malloc.
349 * include/private/gc_priv.h (EXPECT): Enable this on modern versions
352 2004-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
354 * pthread_support.c: make __thread variable static
356 * include/gc_local_alloc.c: make the other headers get
357 included before we define our own variable. This fixes
358 up an ordering problem with GCJ and thread local alloc.
360 The problem was that gc.h needed to include gc_local_alloc.h
361 before gc_gcj.h. However, when gc.h was included after
362 GC_LOCAL_ALLOC_H was #defined, it would not include
365 2004-08-16 Zoltan Varga <vargaz@freemail.hu>
367 * Makefile.am: Create a static version of libmonogc for inclusion into
370 2004-07-27 John Merryweather Cooper <john_m_cooper@yahoo.com>
372 * configure.in: Fix to properly select flags for pthreads
373 on FreeBSD 4.x (aka -STABLE) and 5.x (aka -CURRENT).
375 2004-07-01 Zoltan Varga <vargaz@freemail.hu>
377 * include/install-sh doc/install-sh: New files.
379 2004-06-30 Zoltan Varga <vargaz@freemail.hu>
381 * include/private/gc_priv.h (SMALL_OBJ): Add Hans' fix for crashes
384 Thu Jun 24 15:39:00 CEST 2004 Paolo Molaro <lupus@ximian.com>
386 * alloc.c: use Hans' fix for bug #59557.
388 2004-06-18 Dick Porter <dick@ximian.com>
390 * darwin_stop_world.c: Make the world actually stop. This seems
391 to fix the finalizer thread signalling deadlock in 58706.
393 Sat Jun 5 19:38:20 CEST 2004 Paolo Molaro <lupus@ximian.com>
395 * alloc.c: temporary fix for bug #59557.
397 Tue May 25 13:41:08 EDT 2004 Paolo Molaro <lupus@ximian.com>
399 * darwin_stop_world.c: more thread died races fixes.
401 2004-05-21 Martin Baulig <martin@ximian.com>
403 * pthread_stop_world.c: Merged the changes from linux_threads.c.
405 * linux_threads.c: Removed, this file no longer exists in the
406 latest upstream version.
408 2004-05-20 Martin Baulig <martin@ximian.com>
410 * libgc.patch: Removed. There's no need to have this in a
411 separate file, just use CVS.
413 2004-05-20 Jackson Harper <jackson@ximian.com>
415 * Makefile.am: Remove tests from EXTRA_DIST.
417 Wed May 19 18:57:30 CEST 2004 Paolo Molaro <lupus@ximian.com>
419 * darwin_stop_world.c: deal with threads that die before they can be
420 suspended (should solce the thread_info failed aborts).
422 Wed May 19 18:42:23 CEST 2004 Paolo Molaro <lupus@ximian.com>
424 * configure.in, Makefile.am: update correctly from the libgc sources:
425 this excludes linux_threads.c from the build: Martin will have to port
426 his changes to the new code, since linux_threads.c doesn't exist
427 anymore in the upstream sources.
429 2004-05-19 Raja R Harinath <rharinath@novell.com>
431 * configure.in ($enable_embed_check): New internal option that
432 will be passed by mono's configure.
433 (THREADS): Use $with_libgc_threads, which is passed by mono's
436 2004-05-18 Martin Baulig <martin@ximian.com>
438 Importing Boehm GC 6.3 alpha 6.
440 2004-03-24 Ben Maurer <bmaurer@users.sourceforge.net>
442 * gcj_mlc.c: Do finalization.
444 This is a patch from Hans Boehm that fixes a bug where
445 GC_gcj_malloc never does finalization.
448 http://www.hpl.hp.com/hosted/linux/mail-archives/gc/2004-March/000359.html
449 http://bugzilla.ximian.com/show_bug.cgi?id=55644
453 I am checking this in at Zoltan's request.
455 2003-11-07 Zoltan Varga <vargaz@freemail.hu>
457 * autogen.sh: Fix previous patch and silence noisy GNU which.
459 * autogen.sh: Applied patch from Peter Teichman (peter@ximian.com).
460 Use 'glibtool' instead of 'libtool' on OSX.
462 2003-10-01 Pedro MartÃnez Juliá <yoro@wanadoo.es>
464 * Makefile.am: Change lib_LTLIBRARIES to noinst_LTLIBRARIES because
465 of libmonogc is included inside libmono and without this change it
466 breaks down and not include it.
468 2003-09-26 Zoltan Varga <vargaz@freemail.hu>
470 * mips_sgi_mach_dep.S: Remove since it is a duplicate of .s and it
471 breaks cvs checkout under windows.
473 Wed Sep 17 17:29:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
475 * configure.in: disable ALL_INTERIOR_POINTERS: managed pointers
476 are not allowed in the heap, so this should be safe and it helps
477 reducing false positives.
479 2003-08-28 Dick Porter <dick@ximian.com>
482 * aix_irix_threads.c: Applied bug fix from alpha libgc
484 2003-08-26 Martin Baulig <martin@ximian.com>
486 Imported Boehm GC 6.2.
488 2003-06-20 Martin Baulig <martin@ximian.com>
490 * include/gc.h: Fixed compiler warnings.
492 2003-06-09 Martin Baulig <martin@ximian.com>
494 * include/libgc-mono-debugger.h: New header file. This is
495 installed as <mono/private/libgc-mono-debugger.h>, but it's a
496 private header files and may only be used by the Mono Debugger.
498 * Makefile.am: Build libmonogc.la and install it. For some
499 reason, using a libtool convenience archive doesn't work here.
501 2003-06-08 Martin Baulig <martin@ximian.com>
503 * libgc-mono.pc.in: Removed.
505 * Makefile.am: Don't install anything.
507 * configure.in: We're now embedded in mono and can't be built as a
508 stand-alone module any longer.
510 2003-05-17 Martin Baulig <martin@ximian.com>
512 * libgc.patch, libgc.log: Added patch against the original version
513 and a ChangeLog entry.
515 2003-05-17 Martin Baulig <martin@ximian.com>
517 * misc.c, os_dep.c, include/private/gc_priv.h: Back to the
520 * linux_threads.c: Use the `gc_thread_vtable' internally in this
521 file instead of calling it from the header files.
523 2003-05-16 Martin Baulig <martin@ximian.com>
525 * include/gc.h (GCThreadFunctions): Removed the `pthread_*'
526 function since we don't need them here.
528 * include/gc_pthread_redirects.h: Put back the original version.
530 2003-04-08 Alp Toker <alp@atoker.com>
532 * configure.in: fix automake 1.6 compatibility without breaking
533 previous versions (AM_PROG_AS)
535 2003-03-31 Martin Baulig <martin@ximian.com>
537 * include/gc.h (GCThreadFunctions): New type.
538 (gc_thread_vtable): New global variable.
540 * include/gc_pthread_redirects.h: Use the `gc_thread_vtable'
541 vtable for the redirects instead of calling the methods directly.
542 This allows us to override them at runtime.
544 2003-03-31 Martin Baulig <martin@ximian.com>
546 * include/Makefile.am: Install gc_pthread_redirects.h.
548 * include/gc.h: `#include <gc/gc_pthread_redirects.h>', not
549 `#include "gc_pthread_redirects.h"'.
551 2003-03-31 Martin Baulig <martin@ximian.com>
553 * configure.in: Call the package `libgc-mono'.
555 * libgc-mono.pc.in: Added pkg-config files.
557 2003-03-31 Martin Baulig <martin@ximian.com>
559 This is a modified version of Boehm GC 6.1.