<div dir="ltr">at <a href="http://www.mirandabanda.org/files/Cog/VM/VM.r3332/">http://www.mirandabanda.org/files/Cog/VM/VM.r3332/</a>.<br><div><br><div><div>CogVM binaries as per VMMaker.oscog-eem.1298/r3332</div><div><br></div><div>NewspeakVM:</div><div>Thread lookup rule through from bytecodes to internalFindNewMethod:.</div><div><br></div><div>Fix genInnerPrimitiveMirrorNewWithArg:.  Class&#39;s hash was being accessed twice,</div><div>reusing variable holding jump instruction.</div><div><br></div><div>Fix primitiveClass and genPrimitiveClass for mirror case (arg count = 1). Also</div><div>fix Newspeak primitive table to allow nargs &gt; 0 for genPrimitiveClass.</div><div><br></div><div>General:</div><div>Fix a regression in externalInstVar:ofContext:.  The head frame pointers must</div><div>be written back if we&#39;re going to map a machince code pc to a bytecode pc in</div><div>case of code reclamation.  Add asserts to the stack page enumerators to check</div><div>that the head frame pointers have been written back.</div><div><br></div><div>Fix changeClass: for forwwarded receivers.</div><div><br></div><div>Use macros for the oop comparisons, avoiding cCoerce:, to get faster simulation</div><div>and avoid the inliner not inlining in conditionals.</div><div><br></div><div>Spur:</div><div>Change computeRefCountToShrinkRT to</div><div>- compute the ref counts and population in a single pass over the RT</div><div>- determine the ref count for tenuring based on half the population of</div><div>  remembered objects, /not/ half the size of the RT.</div>-- <br><div class="gmail_signature">best,<div>Eliot</div></div>
</div></div></div>