<div dir="ltr">Hi Levente,<div class="gmail_extra"><br><div class="gmail_quote">On Tue, Mar 29, 2016 at 7:10 PM, Levente Uzonyi <span dir="ltr">&lt;<a href="mailto:leves@caesar.elte.hu" target="_blank">leves@caesar.elte.hu</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi Eliot,<br>
<br>
I think something went wrong with those semaphores. Connecting to a Socket seems to wait for the full 45 seconds timeout with this VM. To reproduce, just try opening any remote MC repository. This happens with cogspur64linuxht. I haven&#39;t tried any other versions yet.<br></blockquote><div><br></div><div>OK, thanks.  This is 64-bits only thank goodness. I don&#39;t see the problem with the 32-bit system. </div><div><br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">There&#39;s another issue with WideStrings where, #at: (primitive 63) fails for a few instances. This issue is present in 3643 as well. To reproduce it, open the Monticello Browser, select the Multilingual package, select the Trunk repository and press Changes. You&#39;ll see that two methods are reported to have changed (even though they haven&#39;t). Selecting any of them will pop up a debugger with the primitive failure. The common symptom is that #basicAt: will work for the index, for which #at: fails, and it will return the number 16rD80000FF.</blockquote><div><br></div><div>And I take it this is 64-bits too, right?</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class="HOEnZb"><font color="#888888"><br>
<br>
Levente</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
On Tue, 29 Mar 2016, Eliot Miranda wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
... at <a href="http://www.mirandabanda.org/files/Cog/VM/VM.r3663" rel="noreferrer" target="_blank">http://www.mirandabanda.org/files/Cog/VM/VM.r3663</a><br>
<br>
<br>
CogVM binaries as per VMMaker.oscog-eem.1746/r3663<br>
<br>
General:<br>
<br>
Fix loss of signals to e.g. a socket&#39;s readSemaphore when data available:<br>
Fix a bug in sqAtomicOps.h where the assumption that the intrinsic atomic add<br>
operation will apply to 16-bit variables is false on clang.  So on x86 and x64<br>
use inline assembly with gcc and clang since this is known to work.<br>
Improve the doSignalSemaphores code in sqExternalSemaphores.c so that the tide<br>
variables are initialized at the right point and so there&#39;s only one copy of<br>
the signalling code.<br>
<br>
Allow primitiveUtcWithOffset to accept an optional parameter with an<br>
array or object with two or more slots to store UTC posix microseconds<br>
and time zone offset in seconds. Compatibility with VMM trunk.<br>
<br>
Add a Smalltalk epoch version of it, primitiveUtcAndTimezoneOffset,<br>
and give it primitive #244.<br>
<br>
Fix signed/unsigned arithmetic issues in 64-bit microsecond clock code.<br>
This fixes the bug whereby<br>
Time localMicrosecondClock - Time utcMicrosecondClock // 1000000<br>
would answer something with an odd second, a multiple of 3600 plus 1.<br>
<br>
General Integer conversion routines:<br>
Several clean ups to integer conversion routines.<br>
<br>
Simplify bit operations using positiveMachineIntegerValueOf:/<br>
positiveMachineIntegerFor: rather than doing 32/64 bits dissertation.<br>
<br>
<br>
Spur Cogit:<br>
Rewrote identity primitive to check for forwarders only when the identity of<br>
objects is different.  The previous version would crash if the argument was a<br>
forwarder to an immediate.<br>
<br>
Spur VMs:<br>
Now that UUIDs are created with purely image-based code in Squeak trunk, make<br>
the UUIDPlugin external in all Squeak Spur VMs.<br>
<br>
<br>
Plugins:<br>
Make FFI load symbol fail after (when find function fails). <br>
In Pharo, we allow to load global functions (so we can control world windows<br>
through FFI). <br>
<br>
LargeIntegersPlugin:<br>
<br>
Finish 1st round of LargeIntegers refactoring<br>
<br>
- simplify the left and right shift<br>
- use as much unsigned arithmetic as possible<br>
- homogenize type declaration within the plugin<br>
- remove unused digitOf:at:<br>
<br>
<br>
Slang:<br>
Beware: sending abs to an unsigned int will re-interpret the int as signed and<br>
will generate C compiler warnings.  The new version uses SQABS and SQLABS macros<br>
on sqInt and sqLong vars, and fabs and fabsf on double and float args,<br>
respectively, and llabs on long long, __int64 vars.<br>
<br>
<br>
Mac OS X:<br>
Unswap the Squeak and Newspeak localized strings<br>
<br>
_,,,^..^,,,_<br>
best, Eliot<br>
<br>
</blockquote>
</div></div><br><br>
<br></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr"><div><span style="font-size:small;border-collapse:separate"><div>_,,,^..^,,,_<br></div><div>best, Eliot</div></span></div></div></div>
</div></div>