[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: v0_139 available
Chris Double <chris@double.co.nz> writes:
> Jonathan Bachrach <jrb@ai.mit.edu> writes:
>
> > we will working to improve the pthreads-based threads implementation
> > and will start looking to porting it to windows. any help on this
> > would be appreciated. the major obstacle might be that the boehm gc
> > supports threads but only when compiled with vc++.
>
> I've been looking at what's required to get things compiling under
> vc++. I notice in grt.h there are #defines like:
>
> #define CALLN(...) _CALLN(regs, __VA_ARGS__)
> #define XCALL0(...) _CALL0(REGSCREF(), __VA_ARGS__)
> #define XCALL1(...) _CALL1(REGSCREF(), __VA_ARGS__)
>
> Visual C++ doesn't like the variable argument #define
> unfortunately. Would there be any problem with the g2c code generator
> being changed to emit the _CALLN(regs, ...) instead of the CALLN? I'm
> going to try the change but thought I'd run it by everyone here in
> case there's a reason for it not being done that way.
sounds reasonable. i did the threads port in such a way as to
minimize the compiler changes, that is, to not depend on the
implementation of language state (e.g., regs). it's not a big deal
though since it only shows up in one place. surprising that vc++
isn't ansi compliant.
> Also, anyone think of a way of working around VC++'s lack of
> variable arg macros without going the 'change the code generation'
> route?
>
> Another approach might be to use Mingw since I think Boehm works
> with WIN32_THREADS under Mingw as well. But I can't do the .net port
> with that approach unfortunately.
at least it's an option.
> BTW, it builds and runs fine under cygwin without thread support
> which is great.
good news.
thanks for your help!
jonathan