[Gc] gc6.3 MacOSX problems

Andrew Begel abegel at cs.berkeley.edu
Fri Nov 19 01:06:19 PST 2004


On Nov 18, 2004, at 6:39 PM, Brian Alliet wrote:

> On Nov 13, 2004, at 12:58 PM, Andrew Begel wrote:
>
>> The only reliable (read: robust) way to find the top of the stack 
>> with a pthread system is to intercept pthread_create()
>
> That is what the Darwin port used to do too (before your change). It 
> might be a good idea to make your changes optional. That shouldn't be 
> too hard to do (a few ifdefs here and there).
>
> I'm not sure what the default should be. You could argue that since 
> the auto top of stack detection breaks some things it shouldn't be the 
> default. However, the things it breaks should be few and far between. 
> I don't really care either way.

The default would break when the GC is loaded from a shared library 
(this is not a problem on ELF systems like it is on the Mac, since ELF 
has LD_PRELOAD, and the Mac does not). Since the code I wrote works 
fine when using the GC for memory management of C, C++, and Java 
programs (Standard Fortran 77 has no dynamic memory allocation, 
right?), I think it should be the default.

You are right however, that the old behavior should be reenableable via 
#defines. I'll see what I can do to cons up a patch.

Andy



More information about the Gc mailing list