On 2014/08/20 22:57:56, Dmitry Lomov (chromium) wrote:
Oh my, looks like to really optimize this. we would need new ICs (smth
like
LoadSuperIC, with 3 arguments: lookup start, object and name; same for
StoreSuperIC; repeat 2x Keyed). Also of course in super.x() x might be a
getter
as well, oh my. Let me know if you see a simpler solution.
After sleeping on this, I realized we we actually do not need new ICs,
because
for 'super' loads and stores the object is always the same - 'this'.
What we do need though is a flag on {Load,Store}[Keyed]IC that tells it is a
super call. The receiver would still be what comes from evaluation
of 'super' (a
prototype of a home object), but super_call ICs will substitute 'this'
instead
of the receiver if they need to do any calls. That is conceptually somewhat
simple, but requires massive plumbing. Here is a similar CL for own
properties
(unfinished, not landed): https://codereview.chromium.org/458813002/
https://codereview.chromium.org/495773002/
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.