2007-03-13 Jonathan Chambers <joncham@gmail.com>
[mono.git] / libgc / ChangeLog
1 2007-03-13  Jonathan Chambers  <joncham@gmail.com>
2
3         * include/gc.h: Fix _WIN64 typedefs.
4         * libgc.vcproj: Fix Release target and begin Win64 port.
5         
6 2007-02-01  Geoff Norton  <gnorton@customerdna.com>
7
8         * include/private/gc_pthread_redirects.h:
9         * include/private/gc_config_macros.h:
10         * include/private/gc_priv.h:
11         * configure.in:
12         * pthread_support.c
13         * specific.c:  Support for NetBSD-CURRENT.  Loosely based on NetBSD
14         pkgsrc patch.
15
16 2006-12-22  Robert Jordan  <robertj@gmx.net>
17
18         * include/private/gcconfig.h, os_dep.c:
19         Add FreeBSD/amd64 support. Based on a FreeBSD Port Collection patch.
20         r=Paolo.
21
22 2006-11-19  Allan Hsu <allan@counterpop.net>
23
24         * libgc/darwin_stop_world.c, libgc/include/private/gc_priv.h,
25         libgc/os_dep.c: Fixes to make the GC work on OSX/Intel with XCode
26         2.4 (10.4u SDK and newer).
27
28         This code should work with older versions of the SDK as well. 
29
30 Tue Oct 10 16:58:37 CEST 2006 Paolo Molaro <lupus@ximian.com>
31
32         * darwin_stop_world.c: patch from Allan Hsu <allan@counterpop.net>
33         to avoid using memory just after freeing it.
34
35 2006-08-31  Zoltan Varga  <vargaz@freemail.hu>
36
37         * libgc.vcproj: Define GC_INSIDE_DLL on VC build too.
38
39 2006-08-18  Zoltan Varga  <vargaz@gmail.com>
40
41         * Makefile.am (EXTRA_DIST): Fix make dist.
42
43         * libtool.m4: Removed, should not be in SVN.
44
45 2006-07-19  Zoltan Varga  <vargaz@gmail.com>
46
47         * configure.in: Applied patch from Sergey Tikhonov <tsv@solvo.ru>. Beginning
48         of alpha support.
49
50 2006-06-28  Martin Baulig  <martin@ximian.com>
51
52         * darwin_stop_world.c, pthread_support.c: Committing a patch from
53         Allan Hsu <allan@imeem.com> to fix memory leaks; see bug #78628.
54
55 2006-06-26  Zoltan Varga  <vargaz@gmail.com>
56
57         * solaris_threads.c: And another one.
58
59         * solaris_pthreads.c: Avoid another solaris/x86 #error.
60
61 2006-04-08  Zoltan Varga  <vargaz@gmail.com>
62
63         * dyn_load.c: Avoid #error "large files are not supported by libelf" errors on solaris/x86.
64
65 2006-05-24  Martin Baulig  <martin@ximian.com>
66
67         * doc/debugger-support.txt: Removed; this issue turned out to be
68         something completely different and the patch mentioned in this
69         file is already reverted.
70
71 2006-05-23  Zoltan Varga  <vargaz@gmail.com>
72
73         * os_dep.c (GC_unix_get_mem): Add an assert to bail out early if the runtime is
74         run on a machine with smaller page size than HBLKSIZE.
75
76 2006-05-19  Martin Baulig  <martin@ximian.com>
77
78         * include/gc.h: Don't include "libgc-mono-debugger.h".
79
80         * pthread_support.c, pthread_stop_world.c: Include it here.
81
82 2006-05-17  Martin Baulig  <martin@ximian.com>
83
84         * pthread-support.c, pthread-stop-world.c: Put the debugger stuff
85         inside a `#if LIBGC_MONO_DEBUGGER_SUPPORTED' conditional.
86
87 2006-05-17  Martin Baulig  <martin@ximian.com>
88
89         Fix a weird race condition which prevented XSP from working inside
90         the debugger - see doc/debugger-issues.txt for details.
91
92         * include/gc.h: Moved the "libgc-mono-debugger.h" #include down
93         after the gc_pthread_redirects.h one.
94
95         * include/libgc-mono-debugger.h
96         (GCThreadFunctions): Added `thread_created' and `thread_exited'.
97         (GC_mono_debugger_add_all_threads): New function prototype.
98
99         * pthread_stop_world.c (gc_thread_vtable): Allow the vtable and
100         any function in it be NULL; use NULL as the default vtable.
101         (GC_mono_debugger_add_all_threads): New public function.
102
103         * pthread_support.c
104         (GC_delete_thread): Call `gc_thread_vtable->thread_exited()'.
105         (GC_thr_init): Call `gc_thread_vtable->thread_created()'.
106
107 2006-04-05  Zoltan Varga  <vargaz@gmail.com>
108
109         * include/private/gcconfig.h (LINUX and SPARC): Applied patch from 
110         David S. Miller <davem@davemloft.net>: Do not
111        use _etest and GC_SysVGetDataStart() to figure out DATASTART.
112        Instead use either SEARCH_FOR_DATA_START or __environ, based
113        upon GLIBC version.
114
115 2006-03-25  Zoltan Varga  <vargaz@gmail.com>
116
117         * configure.in: Applied patch from David S. Miller <davem@davemloft.net>: Fix support for sparc/linux.
118
119 Mon Mar 20 18:56:21 CET 2006 Paolo Molaro <lupus@ximian.com>
120
121         * include/gc.h: enable pthread redirection on darwin, too.
122         * include/gc_pthread_redirects.h: completed from Bryan Berg.
123
124 Thu Feb 9 16:20:55 CET 2006 Paolo Molaro <lupus@ximian.com>
125
126         * os_dep.c, include/private/gcconfig.h, darwin_stop_world.c:
127         OSX/x86 support, mostly from Geoff Norton <gnorton@customerdna.com>.
128
129 Wed Feb 1 18:23:55 CET 2006 Paolo Molaro <lupus@ximian.com>
130
131         * pthread_support.c, *: back out Zoltan's patch since it's
132         incorrect.
133         The correct fix it to execute the cleanup from inside
134         the thread also when using the __thread var to access the
135         current GC_thread.
136
137 2006-02-01  Zoltan Varga  <vargaz@gmail.com>
138
139         * pthread_support.c (GC_thread_deregister_foreign): New public API
140         function to deregister a foreign thread from the GC.
141         (GC_destroy_thread_local): Clean up the TLS key too.
142         
143 Tue Jan 24 12:34:06 CET 2006 Paolo Molaro <lupus@ximian.com>
144
145         * *: update from upstream changes.
146
147 2006-01-21  Martin Baulig  <martin@ximian.com>
148
149         * include/Makefile.am: Don't install libgc-mono-debugger.h.
150
151 2006-01-21  Martin Baulig  <martin@ximian.com>
152
153         * include/libgc-mono-debugger.h: Call the conditional
154         `_IN_THE_MONO_DEBUGGER', not `IN_MONO_DEBUGGER'.
155
156 2006-01-11  Zoltan Varga  <vargaz@gmail.com>
157
158         * include/private/gcconfig.h: Undef _FILE_OFFSET_BITS on sparc.
159
160 2006-01-03  Geoff Norton  <gnorton@customerdna.com>
161
162         * darwin_stop_world.c:  Merge a patch from Bruce Mitchener that fixes a small
163         leak on OS X.
164
165 2005-12-26  Zoltan Varga  <vargaz@gmail.com>
166
167         * include/private/gcconfig.h: Disable PROC_VDB on solaris/x86 as it
168         doesn't seem to work.
169
170 2005-12-06  Todd Berman  <tberman@off.net>
171
172         * pthread_support.c (GC_thread_register_foreign): Wrap a GC_printf1
173         inside a #ifdef DEBUG_THREADS like the others. Based on a patch from
174         Bryan Berg (bryan AT imeem DOT com).
175
176 2005-10-11  Zoltan Varga  <vargaz@gmail.com>
177
178         * pthread_support.c (GC_thread_deregister_foreign): Make this return
179         void instead of void*.
180
181 2005-09-29  Raja R Harinath  <harinath@gmail.com>
182
183         * configure.host: Fix syntax error.
184
185 2005-08-24  Zoltan Varga  <vargaz@gmail.com>
186
187         * win32_threads.c: If GC_INSIDE_DLL is defined, define the DllMain function for automatic registration
188         of threads with the GC.
189
190         * configure.in: Add an option for turning GC_INSIDE_DLL on.     
191
192 2005-08-25  Zoltan Varga  <vargaz@freemail.hu>
193
194         * solaris_threads.c (GC_thread_register_foreign): Add dummy implementation.
195
196 Mon Aug 22 10:41:41 BST 2005 Paolo Molaro <lupus@ximian.com>
197
198         * include/private/gc_locks.h: make gcc generate correct code for swp
199         (patch by tomba@bat.org, Tomi Valkeinen).
200
201 2005-08-20  Zoltan Varga  <vargaz@freemail.hu>
202
203         * include/private/gc_locks.h: Fix compilation of GC_test_and_set on IA64 with gcc-3.3.5.
204
205 Thu Aug 18 18:08:54 CEST 2005 Paolo Molaro <lupus@ximian.com>
206
207         * include/private/gcconfig.h: use LINUX_STACKBOTTOM on ARM Linux.
208
209 Mon Aug 1 16:49:45 CEST 2005 Paolo Molaro <lupus@ximian.com>
210
211         * include/private/pthread_support.h, pthread_support.c: added
212         patch to support registering new threads at runtime (from
213         Michael Meeks <michael.meeks@novell.com>).
214
215 2005-07-07  Raja R Harinath  <rharinath@novell.com>
216
217         * Makefile.am (INCLUDES): Add $(top_builddir)/.. to pick up mono's
218         config.h.
219
220 Thu Jul 7 12:15:22 CEST 2005 Paolo Molaro <lupus@ximian.com>
221
222         * pthread_support.c: fix compilation when TLS_ALLOC is not defined.
223
224 Thu Jul 7 11:59:42 CEST 2005 Paolo Molaro <lupus@ximian.com>
225
226         * pthread_support.c, Makefile.am: make the __thread var use
227         fast access if available (and avoid dlopen issue, bug #75390).
228
229 2005-07-05  Ben Maurer  <bmaurer@ximian.com>
230
231         * pthread_stop_world.c (pthread_start_world, _GC_suspend_handler):
232         Make sure that all threads have been started before releasing the
233         GC_lock. Otherwise, the thread table can be corrupt in the restart
234         handler, causing deadlocks and segfaults.
235
236 2005-06-22  Zoltan Varga  <vargaz@freemail.hu>
237
238         * include/private/gcconfig.h: Fix amd64 build.
239
240 2005-06-21  Ben Maurer  <bmaurer@ximian.com>
241
242         * configure.host: remove -fexceptions, messes up with nptl
243         includes, as on fc4.
244
245 2005-06-17  Zoltan Varga  <vargaz@freemail.hu>
246
247         * pthread_support.c: Workaround gcc-3.3 compiler bug.
248
249 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
250
251         * libgc.vcproj: Project file for libgc.
252
253 2005-05-19  Zoltan Varga  <vargaz@freemail.hu>
254
255         * configure.in: Handle i386-*-linux* as well. Fixes #74960.     
256
257 Tue May 3 16:28:26 CEST 2005 Paolo Molaro <lupus@ximian.com>
258
259         * os_dep.c: remove usage of libc private symbol.
260
261 2005-05-02  Miguel de Icaza  <miguel@novell.com>
262
263         * pthread_stop_world.c (GC_restart_handler, GC_suspend_handler):
264         Wrap the original routines into methods that preserve the value of
265         errno.  Fixes #74740
266
267 2005-04-18  Zoltan Varga  <vargaz@freemail.hu>
268
269         * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
270
271 2005-04-15  Zoltan Varga  <vargaz@freemail.hu>
272
273         * configure.in: Applied another freebsd patch from Bill Middleton (flashdict@gmail.com).
274
275 2005-04-11  Zoltan Varga  <vargaz@freemail.hu>
276
277         * include/private/gcconfig.h configure.in os_dep.c dyn_load.c: 
278         Applied some freebsd patch from Bill Middleton <flashdict@gmail.com>.
279
280 2005-04-06  Zoltan Varga  <vargaz@freemail.hu>
281
282         * solaris_pthreads.c (GC_pthread_detach): Add locking.
283
284         * include/gc_pthread_redirects.h (pthread_detach): Override pthread_detach too.
285
286         * solaris_pthreads.c (GC_pthread_detach): Override pthread_detach too. Fixes
287         #74223.
288
289 2005-03-29  Zoltan Varga  <vargaz@freemail.hu>
290
291         * os_dep.c: Add ability to fall back to mmap-ing memory when sbrk
292         fails.
293
294         * include/private/gcconfig.h: Enable FALLBACK_TO_MMAP on amd64. Fixes
295         #73882.
296
297         * config.guess config.sub ltmain.sh: Update these files with more
298         up-to-date versions. Fixes #74071.
299
300 2005-03-09  Zoltan Varga  <vargaz@freemail.hu>
301
302         * solaris_threads.c (GC_thread_is_registered): Add this for solaris
303         too.
304
305         * pthread_support.c (GC_thread_is_registered): Move this outside of
306         the #ifdef THREAD_LOCAL_ALLOC.
307
308 2005-03-03  Zoltan Varga  <vargaz@freemail.hu>
309
310         * include/gc.h pthread_support.c win32_threads.: Add 
311         GC_thread_is_registered API function.
312
313 2005-02-17  Raja R Harinath  <rharinath@novell.com>
314
315         * acinclude.m4: Don't include distributed libtool.m4.
316         
317 Wed Feb 16 22:30:54 CET 2005 Paolo Molaro <lupus@ximian.com>
318
319         * alloc.c: tune the code to collect instead of expanding
320         the heap if there are many finalizers and we reclaimed some
321         memory from cleaning the finalization queue (should fix
322         bug #71001 and #70701).
323
324 2005-02-07  Geoff Norton  <gnorton@customerdna.com>
325
326         * include/private/gc_priv.h: Bump the max root sets to 1024
327
328 Mon Jan 24 16:39:42 CET 2005 Paolo Molaro <lupus@ximian.com>
329
330         * alloc.c, include/gc.h: add event notification, mostly from 
331         a patch by Ben Maurer.
332
333 2005-01-23  Geoff Norton  <gnorton@customerdna.com>
334         
335         * os_dir.c: Change GC_task_self to be static everywhere on Darwin.
336         Allows gcc4.0 to compile.
337
338 Tue Jan 18 11:19:47 CET 2005 Paolo Molaro <lupus@ximian.com>
339
340         * pthread_stop_world.c: handle EINTR from sem_wait() call.
341
342 2004-08-20 Ben Maurer  <bmaurer@users.sourceforge.net>
343
344         * include/private/gc_priv.h: use the test glib does
345         for EXPECT.
346
347 2004-08-20  Zoltan Varga  <vargaz@freemail.hu>
348
349         * include/private/gc_priv.h (__GNUC_PREREQ): Fix typo spotted by Ben.
350
351         * include/gc_local_alloc.h pthread_support.c: Add 
352         GC_local_gcj_fast_malloc.
353
354         * include/private/gc_priv.h (EXPECT): Enable this on modern versions
355         of gcc.
356
357 2004-08-17 Ben Maurer  <bmaurer@users.sourceforge.net>
358
359         * pthread_support.c: make __thread variable static
360         
361         * include/gc_local_alloc.c: make the other headers get
362         included before we define our own variable. This fixes
363         up an ordering problem with GCJ and thread local alloc.
364         
365         The problem was that gc.h needed to include gc_local_alloc.h
366         before gc_gcj.h. However, when gc.h was included after
367         GC_LOCAL_ALLOC_H was #defined, it would not include
368         gc_local_alloc.h.
369
370 2004-08-16  Zoltan Varga  <vargaz@freemail.hu>
371
372         * Makefile.am: Create a static version of libmonogc for inclusion into
373         the mono executable.
374
375 2004-07-27  John Merryweather Cooper <john_m_cooper@yahoo.com>
376
377         * configure.in:  Fix to properly select flags for pthreads
378         on FreeBSD 4.x (aka -STABLE) and 5.x (aka -CURRENT).
379         
380 2004-07-01  Zoltan Varga  <vargaz@freemail.hu>
381
382         * include/install-sh doc/install-sh: New files.
383
384 2004-06-30  Zoltan Varga  <vargaz@freemail.hu>
385
386         * include/private/gc_priv.h (SMALL_OBJ): Add Hans' fix for crashes
387         seen on SPARC64.
388
389 Thu Jun 24 15:39:00 CEST 2004 Paolo Molaro <lupus@ximian.com>
390
391         * alloc.c: use Hans' fix for bug #59557.
392
393 2004-06-18  Dick Porter  <dick@ximian.com>
394
395         * darwin_stop_world.c: Make the world actually stop.  This seems
396         to fix the finalizer thread signalling deadlock in 58706.
397
398 Sat Jun 5 19:38:20 CEST 2004 Paolo Molaro <lupus@ximian.com>
399
400         * alloc.c: temporary fix for bug #59557.
401
402 Tue May 25 13:41:08 EDT 2004 Paolo Molaro <lupus@ximian.com>
403
404         * darwin_stop_world.c: more thread died races fixes.
405
406 2004-05-21  Martin Baulig  <martin@ximian.com>
407
408         * pthread_stop_world.c: Merged the changes from linux_threads.c.
409
410         * linux_threads.c: Removed, this file no longer exists in the
411         latest upstream version.
412
413 2004-05-20  Martin Baulig  <martin@ximian.com>
414
415         * libgc.patch: Removed.  There's no need to have this in a
416         separate file, just use CVS.
417
418 2004-05-20  Jackson Harper  <jackson@ximian.com>
419
420         * Makefile.am: Remove tests from EXTRA_DIST.
421         
422 Wed May 19 18:57:30 CEST 2004 Paolo Molaro <lupus@ximian.com>
423
424         * darwin_stop_world.c: deal with threads that die before they can be
425         suspended (should solce the thread_info failed aborts).
426
427 Wed May 19 18:42:23 CEST 2004 Paolo Molaro <lupus@ximian.com>
428
429         * configure.in, Makefile.am: update correctly from the libgc sources:
430         this excludes linux_threads.c from the build: Martin will have to port
431         his changes to the new code, since linux_threads.c doesn't exist
432         anymore in the upstream sources.
433
434 2004-05-19  Raja R Harinath  <rharinath@novell.com>
435
436         * configure.in ($enable_embed_check): New internal option that
437         will be passed by mono's configure.
438         (THREADS): Use $with_libgc_threads, which is passed by mono's
439         configure.
440
441 2004-05-18  Martin Baulig  <martin@ximian.com>
442
443         Importing Boehm GC 6.3 alpha 6.
444
445 2004-03-24 Ben Maurer  <bmaurer@users.sourceforge.net>
446
447         * gcj_mlc.c: Do finalization.
448
449         This is a patch from Hans Boehm that fixes a bug where
450         GC_gcj_malloc never does finalization.
451
452         See:
453         http://www.hpl.hp.com/hosted/linux/mail-archives/gc/2004-March/000359.html
454         http://bugzilla.ximian.com/show_bug.cgi?id=55644
455
456         Fixes #55644.
457
458         I am checking this in at Zoltan's request.
459
460 2003-11-07  Zoltan Varga  <vargaz@freemail.hu>
461
462         * autogen.sh: Fix previous patch and silence noisy GNU which.   
463         
464         * autogen.sh: Applied patch from Peter Teichman (peter@ximian.com). 
465         Use 'glibtool' instead of 'libtool' on OSX. 
466
467 2003-10-01  Pedro Martínez Juliá  <yoro@wanadoo.es>
468
469         * Makefile.am: Change lib_LTLIBRARIES to noinst_LTLIBRARIES because
470         of libmonogc is included inside libmono and without this change it
471         breaks down and not include it.
472
473 2003-09-26  Zoltan Varga  <vargaz@freemail.hu>
474
475         * mips_sgi_mach_dep.S: Remove since it is a duplicate of .s and it
476         breaks cvs checkout under windows.
477
478 Wed Sep 17 17:29:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
479
480         * configure.in: disable ALL_INTERIOR_POINTERS: managed pointers
481         are not allowed in the heap, so this should be safe and it helps
482         reducing false positives.
483
484 2003-08-28  Dick Porter  <dick@ximian.com>
485
486         * pthread_support.c:
487         * aix_irix_threads.c:  Applied bug fix from alpha libgc
488
489 2003-08-26  Martin Baulig  <martin@ximian.com>
490
491         Imported Boehm GC 6.2.
492
493 2003-06-20  Martin Baulig  <martin@ximian.com>
494
495         * include/gc.h: Fixed compiler warnings.
496
497 2003-06-09  Martin Baulig  <martin@ximian.com>
498
499         * include/libgc-mono-debugger.h: New header file.  This is
500         installed as <mono/private/libgc-mono-debugger.h>, but it's a
501         private header files and may only be used by the Mono Debugger.
502
503         * Makefile.am: Build libmonogc.la and install it.  For some
504         reason, using a libtool convenience archive doesn't work here.
505
506 2003-06-08  Martin Baulig  <martin@ximian.com>
507
508         * libgc-mono.pc.in: Removed.
509
510         * Makefile.am: Don't install anything.
511
512         * configure.in: We're now embedded in mono and can't be built as a
513         stand-alone module any longer.
514
515 2003-05-17  Martin Baulig  <martin@ximian.com>
516
517         * libgc.patch, libgc.log: Added patch against the original version
518         and a ChangeLog entry.
519
520 2003-05-17  Martin Baulig  <martin@ximian.com>
521
522         * misc.c, os_dep.c, include/private/gc_priv.h: Back to the
523         original version.
524
525         * linux_threads.c: Use the `gc_thread_vtable' internally in this
526         file instead of calling it from the header files.
527
528 2003-05-16  Martin Baulig  <martin@ximian.com>
529
530         * include/gc.h (GCThreadFunctions): Removed the `pthread_*'
531         function since we don't need them here.
532
533         * include/gc_pthread_redirects.h: Put back the original version.
534
535 2003-04-08  Alp Toker <alp@atoker.com>
536
537         * configure.in: fix automake 1.6 compatibility without breaking
538         previous versions (AM_PROG_AS)
539
540 2003-03-31  Martin Baulig  <martin@ximian.com>
541
542         * include/gc.h (GCThreadFunctions): New type.
543         (gc_thread_vtable): New global variable.
544
545         * include/gc_pthread_redirects.h: Use the `gc_thread_vtable'
546         vtable for the redirects instead of calling the methods directly.
547         This allows us to override them at runtime.     
548
549 2003-03-31  Martin Baulig  <martin@ximian.com>
550
551         * include/Makefile.am: Install gc_pthread_redirects.h.
552
553         * include/gc.h: `#include <gc/gc_pthread_redirects.h>', not
554         `#include "gc_pthread_redirects.h"'.
555
556 2003-03-31  Martin Baulig  <martin@ximian.com>
557
558         * configure.in: Call the package `libgc-mono'.
559
560         * libgc-mono.pc.in: Added pkg-config files.
561
562 2003-03-31  Martin Baulig  <martin@ximian.com>
563
564         This is a modified version of Boehm GC 6.1.
565