<html>
<head>
<style><!--
.hmmessage P
{
margin:0px;
padding:0px
}
body.hmmessage
{
font-size: 10pt;
font-family:Tahoma
}
--></style></head>
<body class='hmmessage'><div dir='ltr'>
To repeat myself: It'd be nice if both sets of code was compiled/linked together and the threading model was selectable via a command line switch and/or link-time option.<br>I understand that would inhibit inlining via function pointers/dynamic linking.<br>Inlining that we surely don't do anyway and whose analog doesn't occur in other C/C++ systems.<br>Taking/releasing a lock would always incur a function call through a pointer.<br><br><br>As it is, you can't even swap m3core.so out, because the types are too different. You have to recompile or at least relink everything.<br><br><br>I could do the work, but I believe so far that Tony doesn't want it.<br><br><br><br> - Jay<br><br><br><div><div id="SkyDrivePlaceholder"></div>> To: dragisha@m3w.org<br>> Date: Sat, 28 Apr 2012 09:50:38 -0700<br>> From: mika@async.caltech.edu<br>> CC: m3devel@elegosoft.com<br>> Subject: Re: [M3devel] Mika's thread test, -tests read<br>> <br>> <br>> Yes I have done it with user threads on CM3.  <br>> <br>> (BTW, that is the configuration I always use on Darwin and Linux for "work".)<br>> <br>> There are a few ways of doing the configuration.  The main thing is that the<br>> file <br>> <br>> m3-libs/m3core/src/thread/m3makefile<br>> <br>> contains the code >>><br>> <br>> include_dir ("Common")<br>> <br>> <br>> if equal (OS_TYPE, "WIN32") or equal(TARGET, "NT386")<br>>     include_dir ("WIN32")<br>> else<br>>     if (NO_USER_THREADS contains TARGET) or ((not defined("NOPTHREAD")) and USE_PTHREADS{TARGET})<br>>         include_dir("PTHREAD")<br>>     else<br>>         include_dir (OS_TYPE)<br>>     end<br>> end<br>> <br>> <<<<br>> <br>> NO_USER_THREADS and USE_PTHREADS come from the config file.<br>> <br>>      Mika<br>> <br>> =?utf-8?Q?Dragi=C5=A1a_Duri=C4=87?= writes:<br>> >Mika said it does not happen with user threads. But he also said he is =<br>> >using pm3 mostly=E2=80=A6 So question is - did he run it with cm3, any =<br>> >version, with user threads.<br>> ><br>> >What are build parameters for cm3 with user threads?=20<br>> ><br>> >On Apr 28, 2012, at 2:58 PM, Antony Hosking wrote:<br>> ><br>> >> That means it is even more serious.<br>> >> Can we verify that it only happens with pthread threading?<br>> >>=20<br>> >> Sent from my iPad<br>> >>=20<br>> >> On Apr 28, 2012, at 1:49 AM, Dragi=C5=A1a Duri=C4=87 =<br>> ><dragisha@m3w.org> wrote:<br>> >>=20<br>> >>> It's not only AMD64_* if it's any consolation: :)<br></div>                                        </div></body>
</html>