<div dir="ltr"><div dir="ltr">Hi Vanessa,<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jul 21, 2020 at 4:52 PM Vanessa Freudenberg <<a href="mailto:vanessa@codefrau.net">vanessa@codefrau.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jul 21, 2020 at 12:30 PM Eliot Miranda <<a href="mailto:eliot.miranda@gmail.com" target="_blank">eliot.miranda@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div dir="ltr">Hi David,</div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Jul 21, 2020 at 12:24 PM David T. Lewis <<a href="mailto:lewis@mail.msen.com" target="_blank">lewis@mail.msen.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><br>
This might also be an opportune time to add primitiveMultipleBytecodeSetsActive<br>
if you are so inclined. It requires trunk users to update their VM before<br>
the image format number can be updated, so it would be convenient if<br>
it could come along with the primitiveAt[Put] changes.<br></blockquote><div><br></div><div>We still have to discuss this.  I'm sorry, been too busy to do so.  I still don't understand the intent here.  The VM already provides a status bit in parameter 65 which says whether the VM supports multiple bytecode sets.  If the intent is to mark an image when multiple bytecode sets have been used then the primitive doesn't appear to me to do what's required.  I'll try and answer in the context of the thread soon, because I agree it's important.  Ideally there would be a pair of flags set somewhere that said if the current image had ever executed a method in either bytecode set.</div></div></div></blockquote></div></div></blockquote><div><br></div><div>let's discuss this in the context of the thread David started.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div><br></div><div>All VMs check the image format to see if they can run the image. That's the only check they perform, as far as I know. </div><div><br></div><div>That's why it seems appropriate to use a bit in the image format to mean "no, you can't run this if your VM does not understand the new byte code  set".</div><div><br></div><div>Otherwise e.g. SqueakJS or other Spur-compatible VMs would have to look at every single CompiledMethod to see if the alt byte code flag was set.</div><div><br></div><div>Btw, Squeak is not going to mix bytecode sets - it's going to recompile all methods, so when snapshotting, they all use one or the other. In that scenario, a simple primitive call like David's should work, if it's done right after recompiling all.</div></div></div></blockquote><div><br></div><div>Alas no.  We already mix bytecode sets.  IOne can set the preference do some compiling, change the preference, do some compiling, etcd.  And so far I've been too lazy to make the quick method generation use the preference.  All quick methods are in the original bytecode set (since quick methods don't really use a bytecode other than the primitive bytecode).</div><div> </div><div><br></div><div>But as I ask, I think we should discuss this in the thread David created.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr"><div class="gmail_quote"><div><br></div><div>- Vanessa -</div><div><br></div></div></div>
<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" 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>