<div dir="ltr"><div>at <a href="http://www.mirandabanda.org/files/Cog/VM/VM.r3350/">http://www.mirandabanda.org/files/Cog/VM/VM.r3350/</a>.</div><div><br></div><div><br></div><div>CogVM binaries as per VMMaker.oscog-eem.1315/r3350</div><div><br></div><div>General:</div><div>Make the bounds check in primitiveObject:perform:...</div><div>more restrictive and fix bugs in the commentary.</div><div><br></div><div>Make stack pages a reasonable size.  My math was</div><div>wrong and the size was half as big as intended.</div><div><br></div><div>Extend the fastPrimTrace scheme to trace stack overflow, prim failure and prim</div><div>retry to help debug the phantom stack frame bug in Cog Spur.</div><div><br></div><div>Cogit:</div><div>Fix old bug in ceMNUFromPICMNUMethod:receiver: that has been masked by</div><div>cacheing of MNU method in MNU PIC entries.  ceMNUFromPICMNUMethod:receiver:</div><div>must set up lkupClass before calling handleMNU:...</div><div><br></div><div>Revamp icache flushing in the Cogit for ARM.  Move icache flush for generated</div><div>methods/pics to the fillIn*Header: routines.  Make sure the cache is flushed</div><div>in generateCaptureCStackPointers:.  Flush the entire PIC when extending it.</div><div><br></div><div>Fix ARM-only regression in StackToRegisterMappingCogit&#39;s</div><div>PIC aborts when the SimpleStackBasedCogit was fixed.</div><div><br></div><div>Make ARM rotated 8bit constants actually be correct(er) ie</div><div>16r4000001 (SmallInteger 16r2000000) work.</div><div><br></div><div>Spur:</div><div>Fix ceActivateFailingPrimitiveMethod: to return properly after retrying</div><div>a primitive after checkForAndFollowForwardedPrimitiveState. e.g. fixes</div><div>  | s | 1 to: 5 do: [:i| s := &#39;bar&#39;. s becomeForward: &#39;bzzt&#39; copy. &#39;foo&#39; &lt;= s]</div><div><br></div><div>Fix bug in followForwardedFrameContents:stackPointer: so that arguments are</div><div>actually followed.  N.B. drives the above bug underground ;-).</div><div>so that named constants (defines) are not elided.</div><div><br></div><div>Make accessor depth calculation more accurate by not considering</div><div>fetchInteger:ofObject: and arraySize: et al as object accessors.</div><div><br></div><div>Newspeak:</div><div>Remove landmine left from restructing implicit receiver and outer sends as</div><div>clean sends.</div><div><br></div><div>Slang:</div><div>Do a more thorough job of transforming complex to:[by:]do: loops so that the</div><div>limit expression is only evaluated once, not on each iteration of the loop.</div><div><br></div><div>Make the read-before-written initializer safer, only initialzing simple types.</div><div><br></div><div>Plugins:</div><div>Regenerated because of changes in accessorDepth calculation,</div><div>constant elimination, and read-before-use initialization.</div><div><br></div><div><br></div>-- <br><div class="gmail_signature">best,<div>Eliot</div></div>
</div>