<div dir="ltr">If the send is to a non failing primitive call, there is no suspension point either. So I don't think it would break programs.</div><div class="gmail_extra"><br><div class="gmail_quote">On Sat, Nov 26, 2016 at 11:25 AM, Levente Uzonyi <span dir="ltr"><<a href="mailto:leves@caesar.elte.hu" target="_blank">leves@caesar.elte.hu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi Eliot,<br>
<br>
On Fri, 25 Nov 2016, Eliot Miranda wrote:<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Of the next sixteen most are there only to save space in a method's <br>
</blockquote>
literal frame.  Since the byte code encodes the selector directly there is no need to store the selector in the method's literals.  The implementation of all but two (three if we add #~~ to replace #blockCopy: as mentioned above) of these bytecodes is to fetch the selector from the specialSelectors array and do a normal send.<br>
<br>
IIRC the byte codes also ensure that there are no suspension points in the code. If so, removing them would break programs.<span class="HOEnZb"><font color="#888888"><br>
<br>
Levente<br>
</font></span></blockquote></div><br></div>