[M3devel] threading on Windows?

Tony Hosking hosking at cs.purdue.edu
Thu Feb 10 06:48:20 CET 2011


What happened to fixing this with runtime hooks?


On Feb 9, 2011, at 11:40 PM, Jay K wrote:

> Of course not.
> It is a made-up function that the frontend generates a call to.
> That it never previously did.
> Using the general function call interface.
> You need to add a special case, in the general function call code, to do something different and specific
> for this specific function.
>  
>  
>  - Jay 
>  
> From: rcolebur at SCIRES.COM
> To: jay.krell at cornell.edu; m3devel at elegosoft.com
> Date: Wed, 9 Feb 2011 22:28:45 -0500
> Subject: Re: [M3devel] threading on Windows?
> 
> Jay:
>  
> I looked thru the 4,618 lines of M3x86.m3, but I don’t see any reference to “m3_alloca” or even “alloc” in this file.
>  
> Regards,
> Randy
>  
> From: jayk123 at hotmail.com [mailto:jayk123 at hotmail.com] On Behalf Of Jay K
> Sent: Wednesday, February 09, 2011 9:01 PM
> To: Coleburn, Randy; m3devel
> Subject: RE: [M3devel] threading on Windows?
>  
> In m3back/src/M3x86.m3.
>  
>  - Jay
> 
>  
> From: rcolebur at SCIRES.COM
> To: m3devel at elegosoft.com
> Date: Wed, 9 Feb 2011 18:22:56 -0500
> Subject: Re: [M3devel] threading on Windows?
> 
> I am certainly willing to work on the problem, but need more context info about what caused it in order to know how to resolve.
> All I know is that everything was working fine until I checked out the HEAD repository.
> When you say “special case” calls “m3_alloca”, where do I go about finding this “special case”?
> Are we talking Modula-3 code, C code, Assembler, what?  What package/module?
> Regards,
> Randy
>  
> From: jayk123 at hotmail.com [mailto:jayk123 at hotmail.com] On Behalf Of Jay K
> Sent: Wednesday, February 09, 2011 5:59 PM
> To: Coleburn, Randy; Mika Nystrom; m3devel
> Subject: RE: [M3devel] threading on Windows?
>  
> Maybe someone else can do it?
> The fix is: special case calls to the function "m3_alloca".
> Change it to call "_chkstk" (or maybe "chkstk", whatever works).
> The one parameter is an unsigned 32bit quantity, passed in eax, and the return value is a pointer, returned in esp.
> To some extent I drag my feet hoping anyone else might become motivated enough to do it and start learning how.
>  
>  - Jay
>  
> > From: rcolebur at SCIRES.COM
> > To: mika at async.caltech.edu; m3devel at elegosoft.com
> > Date: Wed, 9 Feb 2011 17:25:20 -0500
> > Subject: Re: [M3devel] threading on Windows?
> > 
> > Mika:
> > 
> > Sorry, but my Windows build is broken. Jay seems to indicate he is working on a "fix" and that this fix is relatively simple, but so far no solution has been checked in.
> > 
> > I've been wanting to run your program ever since you first checked it in, but that was about same time the HEAD branch update introduced a build problem. Problem is an unresolved symbol during link.
> > 
> > As soon as I can get the build problem resolved, I'll try out your test program.
> > 
> > Regards,
> > Randy Coleburn
> > 
> > -----Original Message-----
> > From: Mika Nystrom [mailto:mika at async.caltech.edu] 
> > Sent: Wednesday, February 09, 2011 5:01 PM
> > To: m3devel at elegosoft.com
> > Subject: [M3devel] threading on Windows?
> > 
> > Hi m3devel,
> > 
> > I'm just curious if anyone out there who's running CM3 on Windows has had
> > a chance to try my thread testing program yet. Current status on Unix
> > (Linux, FreeBSD) appears to be that there are problems in pthreads (but
> > I think only under heavy load) and that user threading works perfectly.
> > So I now wonder how things are on the third threading platform (Windows).
> > The thread testing program is at m3-libs/m3core/tests/thread .
> > 
> > (Note however that there is a memory leak in TRY-EXCEPT in the current
> > head so don't try to update everything to the CVS head. The previous
> > release should be OK.)
> > 
> > Also has anyone else noticed that debugging information has recently
> > broken? m3gdb is very unhappy on all platforms for me...
> > 
> > Mika

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20110210/2bbd1ca4/attachment-0002.html>


More information about the M3devel mailing list