[Gc] Status of gc on Mac OS X running on intel proc ?
hans.boehm at hp.com
Fri Sep 29 11:02:50 PDT 2006
I checked this into the 7.0 tree, with some (untested) adjustments. I will test on MacOS/PPC tonight if nobody beats me to it. (I did test on Linux, but ...)
The adjustments consisted of:
- Indent #if's (except for the # itself). This is the usual convention in the collector.
- Leave the GC_printf3, but change it to a GC_printf. In general, versions up to 6.X use GC_printf<n>, where
n is the number of additional arguments. Version 7 uses just GC_printf, and finally relies on stdarg.h. (After 17 years, it seems safe to assume that compilers have gotten it right by now :-) )
> -----Original Message-----
> From: Renaud Blanch [mailto:renaud.blanch at imag.fr]
> Sent: Friday, September 29, 2006 6:02 AM
> To: Boehm, Hans
> Cc: gc at napali.hpl.hp.com
> Subject: Re: [Gc] Status of gc on Mac OS X running on intel proc ?
> Le 28 sept. 06 à 23:02, Boehm, Hans a écrit :
> > Thanks. It looks like there are two issues here:
> > 1) Thread_get_state usually fails in gctest. The calling
> code is at
> > around line 100 in darwin_stop_world.c. It would be good to see if
> > you can get more information from the return code or
> anything else to
> > figure out why this is happening. I think this is the most serious
> > problem.
> I have investigated this issue.
> thread_get_state returns KERN_INVALID_ARGUMENT.
> It seems related to the usage of the generic
> MACHINE_THREAD_STATE* constants.
> When replaced with specific i386_THREAD_STATE* constant,
> every thing works on my machine (configured with
> You will find below a patch that replace MACHINE_* with PPC_*
> or i386_ constants according to he POWERPC or I386 defines.
> I don't understand why MACHINE_* constants are not defined
> properly (is it related to my system, a bug in Apple headers,
> or a problem with configure), but the patch does the work and
> should work with PPC architecture (not tested).
> The patch also comments a call to GC_printf3 which was done
> when DEBUG_THREADS is set, but this function does not seem to
> exist in the
> gc7.0alpha7 distribution.
More information about the Gc