[Vm-dev] [VM-dev] Does doesNotUnderstand:/cannotInterprer: jitted?

Clément Bera bera.clement at gmail.com
Mon Nov 21 09:21:30 UTC 2016


On Mon, Nov 21, 2016 at 10:10 AM, Denis Kudriashov <dionisiydk at gmail.com>
wrote:

>
>
> 2016-11-21 10:05 GMT+01:00 Clément Bera <bera.clement at gmail.com>:
>
>> Hi.
>>
>> #doesNotUnderstand: is added to the PIC. It's a special case handled for
>> performance. DNUs are slower than normal sends but the overhead is
>> acceptable.
>
>
> But when it is in PIC it is not anymore slower?
>

Well the DNU requires to create the message argument so it's always slower
than normal call.

>
>
>>
>> Other VM call-backs are not added to PIC. In this case the VM is slower.
>> But this is usually not present in production application.
>>
>
> Proxies could be based on it and used in production.
>

Right. Well then it's slower.


>
> What about callback message when readonly objects is going to be modified?
> Is it jitted?
>

 This is done in a similar way to mustBeBoolean. The detection of read-only
object instance variable mutation is jitted as part of the instance
variable store, but if the call-back is actually triggered it's a bit slow.
The call-back itself can be jitted too.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/vm-dev/attachments/20161121/d82d2735/attachment-0001.html>


More information about the Vm-dev mailing list