2 Wed Jul 4 17:46:19 CEST 2007 Paolo Molaro <lupus@ximian.com>
4 * darwin_stop_world.c: use a larger array for GC_mach_threads
5 (it'll need to be enlarged dynamically, but it's with the world
8 2007-05-09 Jonathan Chambers <joncham@gmail.com>
10 * win32_threads.c: If SuspendThread fails, don't abort. Instead
11 remove thread from GC, as this only seems to happen when thread is
14 2007-03-29 Zoltan Varga <vargaz@gmail.com>
16 * autogen.sh: Applied patch from Priit Laes <amd@store20.com>. Fix the running
19 * ltmain.sh config.sub config.guess: Removed, libtoolize creates them now.
21 2007-03-13 Jonathan Chambers <joncham@gmail.com>
23 * include/gc.h: Fix _WIN64 typedefs.
24 * libgc.vcproj: Fix Release target and begin Win64 port.
26 2007-02-01 Geoff Norton <gnorton@customerdna.com>
28 * include/private/gc_pthread_redirects.h:
29 * include/private/gc_config_macros.h:
30 * include/private/gc_priv.h:
33 * specific.c: Support for NetBSD-CURRENT. Loosely based on NetBSD
36 2006-12-22 Robert Jordan <robertj@gmx.net>
38 * include/private/gcconfig.h, os_dep.c:
39 Add FreeBSD/amd64 support. Based on a FreeBSD Port Collection patch.
42 2006-11-19 Allan Hsu <allan@counterpop.net>
44 * libgc/darwin_stop_world.c, libgc/include/private/gc_priv.h,
45 libgc/os_dep.c: Fixes to make the GC work on OSX/Intel with XCode
46 2.4 (10.4u SDK and newer).
48 This code should work with older versions of the SDK as well.
50 Tue Oct 10 16:58:37 CEST 2006 Paolo Molaro <lupus@ximian.com>
52 * darwin_stop_world.c: patch from Allan Hsu <allan@counterpop.net>
53 to avoid using memory just after freeing it.
55 2006-08-31 Zoltan Varga <vargaz@freemail.hu>
57 * libgc.vcproj: Define GC_INSIDE_DLL on VC build too.
59 2006-08-18 Zoltan Varga <vargaz@gmail.com>
61 * Makefile.am (EXTRA_DIST): Fix make dist.
63 * libtool.m4: Removed, should not be in SVN.
65 2006-07-19 Zoltan Varga <vargaz@gmail.com>
67 * configure.in: Applied patch from Sergey Tikhonov <tsv@solvo.ru>. Beginning
70 2006-06-28 Martin Baulig <martin@ximian.com>
72 * darwin_stop_world.c, pthread_support.c: Committing a patch from
73 Allan Hsu <allan@imeem.com> to fix memory leaks; see bug #78628.
75 2006-06-26 Zoltan Varga <vargaz@gmail.com>
77 * solaris_threads.c: And another one.
79 * solaris_pthreads.c: Avoid another solaris/x86 #error.
81 2006-04-08 Zoltan Varga <vargaz@gmail.com>
83 * dyn_load.c: Avoid #error "large files are not supported by libelf" errors on solaris/x86.
85 2006-05-24 Martin Baulig <martin@ximian.com>
87 * doc/debugger-support.txt: Removed; this issue turned out to be
88 something completely different and the patch mentioned in this
89 file is already reverted.
91 2006-05-23 Zoltan Varga <vargaz@gmail.com>
93 * os_dep.c (GC_unix_get_mem): Add an assert to bail out early if the runtime is
94 run on a machine with smaller page size than HBLKSIZE.
96 2006-05-19 Martin Baulig <martin@ximian.com>
98 * include/gc.h: Don't include "libgc-mono-debugger.h".
100 * pthread_support.c, pthread_stop_world.c: Include it here.
102 2006-05-17 Martin Baulig <martin@ximian.com>
104 * pthread-support.c, pthread-stop-world.c: Put the debugger stuff
105 inside a `#if LIBGC_MONO_DEBUGGER_SUPPORTED' conditional.
107 2006-05-17 Martin Baulig <martin@ximian.com>
109 Fix a weird race condition which prevented XSP from working inside
110 the debugger - see doc/debugger-issues.txt for details.
112 * include/gc.h: Moved the "libgc-mono-debugger.h" #include down
113 after the gc_pthread_redirects.h one.
115 * include/libgc-mono-debugger.h
116 (GCThreadFunctions): Added `thread_created' and `thread_exited'.
117 (GC_mono_debugger_add_all_threads): New function prototype.
119 * pthread_stop_world.c (gc_thread_vtable): Allow the vtable and
120 any function in it be NULL; use NULL as the default vtable.
121 (GC_mono_debugger_add_all_threads): New public function.
124 (GC_delete_thread): Call `gc_thread_vtable->thread_exited()'.
125 (GC_thr_init): Call `gc_thread_vtable->thread_created()'.
127 2006-04-05 Zoltan Varga <vargaz@gmail.com>
129 * include/private/gcconfig.h (LINUX and SPARC): Applied patch from
130 David S. Miller <davem@davemloft.net>: Do not
131 use _etest and GC_SysVGetDataStart() to figure out DATASTART.
132 Instead use either SEARCH_FOR_DATA_START or __environ, based
135 2006-03-25 Zoltan Varga <vargaz@gmail.com>
137 * configure.in: Applied patch from David S. Miller <davem@davemloft.net>: Fix support for sparc/linux.
139 Mon Mar 20 18:56:21 CET 2006 Paolo Molaro <lupus@ximian.com>
141 * include/gc.h: enable pthread redirection on darwin, too.
142 * include/gc_pthread_redirects.h: completed from Bryan Berg.
144 Thu Feb 9 16:20:55 CET 2006 Paolo Molaro <lupus@ximian.com>
146 * os_dep.c, include/private/gcconfig.h, darwin_stop_world.c:
147 OSX/x86 support, mostly from Geoff Norton <gnorton@customerdna.com>.
149 Wed Feb 1 18:23:55 CET 2006 Paolo Molaro <lupus@ximian.com>
151 * pthread_support.c, *: back out Zoltan's patch since it's
153 The correct fix it to execute the cleanup from inside
154 the thread also when using the __thread var to access the
157 2006-02-01 Zoltan Varga <vargaz@gmail.com>
159 * pthread_support.c (GC_thread_deregister_foreign): New public API
160 function to deregister a foreign thread from the GC.
161 (GC_destroy_thread_local): Clean up the TLS key too.
163 Tue Jan 24 12:34:06 CET 2006 Paolo Molaro <lupus@ximian.com>
165 * *: update from upstream changes.
167 2006-01-21 Martin Baulig <martin@ximian.com>
169 * include/Makefile.am: Don't install libgc-mono-debugger.h.
171 2006-01-21 Martin Baulig <martin@ximian.com>
173 * include/libgc-mono-debugger.h: Call the conditional
174 `_IN_THE_MONO_DEBUGGER', not `IN_MONO_DEBUGGER'.
176 2006-01-11 Zoltan Varga <vargaz@gmail.com>
178 * include/private/gcconfig.h: Undef _FILE_OFFSET_BITS on sparc.
180 2006-01-03 Geoff Norton <gnorton@customerdna.com>
182 * darwin_stop_world.c: Merge a patch from Bruce Mitchener that fixes a small
185 2005-12-26 Zoltan Varga <vargaz@gmail.com>
187 * include/private/gcconfig.h: Disable PROC_VDB on solaris/x86 as it
188 doesn't seem to work.
190 2005-12-06 Todd Berman <tberman@off.net>
192 * pthread_support.c (GC_thread_register_foreign): Wrap a GC_printf1
193 inside a #ifdef DEBUG_THREADS like the others. Based on a patch from
194 Bryan Berg (bryan AT imeem DOT com).
196 2005-10-11 Zoltan Varga <vargaz@gmail.com>
198 * pthread_support.c (GC_thread_deregister_foreign): Make this return
199 void instead of void*.
201 2005-09-29 Raja R Harinath <harinath@gmail.com>
203 * configure.host: Fix syntax error.
205 2005-08-24 Zoltan Varga <vargaz@gmail.com>
207 * win32_threads.c: If GC_INSIDE_DLL is defined, define the DllMain function for automatic registration
208 of threads with the GC.
210 * configure.in: Add an option for turning GC_INSIDE_DLL on.
212 2005-08-25 Zoltan Varga <vargaz@freemail.hu>
214 * solaris_threads.c (GC_thread_register_foreign): Add dummy implementation.
216 Mon Aug 22 10:41:41 BST 2005 Paolo Molaro <lupus@ximian.com>
218 * include/private/gc_locks.h: make gcc generate correct code for swp
219 (patch by tomba@bat.org, Tomi Valkeinen).
221 2005-08-20 Zoltan Varga <vargaz@freemail.hu>
223 * include/private/gc_locks.h: Fix compilation of GC_test_and_set on IA64 with gcc-3.3.5.
225 Thu Aug 18 18:08:54 CEST 2005 Paolo Molaro <lupus@ximian.com>
227 * include/private/gcconfig.h: use LINUX_STACKBOTTOM on ARM Linux.
229 Mon Aug 1 16:49:45 CEST 2005 Paolo Molaro <lupus@ximian.com>
231 * include/private/pthread_support.h, pthread_support.c: added
232 patch to support registering new threads at runtime (from
233 Michael Meeks <michael.meeks@novell.com>).
235 2005-07-07 Raja R Harinath <rharinath@novell.com>
237 * Makefile.am (INCLUDES): Add $(top_builddir)/.. to pick up mono's
240 Thu Jul 7 12:15:22 CEST 2005 Paolo Molaro <lupus@ximian.com>
242 * pthread_support.c: fix compilation when TLS_ALLOC is not defined.
244 Thu Jul 7 11:59:42 CEST 2005 Paolo Molaro <lupus@ximian.com>
246 * pthread_support.c, Makefile.am: make the __thread var use
247 fast access if available (and avoid dlopen issue, bug #75390).
249 2005-07-05 Ben Maurer <bmaurer@ximian.com>
251 * pthread_stop_world.c (pthread_start_world, _GC_suspend_handler):
252 Make sure that all threads have been started before releasing the
253 GC_lock. Otherwise, the thread table can be corrupt in the restart
254 handler, causing deadlocks and segfaults.
256 2005-06-22 Zoltan Varga <vargaz@freemail.hu>
258 * include/private/gcconfig.h: Fix amd64 build.
260 2005-06-21 Ben Maurer <bmaurer@ximian.com>
262 * configure.host: remove -fexceptions, messes up with nptl
265 2005-06-17 Zoltan Varga <vargaz@freemail.hu>
267 * pthread_support.c: Workaround gcc-3.3 compiler bug.
269 2005-05-26 Sebastien Pouliot <sebastien@ximian.com>
271 * libgc.vcproj: Project file for libgc.
273 2005-05-19 Zoltan Varga <vargaz@freemail.hu>
275 * configure.in: Handle i386-*-linux* as well. Fixes #74960.
277 Tue May 3 16:28:26 CEST 2005 Paolo Molaro <lupus@ximian.com>
279 * os_dep.c: remove usage of libc private symbol.
281 2005-05-02 Miguel de Icaza <miguel@novell.com>
283 * pthread_stop_world.c (GC_restart_handler, GC_suspend_handler):
284 Wrap the original routines into methods that preserve the value of
287 2005-04-18 Zoltan Varga <vargaz@freemail.hu>
289 * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
291 2005-04-15 Zoltan Varga <vargaz@freemail.hu>
293 * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
295 2005-04-11 Zoltan Varga <vargaz@freemail.hu>
297 * include/private/gcconfig.h configure.in os_dep.c dyn_load.c:
298 Applied some freebsd patch from Bill Middleton <flashdict@gmail.com>.
300 2005-04-06 Zoltan Varga <vargaz@freemail.hu>
302 * solaris_pthreads.c (GC_pthread_detach): Add locking.
304 * include/gc_pthread_redirects.h (pthread_detach): Override pthread_detach too.
306 * solaris_pthreads.c (GC_pthread_detach): Override pthread_detach too. Fixes
309 2005-03-29 Zoltan Varga <vargaz@freemail.hu>
311 * os_dep.c: Add ability to fall back to mmap-ing memory when sbrk
314 * include/private/gcconfig.h: Enable FALLBACK_TO_MMAP on amd64. Fixes
317 * config.guess config.sub ltmain.sh: Update these files with more
318 up-to-date versions. Fixes #74071.
320 2005-03-09 Zoltan Varga <vargaz@freemail.hu>
322 * solaris_threads.c (GC_thread_is_registered): Add this for solaris
325 * pthread_support.c (GC_thread_is_registered): Move this outside of
326 the #ifdef THREAD_LOCAL_ALLOC.
328 2005-03-03 Zoltan Varga <vargaz@freemail.hu>
330 * include/gc.h pthread_support.c win32_threads.: Add
331 GC_thread_is_registered API function.
333 2005-02-17 Raja R Harinath <rharinath@novell.com>
335 * acinclude.m4: Don't include distributed libtool.m4.
337 Wed Feb 16 22:30:54 CET 2005 Paolo Molaro <lupus@ximian.com>
339 * alloc.c: tune the code to collect instead of expanding
340 the heap if there are many finalizers and we reclaimed some
341 memory from cleaning the finalization queue (should fix
342 bug #71001 and #70701).
344 2005-02-07 Geoff Norton <gnorton@customerdna.com>
346 * include/private/gc_priv.h: Bump the max root sets to 1024
348 Mon Jan 24 16:39:42 CET 2005 Paolo Molaro <lupus@ximian.com>
350 * alloc.c, include/gc.h: add event notification, mostly from
351 a patch by Ben Maurer.
353 2005-01-23 Geoff Norton <gnorton@customerdna.com>
355 * os_dir.c: Change GC_task_self to be static everywhere on Darwin.
356 Allows gcc4.0 to compile.
358 Tue Jan 18 11:19:47 CET 2005 Paolo Molaro <lupus@ximian.com>
360 * pthread_stop_world.c: handle EINTR from sem_wait() call.
362 2004-08-20 Ben Maurer <bmaurer@users.sourceforge.net>
364 * include/private/gc_priv.h: use the test glib does
367 2004-08-20 Zoltan Varga <vargaz@freemail.hu>
369 * include/private/gc_priv.h (__GNUC_PREREQ): Fix typo spotted by Ben.
371 * include/gc_local_alloc.h pthread_support.c: Add
372 GC_local_gcj_fast_malloc.
374 * include/private/gc_priv.h (EXPECT): Enable this on modern versions
377 2004-08-17 Ben Maurer <bmaurer@users.sourceforge.net>
379 * pthread_support.c: make __thread variable static
381 * include/gc_local_alloc.c: make the other headers get
382 included before we define our own variable. This fixes
383 up an ordering problem with GCJ and thread local alloc.
385 The problem was that gc.h needed to include gc_local_alloc.h
386 before gc_gcj.h. However, when gc.h was included after
387 GC_LOCAL_ALLOC_H was #defined, it would not include
390 2004-08-16 Zoltan Varga <vargaz@freemail.hu>
392 * Makefile.am: Create a static version of libmonogc for inclusion into
395 2004-07-27 John Merryweather Cooper <john_m_cooper@yahoo.com>
397 * configure.in: Fix to properly select flags for pthreads
398 on FreeBSD 4.x (aka -STABLE) and 5.x (aka -CURRENT).
400 2004-07-01 Zoltan Varga <vargaz@freemail.hu>
402 * include/install-sh doc/install-sh: New files.
404 2004-06-30 Zoltan Varga <vargaz@freemail.hu>
406 * include/private/gc_priv.h (SMALL_OBJ): Add Hans' fix for crashes
409 Thu Jun 24 15:39:00 CEST 2004 Paolo Molaro <lupus@ximian.com>
411 * alloc.c: use Hans' fix for bug #59557.
413 2004-06-18 Dick Porter <dick@ximian.com>
415 * darwin_stop_world.c: Make the world actually stop. This seems
416 to fix the finalizer thread signalling deadlock in 58706.
418 Sat Jun 5 19:38:20 CEST 2004 Paolo Molaro <lupus@ximian.com>
420 * alloc.c: temporary fix for bug #59557.
422 Tue May 25 13:41:08 EDT 2004 Paolo Molaro <lupus@ximian.com>
424 * darwin_stop_world.c: more thread died races fixes.
426 2004-05-21 Martin Baulig <martin@ximian.com>
428 * pthread_stop_world.c: Merged the changes from linux_threads.c.
430 * linux_threads.c: Removed, this file no longer exists in the
431 latest upstream version.
433 2004-05-20 Martin Baulig <martin@ximian.com>
435 * libgc.patch: Removed. There's no need to have this in a
436 separate file, just use CVS.
438 2004-05-20 Jackson Harper <jackson@ximian.com>
440 * Makefile.am: Remove tests from EXTRA_DIST.
442 Wed May 19 18:57:30 CEST 2004 Paolo Molaro <lupus@ximian.com>
444 * darwin_stop_world.c: deal with threads that die before they can be
445 suspended (should solce the thread_info failed aborts).
447 Wed May 19 18:42:23 CEST 2004 Paolo Molaro <lupus@ximian.com>
449 * configure.in, Makefile.am: update correctly from the libgc sources:
450 this excludes linux_threads.c from the build: Martin will have to port
451 his changes to the new code, since linux_threads.c doesn't exist
452 anymore in the upstream sources.
454 2004-05-19 Raja R Harinath <rharinath@novell.com>
456 * configure.in ($enable_embed_check): New internal option that
457 will be passed by mono's configure.
458 (THREADS): Use $with_libgc_threads, which is passed by mono's
461 2004-05-18 Martin Baulig <martin@ximian.com>
463 Importing Boehm GC 6.3 alpha 6.
465 2004-03-24 Ben Maurer <bmaurer@users.sourceforge.net>
467 * gcj_mlc.c: Do finalization.
469 This is a patch from Hans Boehm that fixes a bug where
470 GC_gcj_malloc never does finalization.
473 http://www.hpl.hp.com/hosted/linux/mail-archives/gc/2004-March/000359.html
474 http://bugzilla.ximian.com/show_bug.cgi?id=55644
478 I am checking this in at Zoltan's request.
480 2003-11-07 Zoltan Varga <vargaz@freemail.hu>
482 * autogen.sh: Fix previous patch and silence noisy GNU which.
484 * autogen.sh: Applied patch from Peter Teichman (peter@ximian.com).
485 Use 'glibtool' instead of 'libtool' on OSX.
487 2003-10-01 Pedro MartÃnez Juliá <yoro@wanadoo.es>
489 * Makefile.am: Change lib_LTLIBRARIES to noinst_LTLIBRARIES because
490 of libmonogc is included inside libmono and without this change it
491 breaks down and not include it.
493 2003-09-26 Zoltan Varga <vargaz@freemail.hu>
495 * mips_sgi_mach_dep.S: Remove since it is a duplicate of .s and it
496 breaks cvs checkout under windows.
498 Wed Sep 17 17:29:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
500 * configure.in: disable ALL_INTERIOR_POINTERS: managed pointers
501 are not allowed in the heap, so this should be safe and it helps
502 reducing false positives.
504 2003-08-28 Dick Porter <dick@ximian.com>
507 * aix_irix_threads.c: Applied bug fix from alpha libgc
509 2003-08-26 Martin Baulig <martin@ximian.com>
511 Imported Boehm GC 6.2.
513 2003-06-20 Martin Baulig <martin@ximian.com>
515 * include/gc.h: Fixed compiler warnings.
517 2003-06-09 Martin Baulig <martin@ximian.com>
519 * include/libgc-mono-debugger.h: New header file. This is
520 installed as <mono/private/libgc-mono-debugger.h>, but it's a
521 private header files and may only be used by the Mono Debugger.
523 * Makefile.am: Build libmonogc.la and install it. For some
524 reason, using a libtool convenience archive doesn't work here.
526 2003-06-08 Martin Baulig <martin@ximian.com>
528 * libgc-mono.pc.in: Removed.
530 * Makefile.am: Don't install anything.
532 * configure.in: We're now embedded in mono and can't be built as a
533 stand-alone module any longer.
535 2003-05-17 Martin Baulig <martin@ximian.com>
537 * libgc.patch, libgc.log: Added patch against the original version
538 and a ChangeLog entry.
540 2003-05-17 Martin Baulig <martin@ximian.com>
542 * misc.c, os_dep.c, include/private/gc_priv.h: Back to the
545 * linux_threads.c: Use the `gc_thread_vtable' internally in this
546 file instead of calling it from the header files.
548 2003-05-16 Martin Baulig <martin@ximian.com>
550 * include/gc.h (GCThreadFunctions): Removed the `pthread_*'
551 function since we don't need them here.
553 * include/gc_pthread_redirects.h: Put back the original version.
555 2003-04-08 Alp Toker <alp@atoker.com>
557 * configure.in: fix automake 1.6 compatibility without breaking
558 previous versions (AM_PROG_AS)
560 2003-03-31 Martin Baulig <martin@ximian.com>
562 * include/gc.h (GCThreadFunctions): New type.
563 (gc_thread_vtable): New global variable.
565 * include/gc_pthread_redirects.h: Use the `gc_thread_vtable'
566 vtable for the redirects instead of calling the methods directly.
567 This allows us to override them at runtime.
569 2003-03-31 Martin Baulig <martin@ximian.com>
571 * include/Makefile.am: Install gc_pthread_redirects.h.
573 * include/gc.h: `#include <gc/gc_pthread_redirects.h>', not
574 `#include "gc_pthread_redirects.h"'.
576 2003-03-31 Martin Baulig <martin@ximian.com>
578 * configure.in: Call the package `libgc-mono'.
580 * libgc-mono.pc.in: Added pkg-config files.
582 2003-03-31 Martin Baulig <martin@ximian.com>
584 This is a modified version of Boehm GC 6.1.