<div>at <a href="http://www.mirandabanda.org/files/Cog/VM/VM.r2701/">http://www.mirandabanda.org/files/Cog/VM/VM.r2701/</a>.</div><div><br></div><div>CogVM binaries as per VMMaker.oscog-eem.272/r2701.</div><div><br></div><div>
Fix unknownBytecode processing to leave pc at unknown bytecode.</div><div>Fix case of process switch to an interior frame.</div><div>Fix some assert function signatures in the stack vm.</div><div>Use symbols for types instead of strings in stack page funcs.</div>
<div><br></div><div>Fix the become issue where methods that are identical are failing</div><div>the code test because their penultimate literals are different objects.</div><div>Add a flag &quot;cmUsesPenultimateLit&quot; to jitted methods, stealing bits</div>
<div>from stackCheckOffset (which was way larger than needed).</div><div>Shrink stackCheckOffset to 12 bits (still an order of magnitude larger</div><div>than needed) and add an error check on assigning it.</div><div>Also add a check for max method size (2^16-1 bytes) and refuse to</div>
<div>jit a method that generates too much code.</div><div>When comparing code, use the cmUsesPenultimateLit flag to decide</div><div>if comparison includes penultimate lit or not.</div><div><br></div><div>This is mildly insane, but the VM really doesn&#39;t know about the</div>
<div>penultimate literal and it shouldn&#39;t depend on knowing it can be</div><div>ignored.  Note that the CoInterpreter knows about the last literal;</div><div>it uses this in supersends.  With this hack, Pharo&#39;s condenseSources</div>
<div>works.</div>-- <br>best,<div>Eliot</div>