<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Why is it better? Because rebinding to a different function is just a matter of changing an INTERFACE in the libraries, rather than hacking the compiler.<br>
<br><div><div>On Feb 10, 2011, at 6:01 AM, <a href="mailto:jay.krell@cornell.edu">jay.krell@cornell.edu</a> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div bgcolor="#FFFFFF"><div>1. I never understood why this any better.<br>2. It how things are currently.</div><div>3. Why not m3cg.alloca? (but see #2)</div><div><br> - Jay/iPad</div><div><br>On Feb 9, 2011, at 9:48 PM, Tony Hosking <<a href="mailto:hosking@cs.purdue.edu">hosking@cs.purdue.edu</a>> wrote:<br><br></div><div></div><blockquote type="cite"><div>What happened to fixing this with runtime hooks?<div><br>
<br><div><div>On Feb 9, 2011, at 11:40 PM, Jay K wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><span class="Apple-style-span" style="border-collapse: separate; font-family: Helvetica; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; font-size: medium; "><div class="hmmessage" style="font-size: 10pt; font-family: Tahoma; ">Of course not.<br>It is a made-up function that the frontend generates a call to.<br>That it never previously did.<br>Using the general function call interface.<br>You need to add a special case, in the general function call code, to do something different and specific<br>for this specific function.<br> <br> <br> - Jay <br> <br><hr id="stopSpelling">From:<span class="Apple-converted-space"> </span><a href="mailto:rcolebur@SCIRES.COM"></a><a href="mailto:rcolebur@SCIRES.COM">rcolebur@SCIRES.COM</a><br>To:<span class="Apple-converted-space"> </span><a href="mailto:jay.krell@cornell.edu"></a><a href="mailto:jay.krell@cornell.edu">jay.krell@cornell.edu</a>;<span class="Apple-converted-space"> </span><a href="mailto:m3devel@elegosoft.com"></a><a href="mailto:m3devel@elegosoft.com">m3devel@elegosoft.com</a><br>Date: Wed, 9 Feb 2011 22:28:45 -050<br>Subject: Re: [M3devel] threading on Windows?<br><br><div class="ecxWordSection1"><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">Jay:</span></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; "> </span></p><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">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.</span></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; "> </span></p><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">Regards,</span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">Randy</span></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; "> </span></p><div><div style="border-bottom-width: medium; border-bottom-style: none; border-bottom-color: initial; border-left-width: medium; border-left-style: none; border-left-color: initial; padding-bottom: 0in; padding-left: 0in; padding-right: 0in; border-top-color: rgb(181, 196, 223); border-top-width: 1pt; border-top-style: solid; border-right-width: medium; border-right-style: none; border-right-color: initial; padding-top: 3pt; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><b><span style="font-family: Tahoma, sans-serif; font-size: 10pt; ">From:</span></b><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "><span class="Apple-converted-space"> </span><a href="mailto:jayk123@hotmail.com"></a><a href="mailto:jayk123@hotmail.com">jayk123@hotmail.com</a><span class="Apple-converted-space"> </span>[mailto:jayk123@hotmail.com]<span class="Apple-converted-space"> </span><b>On Behalf Of<span class="Apple-converted-space"> </span></b>Jay K<br><b>Sent:</b><span class="Apple-converted-space"> </span>Wednesday, February 09, 2011 9:01 PM<br><b>To:</b><span class="Apple-converted-space"> </span>Coleburn, Randy; m3devel<br><b>Subject:</b><span class="Apple-converted-space"> </span>RE: [M3devel] threading on Windows?</span></div></div></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "> </p><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Tahoma, sans-serif; font-size: 10pt; ">In m3back/src/M3x86.m3.<br> <br> - Jay<br><br> </span></div><div class="ecxMsoNormal" align="center" style="text-align: center; margin-left: 0.5in; "><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "><hr id="ecxstopSpelling" align="center" size="2" width="100%"></span></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0in; margin-bottom: 12pt; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Tahoma, sans-serif; font-size: 10pt; ">From:<span class="Apple-converted-space"> </span><a href="mailto:rcolebur@SCIRES.COM"></a><a href="mailto:rcolebur@SCIRES.COM">rcolebur@SCIRES.COM</a><br>To:<span class="Apple-converted-space"> </span><a href="mailto:m3devel@elegosoft.com"></a><a href="mailto:m3devel@elegosoft.com">m3devel@elegosoft.com</a><br>Date: Wed, 9 Feb 2011 18:22:56 -0500<br>Subject: Re: [M3devel] threading on Windows?</span></p><div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">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.</span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">All I know is that everything was working fine until I checked out the HEAD repository.</span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">When you say “special case” calls “m3_alloca”, where do I go about finding this “special case”?</span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">Are we talking Modula-3 code, C code, Assembler, what? What package/module?</span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">Regards,</span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; ">Randy</span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.5in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Calibri, sans-serif; color: rgb(31, 73, 125); font-size: 11pt; "> </span><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "></span></p><div><div style="border-bottom-width: medium; border-bottom-style: none; border-bottom-color: initial; border-left-width: medium; border-left-style: none; border-left-color: initial; padding-bottom: 0in; padding-left: 0in; padding-right: 0in; border-top-color: rgb(181, 196, 223); border-top-width: 1pt; border-top-style: solid; border-right-width: medium; border-right-style: none; border-right-color: initial; padding-top: 3pt; "><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 1in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><b><span style="font-family: Tahoma, sans-serif; font-size: 10pt; ">From:</span></b><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "><span class="Apple-converted-space"> </span><a href="mailto:jayk123@hotmail.com"></a><a href="mailto:jayk123@hotmail.com">jayk123@hotmail.com</a><span class="Apple-converted-space"> </span>[mailto:jayk123@hotmail.com]<span class="Apple-converted-space"> </span><b>On Behalf Of<span class="Apple-converted-space"> </span></b>Jay K<br><b>Sent:</b><span class="Apple-converted-space"> </span>Wednesday, February 09, 2011 5:59 PM<br><b>To:</b><span class="Apple-converted-space"> </span>Coleburn, Randy; Mika Nystrom; m3devel<br><b>Subject:</b><span class="Apple-converted-space"> </span>RE: [M3devel] threading on Windows?</span></div></div></div><p class="ecxMsoNormal" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 1in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Tahoma, sans-serif; font-size: 10pt; "> </span></p><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 1in; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; "><span style="font-family: Tahoma, sans-serif; font-size: 10pt; ">Maybe someone else can do it?<br>The fix is: special case calls to the function "m3_alloca".<br>Change it to call "_chkstk" (or maybe "chkstk", whatever works).<br>The one parameter is an unsigned 32bit quantity, passed in eax, and the return value is a pointer, returned in esp.<br>To some extent I drag my feet hoping anyone else might become motivated enough to do it and start learning how.<br> <br> - Jay<br> <br>> From:<span class="Apple-converted-space"> </span><a href="mailto:rcolebur@SCIRES.COM"></a><a href="mailto:rcolebur@SCIRES.COM">rcolebur@SCIRES.COM</a><br>> To:<span class="Apple-converted-space"> </span><a href="mailto:mika@async.caltech.edu"></a><a href="mailto:mika@async.caltech.edu">mika@async.caltech.edu</a>;<span class="Apple-converted-space"> </span><a href="mailto:m3devel@elegosoft.com"></a><a href="mailto:m3devel@elegosoft.com">m3devel@elegosoft.com</a><br>> Date: Wed, 9 Feb 2011 17:25:20 -0500<br>> Subject: Re: [M3devel] threading on Windows?<br>><span class="Apple-converted-space"> </span><br>> Mika:<br>><span class="Apple-converted-space"> </span><br>> 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.<br>><span class="Apple-converted-space"> </span><br>> 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.<br>><span class="Apple-converted-space"> </span><br>> As soon as I can get the build problem resolved, I'll try out your test program.<br>><span class="Apple-converted-space"> </span><br>> Regards,<br>> Randy Coleburn<br>><span class="Apple-converted-space"> </span><br>> -----Original Message-----<br>> From: Mika Nystrom [mailto:mika@async.caltech.edu]<span class="Apple-converted-space"> </span><br>> Sent: Wednesday, February 09, 2011 5:01 PM<br>> To:<span class="Apple-converted-space"> </span><a href="mailto:m3devel@elegosoft.com"></a><a href="mailto:m3devel@elegosoft.com">m3devel@elegosoft.com</a><br>> Subject: [M3devel] threading on Windows?<br>><span class="Apple-converted-space"> </span><br>> Hi m3devel,<br>><span class="Apple-converted-space"> </span><br>> I'm just curious if anyone out there who's running CM3 on Windows has had<br>> a chance to try my thread testing program yet. Current status on Unix<br>> (Linux, FreeBSD) appears to be that there are problems in pthreads (but<br>> I think only under heavy load) and that user threading works perfectly.<br>> So I now wonder how things are on the third threading platform (Windows).<br>> The thread testing program is at m3-libs/m3core/tests/thread .<br>><span class="Apple-converted-space"> </span><br>> (Note however that there is a memory leak in TRY-EXCEPT in the current<br>> head so don't try to update everything to the CVS head. The previous<br>> release should be OK.)<br>><span class="Apple-converted-space"> </span><br>> Also has anyone else noticed that debugging information has recently<br>> broken? m3gdb is very unhappy on all platforms for me...<br>><span class="Apple-converted-space"> </span><br>> Mika</span></div></div></div></div></span></blockquote></div><br></div></div></blockquote></div></blockquote></div><br></body></html>